当前位置: 首页 > news >正文

永兴县网站建设服务商什么是网站设计与运营

永兴县网站建设服务商,什么是网站设计与运营,建设一网站要多少钱,石家庄网站建设行业公司博文目录 文章目录 说明命令 说明 Docker Hub - bitnami/kafka Docker Hub - apache/kafka Kafka QuickStart Kafka 目前没有 Docker 官方镜像, 目前拉取次数最多的是 bitnami/kafka, Apache 提供的是 apache/kafka (更新最及时), 本文使用 bitnami/kafka bitnami/kafka 镜像…

博文目录

文章目录

  • 说明
  • 命令


说明

Docker Hub - bitnami/kafka
Docker Hub - apache/kafka
Kafka QuickStart

Kafka 目前没有 Docker 官方镜像, 目前拉取次数最多的是 bitnami/kafka, Apache 提供的是 apache/kafka (更新最及时), 本文使用 bitnami/kafka

bitnami/kafka 镜像支持的环境变量有很多, 除 DockerHub 文档中列出的外, Kafka 的每一个配置项都可以与一个以 KAFKA_CFG_ 开头的环境变量相对应, 如 KAFKA_CFG_AUTO_CREATE_TOPICS_ENABLE 对应 auto.create.topics.enable, KAFKA_CFG_BACKGROUND_THREADS 对应 background.threads

Kafka 现在有两种启动方式, ZooKeeper 或 KRaft, 后者不需要依赖 Zookeeper, 本文使用 KRaft

Kafka KRaft Config

数据卷数据卷印射在容器内的路径
kafka/bitnami/kafka

命令

Kafka 文档

docker pull bitnami/kafka:3.7.0
docker volume create kafka
# 创建并运行容器
docker run -d --name kafka -p 9092:9092 --hostname=kafka -e TZ=Asia/Shanghai -e KAFKA_CFG_PROCESS_ROLES=controller,broker -e KAFKA_CFG_NODE_ID=0 -e KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP=CONTROLLER:PLAINTEXT,PLAINTEXT:PLAINTEXT -e KAFKA_CFG_LISTENERS=PLAINTEXT://:9092,CONTROLLER://:9093 -e KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://localhost:9092 -e KAFKA_CFG_CONTROLLER_LISTENER_NAMES=CONTROLLER -e KAFKA_CFG_CONTROLLER_QUORUM_VOTERS=0@kafka:9093 -e KAFKA_CFG_AUTO_CREATE_TOPICS_ENABLE=false -v kafka:/bitnami/kafka bitnami/kafka:3.7.0
# KRaft 模式运行 Kafka 必须的配置
# 本节点扮演的角色, 即是 broker 也是 controller
process.roles=broker,controller
# 本节点的唯一标识
node.id=0
# 指定用于控制器通信的监听器名称, 作用是告诉 Kafka 控制器节点应该使用哪个监听器来进行通信。
# 控制器节点是 Kafka 集群中的一种特殊节点,负责管理集群的元数据、领导者选举、分区分配和其他集群管理任务。在 KRaft 模式下,控制器节点通过与其他节点之间的通信来执行这些任务。
controller.listener.names=CONTROLLER
# 该项配置了该节点接受连接的两个监听器, CONTROLLER 和 PLAINTEXT. 其中, CONTROLLER 监听器用于 controller 与 broker 的通信 (由 controller.listener.names 指定), PLAINTEXT 监听器用于 broker 与客户端的通信
# 定义 Socket 服务器监听的地址. 格式为 listeners = listener_name://host_name:port
# 这里没有写 host 部分, 作用是在所有网络接口上的 9092 和 9093 端口监听连接. 可以简单认为每一个网卡(对应一个 IP)就是一个网络接口, 比如主机有 localhost/局域网/公网 三个地址, 如果配置指定了 localhost, 则客户端不能通过局域网和公网地址连接到该节点
# 如果该节点同时扮演 broker 和 controller 角色, 则至少要列出 controller 监听器, 如果未列出 broker 监听器, 则默认监听器将使用主机名,主机名等于 java.net.InetAddress.getCanonicalHostName() 的值, 使用 PLAINTEXT 监听器名称, 并监听 9092 端口
# 如果某监听器的名称不是以安全协议名称来命名, 则需要配置 listener.security.protocol.map 来指定该监听器使用的安全协议, 这里 CONTROLLER 监听器使用的安全协议需要额外指定, 而 PLAINTEXT 监听器使用的安全协议就是它本身
listeners=CONTROLLER://:9093,PLAINTEXT://:9092
# 定义了 Broker 向客户端广告的地址和端口. 这些地址和端口是客户端用来连接到 Broker 的地址和端口
# 这通常用于处理 Broker 运行在 NAT 后面或容器化环境中的情况, Broker 监听的地址和端口与客户端需要使用的地址和端口不同
# 如果不加这个配置, kafka-client api 会报 UnknownHostException: kafka, 说明是把容器内主机的 hostname 返回去了
# 假设宿主机的 IP 地址是 192.168.1.100, 则该项配置为 advertised.listeners=PLAINTEXT://192.168.1.100:9092
advertised.listeners=PLAINTEXT://localhost:9092
# 指定监听器使用的安全协议, 常见的安全协议有 PLAINTEXT/SSL/SASL_PLAINTEXT/SASL_SSL 等
listener.security.protocol.map=CONTROLLER:PLAINTEXT,PLAINTEXT:PLAINTEXT
# 投票者列表, 奇数, 格式为 {id}@{host}:{port}, 这里的 host 为 kafka 是因为 docker run 通过 --hostname 指定了容器 host 为 kafka
controller.quorum.voters=0@kafka:9093
# 控制生产者与消费者尝试与不存在的主题交互时是否自动创建主题(使用默认分区与副本配置), 默认为 true
auto.create.topics.enable=false

可以在启动日志中找到 Kafka 节点的完整配置

# 查看日志
docker logs kafka
# 跟踪日志
docker logs -f kafka
docker logs --follow kafka
# 查看最后10条日志
docker logs --tail 10 kafka
# 查看最近10分钟的日志
docker logs --since 10m kafka
# 进入容器并执行 bash
docker exec -it kafka bash
# 退出容器
exit

Kafka 脚本文件在容器中的存放路径 /opt/bitnami/kafka/bin

默认情况下, 新建的 Topic 有一个分区, 每个分区有一个副本, 由 num.partitionsdefault.replication.factor 指定, 默认值都是 1

docker exec -it kafka bash
cd /opt/bitnami/kafka
# 创建 topic, 创建一个1分区1副本的主题, 集群每个节点都需要写到 --bootstrap-server 中, 用逗号分割
# host 用 kafka 是因为启动容器指定了 hostname
# 分区数会影响消费者的最大并行度
bin/kafka-topics.sh --bootstrap-server kafka:9092 --create --partitions 1 --replication-factor 1 --topic test
bin/kafka-topics.sh --bootstrap-server kafka:9092 --create --topic test
# 查看 topic
bin/kafka-topics.sh --bootstrap-server kafka:9092 --list
bin/kafka-topics.sh --bootstrap-server kafka:9092 --describe --topic test
# 修改 topic, 分区改为两个(分区数只能增不能减)
bin/kafka-topics.sh --bootstrap-server kafka:9092 -alter --partitions 2 --topic test
# 删除 topic
bin/kafka-topics.sh --bootstrap-server kafka:9092 --delete --topic test
http://www.dtcms.com/a/496527.html

相关文章:

  • Google Landmarks Dataset v2 (GLDv2):面向实例级识别与检索的500万图像,200k+类别大规模地标识别基准
  • 个人域名做企业网站企业seo的措施有哪些
  • 网站开发验收流程图网站建设合同详细
  • 上海做网站比较好的公司有哪些wordpress两栏响应式主题
  • 【Altium Designer实战操作】对网络端口名称采用全中文命名的可行性及其相关隐患研究
  • 可视化NS-3安装踩坑记录
  • 怎么看别人的网站有没有做301电商网站建设哪家公司好
  • 河北省建设注册中心网站html5网络公司网站模板
  • 4.类和对象(上)
  • 高端手机“探花”之争,AI会成为“胜负手”吗?
  • 福建省住房和城乡建设厅官方网站做网站挂广告赚多少
  • 门户网站直接登录系统wordpress吐槽源码
  • 网站中的flash龙岩做网站怎么做
  • Cucumber + Playwright framework based on javascript
  • 关于电子商务网站建设的论文广告传媒公司介绍
  • 武威建设厅网站建设企业网站进去无法显示
  • 一台网站服务器多少钱网站建设业务员培训
  • 网站建设如何赚钱wordpress主题设置选择
  • SVN 非页面操作 锁定单个cell
  • 布恩网站删除西峡微网站开发
  • 网站后台图片模板wordpress 手机发文
  • 网站建设与用户需求分析国家企业信用信息公示系统查询
  • 李飞飞 world labs最新文章 RTFM: A Real-Time Frame Model 翻译及思考
  • Prism框架核心对象补充:区域上下文与模块化设计
  • 广州那里有学做拼多多网站的天津网站建设市场
  • 福建闽东建设网站设计logo网站 生成器
  • Git合并分支:从命令行到图形化工具
  • 低价建网站wordpress添加友链申请
  • 长沙手机app网站开发哈尔滨网站制作哪里专业
  • 从Backtrader到Freqtrade:搭建自己的全自动量化平台