docker部署kafka的方法步驟
1. 搭建docker
這里我直接用的是docker-compose部署,所以需要提前安裝好compose。
既然要用compose那么yml文件自然是少不了的。
首先要新建一個(gè)目錄,并在目錄中新建一個(gè)yml文件
文件的內(nèi)容如下:
version: '2' services: zookeeper: image: wurstmeister/zookeeper volumes: - ./data:/data ports: - "2181:2181" kafka: image: wurstmeister/kafka ports: - "9092:9092" environment: KAFKA_ADVERTISED_HOST_NAME:127.0.0.1 KAFKA_MESSAGE_MAX_BYTES: 2000000 KAFKA_CREATE_TOPICS: "Topic1:1:3,Topic2:1:1:compact" KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181 volumes: - ./kafka-logs:/kafka - /var/run/docker.sock:/var/run/docker.sock kafka-manager: image: sheepkiller/kafka-manager ports: - 9020:9000 environment: ZK_HOSTS: zookeeper:2181
接著利用這個(gè)yml文件啟動(dòng)我們的項(xiàng)目
$ docker-compose up -d
可以看到新建了三個(gè)容器
2.進(jìn)入容器
我們通過以下命令進(jìn)入到kafka容器的交互模式
$ docker exec -it kafkademo01_kafka_1 /bin/bash
因?yàn)楦甙姹镜膋afka內(nèi)置了zookeeper,所以我們無需進(jìn)入zookeeper容器。所以yml文件中關(guān)于zookeeper的部署是可以省略的。
然后進(jìn)入kafka的根目錄
$ cd /opt/kafka
3.修改配置文件
$ cd /config
首先要修改的是zookeeper的配置文件:zookeeper.properties
(注釋已刪除)
dataDir=/opt/kafka/zooLogs clientPort=2182 maxClientCnxns=0 admin.enableServer=false
然后修改kafka的配置文件:server.porperties
(注釋已刪除)
############################# Server Basics ############################# broker.id=0 ############################# Socket Server Settings ############################# listeners=PLAINTEXT://127.0.0.1:9093 ############################# Socket Server Settings ############################# listeners=PLAINTEXT://127.0.0.1:9093 num.network.threads=3 num.io.threads=8 socket.send.buffer.bytes=102400 socket.receive.buffer.bytes=102400 socket.request.max.bytes=104857600 ############################# Log Basics ############################# log.dirs=/opt/kafka/kafkaLogs num.partitions=1 num.recovery.threads.per.data.dir=1 ############################# Internal Topic Settings ############################# offsets.topic.replication.factor=1 transaction.state.log.replication.factor=1 transaction.state.log.min.isr=1 ############################# Log Retention Policy ############################# log.retention.hours=168 log.segment.bytes=1073741824 log.retention.check.interval.ms=300000 ############################# Zookeeper ############################# zookeeper.connect=127.0.0.1:2182 zookeeper.connection.timeout.ms=18000 ############################# Group Coordinator Settings ############################# group.initial.rebalance.delay.ms=0 port=9093 advertised.host.name=127.0.0.1 message.max.bytes=2000000 advertised.port=9093
4.測(cè)試kafka
以下是一些基本的命令
啟動(dòng)zookeeper
zookeeper-server-start.sh ../config/zookeeper.properties
啟動(dòng)kafka
kafka-server-start.sh ../config/server.properties
創(chuàng)建一個(gè)主題
kafka-topics.sh --create --zookeeper 127.0.0.1:2182 --replication-factor 1 --partitions 1 --topic test
查看創(chuàng)建的主題
kafka-topics.sh --list --zookeeper 127.0.0.1:2182
生產(chǎn)者
kafka-console-producer.sh --broker-list 127.0.0.1:9093 --topic test
消費(fèi)者
kafka-console-consumer.sh --bootstrap-server 127.0.0.1:9093 --topic test --from-beginning
到此這篇關(guān)于docker部署kafka的方法步驟的文章就介紹到這了,更多相關(guān)docker部署kafka內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Docker-Compose實(shí)現(xiàn)Mysql主從的示例代碼
本文主要介紹了Docker-Compose實(shí)現(xiàn)Mysql主從的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-06-06Linux Docker阿里云鏡像倉(cāng)庫(kù)失效的解決
作者分享了在VmWare安裝的Linux7中,通過yum安裝的docker無法pull鏡像的問題解決經(jīng)驗(yàn),首先,他檢查了網(wǎng)絡(luò)是否通暢,然后設(shè)置了阿里云鏡像加速地址,但仍然無法pull鏡像,接下來,他查看了docker是否成功設(shè)置鏡像地址,并查看了docker日志2024-10-10docker容器調(diào)用yum報(bào)錯(cuò)的解決辦法
在本篇文章里小編給大家分享的是關(guān)于docker容器調(diào)用yum報(bào)錯(cuò)的解決辦法,有興趣的朋友們可以參考下。2020-03-03主機(jī)Nginx + Docker WordPress Mysql搭建的詳細(xì)步驟
這篇文章主要介紹了主機(jī)Nginx + Docker WordPress Mysql搭建的詳細(xì)步驟,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-11-11基于Docker實(shí)現(xiàn)Redis主從+哨兵搭建的示例實(shí)踐
本文主要介紹了基于Docker實(shí)現(xiàn)Redis主從+哨兵搭建的示例實(shí)踐,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-01-01Docker?compose啟動(dòng)服務(wù)遇到的問題小結(jié)
這篇文章主要介紹了Docker?compose啟動(dòng)服務(wù)遇到的問題小結(jié),這個(gè)是檢驗(yàn)我們的docker?compose掌握程度,因此里面的鏡像沒有提前拉取,掛載數(shù)據(jù)卷的目錄也沒有提前創(chuàng)建,本文給大家介紹的非常詳細(xì),需要的朋友可以參考下2023-11-11docker修改容器的端口、容器名、映射地址以及注意事項(xiàng)
在日常的docker運(yùn)維中,經(jīng)常遇到修改容器的端口、容器名、映射地址等信息,這篇文章主要給大家介紹了關(guān)于docker修改容器的端口、容器名、映射地址以及注意事項(xiàng)的相關(guān)資料,需要的朋友可以參考下2022-08-08