安装docker的kafka集群

安装zookeeper集群

参考:https://blog.csdn.net/qq_38270106/article/details/88789737

新建docker的kafka配置文件

mkdir -p /usr/local/docker-compose/kafka/{kafka1,kafka2,kafka3}

cd /usr/local/docker-compose/kafka

vi docker-compose.yml


 
 
  1. version: '2'
  2. services:
  3. kafka1:
  4. image: wurstmeister/kafka
  5. restart: always
  6. hostname: kafka1
  7. container_name: kafka1
  8. ports:
  9. - "9092:9092"
  10. environment:
  11. KAFKA_ADVERTISED_LISTENERS: PLAINTEXT: //198.168.128.133:9092
  12. KAFKA_ADVERTISED_HOST_NAME: 198.168 .128 .133
  13. KAFKA_ADVERTISED_PORT: 9092
  14. KAFKA_ZOOKEEPER_CONNECT: zoo1: 2181,zoo2: 2181,zoo3: 2181
  15. JMX_PORT: 9999
  16. volumes:
  17. - /usr/local/docker-compose/kafka/kafka1:/kafka
  18. external_links: # 连接compose文件以外的container
  19. - zoo1
  20. - zoo2
  21. - zoo3
  22. kafka2:
  23. image: wurstmeister/kafka
  24. restart: always
  25. hostname: kafka2
  26. container_name: kafka2
  27. ports:
  28. - "9093:9092"
  29. environment:
  30. KAFKA_ADVERTISED_LISTENERS: PLAINTEXT: //198.168.128.133:9093
  31. KAFKA_ADVERTISED_HOST_NAME: 198.168 .128 .133
  32. KAFKA_ADVERTISED_PORT: 9093
  33. KAFKA_ZOOKEEPER_CONNECT: zoo1: 2181,zoo2: 2181,zoo3: 2181
  34. JMX_PORT: 9988
  35. volumes:
  36. - /usr/local/docker-compose/kafka/kafka2:/kafka
  37. external_links: # 连接compose文件以外的container
  38. - zoo1
  39. - zoo2
  40. - zoo3
  41. kafka3:
  42. image: wurstmeister/kafka
  43. restart: always
  44. hostname: kafka3
  45. container_name: kafka3
  46. ports:
  47. - "9094:9092"
  48. environment:
  49. KAFKA_ADVERTISED_LISTENERS: PLAINTEXT: //198.168.128.133:9094
  50. KAFKA_ADVERTISED_HOST_NAME: 198.168 .128 .133
  51. KAFKA_ADVERTISED_PORT: 9094
  52. KAFKA_ZOOKEEPER_CONNECT: zoo1: 2181,zoo2: 2181,zoo3: 2181
  53. JMX_PORT: 9977
  54. volumes:
  55. - /usr/local/docker-compose/kafka/kafka3
  56. external_links: # 连接compose文件以外的container
  57. - zoo1
  58. - zoo2
  59. - zoo3
  60. kafka-manager:
  61. image: sheepkiller/kafka-manager:latest
  62. restart: always
  63. container_name: kafa-manager
  64. hostname: kafka-manager
  65. ports:
  66. - "9002:9000"
  67. links: # 连接本compose文件创建的container
  68. - kafka1
  69. - kafka2
  70. - kafka3
  71. external_links: # 连接compose文件以外的container
  72. - zoo1
  73. - zoo2
  74. - zoo3
  75. environment:
  76. ZK_HOSTS: zoo1: 2181,zoo2: 2181,zoo3: 2181
  77. KAFKA_BROKERS: kafka1: 9092,kafka2: 9093,kafka3: 9094
  78. APPLICATION_SECRET: letmein
  79. KM_ARGS: -Djava.net.preferIPv4Stack= true
  80. default:
  81. external: # 使用已创建的网络
  82. name: zookeeper_network

【额外的说明

version: '2'
services:
  zookeeper:
    image: wurstmeister/zookeeper
    ports:
      - "2181:2181"
  kafka1:
    image: wurstmeister/kafka:2.11-0.11.0.3
    ports:
      - "9092:9092"
    environment:
      KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka1:9092
      KAFKA_LISTENERS: PLAINTEXT://:9092
      KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
      KAFKA_CREATE_TOPICS: "topic001:2:1"
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock

上述配置中有两处需要注意:
第一,KAFKA_ADVERTISED_LISTENERS的配置,这个参数会写到kafka配置的advertised.listeners这一项中,应用会用来连接broker;
第二,KAFKA_CREATE_TOPICS的配置,表示容器启动时会创建名为"topic001"的主题,并且partition等于2,副本为1;

COMPOSE_PROJECT_NAME=kakfa_test docker-compose up

COMPOSE_PROJECT_NAME=kakfa_test docker-compose ps查看

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Docker Kafka集群是通过使用Docker容器技术来搭建Kafka集群的一种方法。首先,你需要拉取Kafka镜像,可以使用以下命令拉取wurstmeister/kafka镜像并给它打上kafka的标签:\[2\] ``` docker pull wurstmeister/kafka docker tag docker.io/wurstmeister/kafka kafka docker rmi docker.io/wurstmeister/kafka ``` 接下来,你需要进入docker-compose.yml所在的目录,并使用docker-compose命令来启动Kafka集群。如果你不是使用默认的docker-compose.yml文件,需要使用-f参数指定你自己写的文件路径。例如,使用以下命令来启动Kafka单节点和集群服务:\[3\] ``` cd /docker/config/kafka docker-compose -f docker-compose-kafka-single-broker.yml down -v docker-compose -f docker-compose-kafka-single-broker.yml up ``` 这样就可以通过Docker来搭建Kafka集群了。 #### 引用[.reference_title] - *1* *3* [Docker环境下搭建Kafka集群](https://blog.csdn.net/hunheidaode/article/details/121401183)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [docker快速搭建kafka集群](https://blog.csdn.net/qq_27229113/article/details/127526301)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值