安全地利用 Docker 和 Systemctl 摆设 Kafka 的综合指南

[复制链接]
发表于 2025-11-22 18:02:04 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
弁言

在当代数据架构中,Kafka 作为一种高性能的消息队列体系,已被广泛应用于处理处罚及时数据流。在企业级摆设中,包管数据传输的安全性以及服务的稳固性变得尤为告急。本文将具体先容怎样在 Docker 情况下摆设 Kafka 服务,并利用 Systemctl 举行管理,特别注意在摆设过程中安全性的处理处罚,包罗暗码的加密存储与日志日志的安全输出的完备流程
当前摆设方式

当前情况利用docker docker-compose 摆设raft模式的kafka三节点集群,某一个节点的docker-compose.yaml设置文件如下:
  1. version: "3"
  2. services:
  3.   kafka:
  4.     image: 'bitnami/kafka:3.7.0'
  5.     network_mode: "host"
  6.     ports:
  7.       - '9092:9092'
  8.       - '9093:9093'
  9.       - '9999:9999'
  10.     privileged: true
  11.     environment:
  12.       - KAFKA_CFG_NODE_ID=0
  13.       - TZ=Asia/Shanghai
  14.       - KAFKA_CFG_PROCESS_ROLES=controller,broker
  15.       - [email protected]:9093,[email protected]:9093,[email protected]:9093
  16.       - KAFKA_KRAFT_CLUSTER_ID=metabank
  17.       - KAFKA_CFG_LISTENERS=PLAINTEXT://0.0.0.0:9092,CONTROLLER://0.0.0.0:9093
  18.       - KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://192.168.0.10:9092
  19.       - KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP=PLAINTEXT:SASL_PLAINTEXT,CONTROLLER:SASL_PLAINTEXT
  20.       - KAFKA_CFG_CONTROLLER_LISTENER_NAMES=CONTROLLER
  21.       - KAFKA_CFG_INTER_BROKER_LISTENER_NAME=PLAINTEXT
  22.       - KAFKA_CLIENT_USERS=vuser
  23.       - KAFKA_CLIENT_PASSWORDS=vuserpwd123
  24.       - KAFKA_CFG_SASL_MECHANISM_CONTROLLER_PROTOCOL=PLAIN
  25.       - KAFKA_CONTROLLER_USER=vuser
  26.       - KAFKA_CONTROLLER_PASSWORD=vuserpwd123
  27.       - KAFKA_CFG_SASL_MECHANISM_INTER_BROKER_PROTOCOL=PLAIN
  28.       - KAFKA_INTER_BROKER_USER=vuser
  29.       - KAFKA_INTER_BROKER_PASSWORD=vuserpwd123
  30.       - KAFKA_CFG_SSL_ENDPOINT_IDENTIFICATION_ALGORITHM=
  31.       - KAFKA_CFG_SASL_ENABLED_MECHANISMS=PLAIN,SCRAM-SHA-512
  32.       - KAFKA_TLS_TYPE=JKS
  33.       - KAFKA_JMX_ENABLED=true
  34.       - KAFKA_JMX_OPTS=-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9999 -Dcom.sun.management.jmxremote.rmi.port=9999 -Dcom.sun.management.jmxremote.local.only=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false
  35. volumes:
  36.       - ./kafka_data:/bitnami/kafka
复制代码
体系服务利用**systemctl ** 管理:
  1. [Unit]
复制代码
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表