使用docker搭建kafka集群、可视化操作台

单机搭建

        1 拉取zookeeper镜像

                docker pull wurstmeister/zookeeper 

        2  启动zookeeper容器

                docker run -d  --name zookeeper -p 2181:2181 -v /etc/localtime:/etc/localtime wurstmeister/zookeeper

        3 拉取kafka镜像

                docker pull wurstmeister/kafka

        4 启动kafka镜像

              docker run -d  --name kafka -p 9092:9092 -e KAFKA_BROKER_ID=1 -e                 KAFKA_ZOOKEEPER_CONNECT=192.168.56.103:2181/kafka -e                 KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.56.103:9092 -e                 KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -v /etc/localtime:/etc/localtime                 wurstmeister/kafka

        5 拉取kafka-map镜像

                docker pull dushixiang/kafka-map:latest

        6 启动kafka-map容器

                  docker run -d --name kafka-map \
                    -p 9001:8080 \
                    -v /opt/kafka-map/data:/usr/local/kafka-map/data \
                    -e DEFAULT_USERNAME=admin \
                    -e DEFAULT_PASSWORD=admin \
                    dushixiang/kafka-map:latest

        7  访问:http://192.168.56.103:9001

                

        点击右上角+号完成kafka的接入:

        

        9  kafka常用命令


                    docker exec -it kafka /bin/bash
                    cd /opt/kafka_2.13-2.8.1/bin
           创建主题:
            ./kafka-topics.sh --create --bootstrap-server 192.168.56.103:9092,192.168.56.104:9092 --partitions 2 --replication-factor 2 --topic first-create
   
            作为消费端:
            ./kafka-console-consumer.sh --bootstrap-server 192.168.56.103:9092,192.168.56.104:9092 --topic test-4 --from-beginning


           作为生产者:
            ./kafka-console-producer.sh --bootstrap-server 192.168.56.103:9092,192.168.56.104:9092 --topic test-4 

集群搭建

        本次基于docker搭建kafka集群,zookeeper使用单实例

        1 准备2台虚拟机,ip分别是:192.168.56.103,192.168.56.104
 

        2 104 上操作

                

                a 拉取zookeeper镜像
                      docker pull wurstmeister/zookeeper 

                  b 启动zookeeper容器
                      docker run -d  --name zookeeper -p 2181:2181 -v /etc/localtime:/etc/localtime                         wurstmeister/zookeeper

                  c 拉取kafka镜像
                      docker pull wurstmeister/kafka

                  d 启动kafka容器
                      docker run -d  --name kafka -p 9092:9092 -e KAFKA_BROKER_ID=1 -e                         KAFKA_ZOOKEEPER_CONNECT=192.168.56.104:2181/kafka -e                         KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.56.104:9092 -e                         KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -v /etc/localtime:/etc/localtime                         wurstmeister/kafka
  
                  e 拉取kafka-map镜像
                     docker pull dushixiang/kafka-map:latest
                  f 启动kafka-map容器
                    docker run -d --name kafka-map \
                    -p 9001:8080 \
                    -v /opt/kafka-map/data:/usr/local/kafka-map/data \
                    -e DEFAULT_USERNAME=admin \
                    -e DEFAULT_PASSWORD=admin \
                    dushixiang/kafka-map:latest

        3 103上操作

                

                 a 拉取kafka镜像
                    docker pull wurstmeister/kafka

                 b 启动kafka容器
                    docker run -d  --name kafka -p 9092:9092 -e KAFKA_BROKER_ID=2 -e                         KAFKA_ZOOKEEPER_CONNECT=192.168.56.103:2181/kafka -e                         KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.56.103:9092 -e                         KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -v /etc/localtime:/etc/localtime                         wurstmeister/kafka
                    注意:103和104启动kafka的区别就是指定不同的KAFKA_BROKER_ID,如果是以配置文件启动的,在配置文件中修改即可

                
        4 登录到kafka-map上创建对应的kafka集群信息,实现界面化操作

                

回答: Docker搭建kafka集群的过程可以参考以下步骤。首先,需要依赖zookeeper来管理kafka集群的状态和元数据。因此,在搭建kafka集群之前,需要先搭建一个zookeeper集群。可以使用Docker创建一个新的网络,并在该网络上启动一个zookeeper集群。接下来,创建一个docker-compose文件(例如docker-compose-zk.yml),在该文件中定义zookeeper集群的配置和启动参数。然后,使用docker-compose命令启动zookeeper集群。接下来,创建一个新的docker-compose文件(例如docker-compose-kafka.yml),在该文件中定义kafka集群的配置和启动参数。在这个文件中,需要挂载一些文件,这些文件包括kafka的配置文件和数据目录。挂载这些文件的目的是为了保留kafka集群的状态和数据。最后,使用docker-compose命令启动kafka集群。在集群启动后,可以安装kafka-manager来管理kafka集群。可以创建一个新的docker-compose文件(例如docker-compose-kafka-manager.yml),在该文件中定义kafka-manager的配置和启动参数。使用docker-compose命令启动kafka-manager。配置kafka-manager连接到kafka集群,并进行测试。\[1\] 在搭建过程中,可能会遇到一些问题。例如,如果之前已经安装过旧版本的docker,可能会导致安装新版本docker时出现冲突的错误。解决这个问题的方法之一是使用wget命令下载docker-ce.repo文件,并将其放置在/etc/yum.repos.d/目录下。这样可以更新docker的安装源,然后重新安装docker。\[2\]\[3\] #### 引用[.reference_title] - *1* [Docker搭建kafka集群](https://blog.csdn.net/weixin_48412846/article/details/128724377)[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^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [docker搭建kafka集群](https://blog.csdn.net/fxh13579/article/details/81299185)[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^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值