1.基本信息
版本 | 2.11-0.9.0.0 |
---|---|
安裝機器 | 三台機器 |
賬號 | hadoop |
源路徑 | /opt/software/kafka_2.11-0.9.0.0.tgz |
目標路徑 | /opt/kafka -> /opt/kafka_2.11-0.9.0.0 |
依賴關系 | zookeeper |
2.安裝過程
1).使用hadoop賬戶,通過tar -zxvf命令將kafka-0.9.0.tar.gz解壓縮至目的安裝目錄,並設置軟連接。
[root
@bgs
-5p173-wangwenting opt]# su hadoop
[hadoop
@bgs
-5p173-wangwenting opt]$ cd /opt/software
[hadoop
@bgs
-5p173-wangwenting software]$ tar -xf kafka-${version}.tgz -C /opt
|
2).修改server.properties配置文件。
[hadoop
@bgs
-5p173-wangwenting software]$ cd /opt/kafka/config
[hadoop
@bgs
-5p173-wangwenting config]$ vim server.properties
在server.properties文件中添加如下配置:
broker.id=
1
log.retention.hours=
1
zookeeper.connect=
172.24
.
5.173
:
2181
,
172.24
.
5.174
:
2181
,
172.24
.
5.175
:
2181
/kafka
host.name=bgs-5p173-wangwenting
|
3).創建logs目錄:
[hadoop
@bgs
-5p173-wangwenting config]$ mkdir /opt/kafka/logs
|
4).配置kafka運行的環境變量。
[hadoop
@bgs
-5p173-wangwenting config]$ vim /etc/profile
添加下面的內容:
export KAFKA_HOME=/opt/kafka
export PATH=$KAFKA_HOME/bin:$PATH
配置成功后,執行source /etc/profile使配置生效。
[hadoop
@bgs
-5p173-wangwenting config]$ source /etc/profile
|
5).將安裝包從bgs-5p173-wangwenting服務器復制到bgs-5p174-wangwenting,bgs-5p175-wangwenting兩台機器,並配置環境變量:
[hadoop
@bgs
-5p173-wangwenting config]$ scp -r /opt/kafka_${version}/ hadoop
@bgs
-5p174-wangwenting:/opt
[root
@bgs
-5p174-wangwenting opt]# su hadoop
[hadoop
@bgs
-5p174-wangwenting opt]$ cd /opt
[hadoop
@bgs
-5p174-wangwenting opt]$ ln -s /opt/kafka_${version} /opt/kafka
[hadoop
@bgs
-5p173-wangwenting config]$ scp -r /opt/kafka_${version}/ hadoop
@bgs
-5p175-wangwenting:/opt
[hadoop
@bgs
-5p175-wangwenting opt]$ cd /opt
[hadoop
@bgs
-5p175-wangwenting opt]$ ln -s /opt/kafka_${version} /opt/kafka
並修改server.properties配置文件中broker.id(bgs-5p174-wangwenting為
2
,bgs-5p174-wangwenting為
3
),host.name(bgs-5p174-wangwenting為bgs-5p174-wangwenting,bgs-5p175-wangwenting為bgs-5p175-wangwenting)
[hadoop
@bgs
-5p174-wangwenting config]$ vim server.properties
修改以下內容
broker.id=
2
host.name=bgs-5p174-wangwenting
[hadoop
@bgs
-5p175-wangwenting config]$ vim server.properties
修改以下內容
broker.id=
3
host.name=bgs-5p175-wangwenting
|
6).在三台機器上分別執行Kafka啟動命令:
[hadoop
@bgs
-5p173-wangwenting config]$ nohup kafka-server-start.sh $KAFKA_HOME/config/server.properties &
查看服務是否開啟成功
[hadoop
@bgs
-5p173-wangwenting config]$ ps -ef | grep kafka
如果進程存在,則表示Kafka已經啟動
|
7).測試Kafka的生產者和消費者:
[hadoop
@bgs
-5p173-wangwenting config]$ kafka-topics.sh --create --zookeeper bgs-5p173-wangwenting:
2181
,bgs-5p173-wangwenting:
2181
,bgs-5p173-wangwenting:
2181
/kafka --replication-factor
2
--partitions
1
--topic test
|
注意:復制指令的時候不能多或者少空格,否則會報錯,不易察覺。
查看topics列表
[hadoop
@bgs
-5p173-wangwenting config]$ kafka-topics.sh --list --zookeeper bgs-5p173-wangwenting:
2181
,bgs-5p173-wangwenting:
2181
,bgs-5p173-wangwenting:
2181
/kafka
|
如果發現存在${topicName}自定義的test名稱則表示創建成功
在bgs-5p173-wangwenting上啟動生產者producer(${topicName}為自定義的test的名稱)
[hadoop
@bgs
-5p173-wangwenting config]$ kafka-console-producer.sh --broker-list
172.24
.
5.173
:
9092
,
172.24
.
5.174
:
9092
,
172.24
.
5.175
:
9092
--topic test
|
重新打開終端在bgs-5p173-wangwenting上啟動消費者
[hadoop
@bgs
-5p173-wangwenting config]$ kafka-console-consumer.sh --zookeeper ${producer_ip}:
2181
/kafka --topic test --from-beginning
|
在生產者機器上輸入一條信息如: this is a comment(隨意輸入)
在消費者機器上觀察是否能接收到此信息,若接收到說明成功.