kafka集群部署

2021-09-27 06:39:08 字數 3801 閱讀 3554

kafka設定群集 必要前提:zookeeper的集群是正常。

準備三颱虛擬機器

確定 三颱主機ip

1.2 zookeeper 搭建zookeeper的集群

1.2.1. . zookeeper的配置檔案 zoo.cfg

每個檔案都加入如下內容

server.1=192.168.25.131:2888:3888

server.2=192.168.25.164:2888:3888

server.3=192.168.25.165:2888:3888

1.2.2 為每個zookeeper建立data目錄下面

​ 在zoo.cfg的配置檔案中由:datadir=/opt/zookeeper/zookeeperdata

​ 指定的myid檔案 內容就是對應的server.1 .後邊的名字 1 2 3

​ [root@localhost desktop]# cd /opt/zookeeper-3.4.9/zookeeperdata/

​ [root@localhost data]# echo 「1」>myid

​ 檔案中的內容就是 1或者2或者3—>

​ echo 「1」>/opt/zookeeper/zookeeperdata/myid

​ echo 「2」>/opt/zookeeper/zookeeperdata/myid

​ echo 「3」>/opt/zookeeper/zookeeperdata/myid​​

​2.修改kafka集群配置

listeners=plaintext:

host.name=192.168.73.200

2.1 第一台機器:192.168.73.200

修改 server.properties

2.1.1 進入kafka的config目錄

2.1.1.1 vim server.properties

修改內容如下:

broker.id=0

num.partitions=3

listeners=plaintext:

zookeeper.connect=192.168.25.131:2181,192.168.25.164:2181,192.168.25.165:2181

host.name=192.168.25.131

​ 配置過了

​ log.dirs/usr/local/kafka/kafka-0-logs

2.2 第二台機器:192.168.73.201

修改 server.properties

2.2.1 進入kafka的config目錄

2.2.1.1 vim server.properties

修改內容如下:

broker.id=1 #保證每個broker唯一,為1

num.partitions=3 #分割槽數量一般與broker保持一致

listeners=plaintext: #修改為本機ip

zookeeper.connect=192.168.73.200:2181,192.168.73.201:2181,192.168.73.202:2181

#配置三颱服務zookeeper連線位址

host.name=192.168.73.201

#新增host.name值,分別設為不同的值(3臺機器根據自己的ip設定)

log.dirs==/usr/local/kafka/kafka-0-logs #修改log.dirs目錄為之前自定義的目錄

​ 2.2.2 轉殖的原因導致 原有第一台轉殖的kafka 的日誌檔案中有乙個meta.properties broker.id=0; 修改為 當前kakfa的server.properties broker.id=1;

​ /usr/local/kafka/kafka-0-logs/meta.properties

​ vim meta.properties

​ broker.id=1​ ​

2.3 第三台機器:192.168.73.202

修改 server.properties

2.3.1 進入kafka的config目錄

2.3.1.1 vim server.properties

修改內容如下:

broker.id=2 #保證每個broker唯一,為2

num.partitions=3 #分割槽數量一般與broker保持一致

listeners=plaintext: #修改為本機ip

zookeeper.connect=192.168.73.200:2181,192.168.73.201:2181,192.168.73.202:2181

#配置三颱服務zookeeper連線位址

host.name=192.168.73.201 #新增host.name值,分別設為不同的值(3臺機器根據自己的ip設定)

log.dirs==/usr/local/kafka/kafka-0-logs #修改log.dirs目錄為之前自定義的目錄

2.3.2 轉殖的原因導致 原有第一台轉殖的kafka 的日誌檔案中有乙個meta.properties broker.id=0; 修改為 當前kakfa的server.properties broker.id=2;

​ /usr/local/kafka/kafka-0-logs/meta.properties

​ vim meta.properties

​ broker.id=2

3.演示:

第一步,啟動三颱電腦上的zookeeper

[root@localhost kafka] zkserver.sh start

第二步,啟動三颱電腦上的kafka

[root@localhost~]# /opt/kafka_2.11-1.0.0/bin/kafka-server-start.sh /opt/kafka_2.11-1.0.0/config/server.properties

第三步:集群建立主題:/opt/kafka_2.11-1.0.0/bin/kafka-topics.sh -create --zookeeper 192.168.25.131:2181,192.168.25.164:2181,192.168.25.165:2181 -replication-factor 3 --partitions 3 --topic gaofei

第四步:集群檢視主題:/opt/kafka_2.11-1.0.0/bin/kafka-topics.sh -list --zookeeper 192.168.25.131:2181

第五步:集群生產者:/opt/kafka_2.11-1.0.0/bin/kafka-console-producer.sh --broker-list 192.168.25.131:9092,192.168.25.164:9092,192.168.25.165:9092 --topic gaofei

傳送資料

第六步:集群消費者:/opt/kafka_2.11-1.0.0/bin/kafka-console-consumer.sh --bootstrap-server 192.168.25.131:9092,192.168.25.164:9092,192.168.25.165:9092 --topic gaofei --from-beginning

在另外兩台電腦上執行消費者,看是否接受到了訊息

Kafka 集群部署

kafka是乙個分布式訊息佇列,需要依賴zookeeper,請先安裝好zk集群 kafka安裝包解壓 tar xf kafka 2.10 0.9.0.1 tgz mv kafka 2.10 0.9.0.1 usr kafka cd usr kafka 配置檔案 server.properties t...

kafka集群部署

一台伺服器上可以啟動多個broker例項,或者將broker部署到多台伺服器上,以下以172.16.50.21集群為例,多台伺服器上部署broker。tar xzf kafka 2.11 1.0.0.tgz cd kafka 2.11 1.0.0kafka依賴zookeeper,如果環境中沒有zoo...

Kafka集群部署

前提 在啟動kafaka集群,呼叫 bin kafka server start.sh config server.properties 前,需要把每台機器上zookeeper服務都給啟動了。zookeeper的安裝配置看,1 kafka集群規劃 s101 s102 s103 s104 zk zk ...