0,用vmware安裝3臺centos8虛擬機器
hostname ipaddress subnet mask geteway
1、 centos-1 192.168.213.135 255.255.255.0 192.168.213.2
2、 centos-2 192.168.213.136 255.255.255.0 192.168.213.2
3、 centos-3 192.168.213.137 255.255.255.0 192.168.213.2
0.2,修改host檔案,將hostname新增到本機
進入etc目錄:cd /etc/
使用vim命令修改host:vim hosts
輸入 i 進入編輯模式
192.168.213.135 centos-1
192.168.213.136 centos-2
192.168.213.137 centos-3
esc退出編輯模式,輸入 :wq 儲存更改
1,搭建zookeeper集群
kafka是依賴於zookeeper的,單機模式下可以直接用kafka自帶zookeeper(config/zookeeper.properties)啟動,但是單機並不是kafka的價值所在,所以要搭建自己的zookeeper集群
上有篇文章寫zookeeper集群搭建的文章,寫的不錯,可供參考:
這裡我們的zookeeper配置檔案,增加的server.0、server.1、server.2分別為:
server.0=192.168.213.135:2888:3888
server.1=192.168.213.136:2888:3888
server.2=192.168.213.137:2888:3888
server.0=centos-1:2888:3888
server.1=centos-2:2888:3888
server.2=centos-3:2888:3888
另外增加日誌輸出目錄:datalogdir=/tmp/zookeeper/log
解壓命令列:tar -vxzf kafka_2.13-2.6.0.tgz
之後我們將kafka配置到環境變數裡:
進入etc目錄:cd /etc/
export kafka_home=/usr/local/kafka_2.13-2.6.0
export path=$path:$kafka_home/bin
如圖:
:wq儲存退出,然後使用source命令,使配置檔案立即生效:source profile
配置環境變數這一步不是必須的,如果不配置那麼在每次啟動kafka的時候,需要在kafka的bin目錄中執行啟動命令。
3,修改server.properties配置檔案
進入解壓的kafka的config目錄:cd /usr/local/kafka_2.13-2.6.0/config/
vim命令修改server.properties檔案(這裡的zookeeper.properties就用不到了):vim server.properties
修改broker.id,值從1開始的正整數:broker.id=1(三颱broker都要改,依次向後排列即可)
4,啟動kafka
使用官方給出的命令,稍作修改啟動:
nohup kafka-server-start.sh /usr/local/kafka_2.13-2.6.0/config/server.properties &
因為前面設定了環境變數,所以可以在任意位置執行啟動命令,但需要將server.properties的路徑寫為絕對路徑
這裡我們將kafka作為後台啟動了,使用的命令是nohup
出現如上圖的結果,說明啟動無報錯,圖中6182是程序pid,我們還可以使用jps命令,檢視是否有pid為6182的程序:jps
有pid為6182的程序,kafka已啟動
5,建立topic
在任意乙個broker上建立topic,使用官方命令稍作修改,如下
kafka-topics.sh --create --zookeeper centos-1,centos-2,centos-3 --topic mytopic --partitions 3 --replication-factor 3
這裡我們使用指定的zookeeper集群:centos-1,centos-2,centos-3
--topic 主題名稱,這裡是mytopic
--partitions 主題下有幾個分割槽,這裡設定了3個
--replication-factor 副本數,這裡同樣設定了3個
6,檢視topic詳情
在任意乙個broker上檢視topic,使用官方命令稍作修改,如下
7,生產者和消費者的建立
7.1 建立生產者
kafka-console-producer.sh --topic mytopic --broker-list localhost:9092
7.2 建立消費者
kafka-console-consumer.sh --topic mytopic --from-beginning --bootstrap-server localhost:9092
生產者生產訊息,消費者能夠接收到訊息
8,如果啟動失敗,可嘗試:
1,檢視防火牆是否關閉;
2,檢查broker.id是否正確設定;
3,刪除資料目錄(log)中所有檔案,重新啟動。log目錄是在server.properties中設定的:log.dirs=/tmp/kafka-logs 。如果之前沒有搭建成功,在資料目錄中會生成乙個mata.properties檔案,裡面包含了broker.id的值。在搭建完成後,當前的broker.id和mata檔案不一致,就會報錯。
kafka集群搭建
安裝zookeeper kafka自帶了zookeeper,建議還是用外部的zk集群,搭建步驟如下 準備3臺機器,假設我們叫c1 c2 c3,ip分別為ip1 ip2 ip3 將附件zookeeper 3.4.6.tar.gz分別拷貝至3臺機器 c1機器上解壓zookeeper 3.4.6.tar....
kafka 集群搭建
1 前置條件 安裝jdk zookeeper 集群搭建 wget tar xzf kafka 2.11 0.10.2.1.tgz 3 修改 config server.properties 三個地方 1 broker.id 要對上 log.dirs 下 meta.properties broker....
kafka集群搭建
1 上傳安裝包 把安裝包上傳到伺服器 put r d kafka 2.11 0.8.2.0.tgz 2 解壓縮安裝包 3 配置kafka環境變數 vim etc profile export path path kafka home bin 重新整理策略 source etc profile 4 修...