大數據-Kafka(二)

                                           大數據-Kafka(二)

kafka集羣安裝部署

第一步:下載並減壓

下載地址:http://kafka.apache.org

通過FTP工具上傳安裝包到node01服務器上

解壓安裝包到指定目錄

tar -zxvf kafka_2.11-1.0.1.tgz -C /kkb/install

第二步:修改配置文件

node01修改server.properties配置文件

cd /kkb/install/kafka_2.11-1.0.1/config

vi server.properties

#指定kafka對應的broker id ,唯一
broker.id=0
#指定數據存放的目錄
log.dirs=/kkb/install/kafka_2.11-1.0.1/kafka-logs
#指定zk地址
zookeeper.connect=node01:2181,node02:2181,node03:2181
#指定是否可以刪除topic ,默認是false 表示不可以刪除
delete.topic.enable=true
#指定broker主機名
host.name=node01

配置kafka環境變量

sudo vi /etc/profile

export KAFKA_HOME=/kkb/install/kafka_2.11-1.0.1
export PATH=$PATH:$KAFKA_HOME/bin

第三步:分發安裝包

scp -r /kkb/install/kafka_2.11-1.0.1 node02:/kkb/install
scp -r /kkb/install/kafka_2.11-1.0.1 node03:/kkb/install

修改node02和node03的server.properties配置文件

  • node02
cd /kkb/install/kafka_2.11-1.0.1/config

vi server.properties

#指定kafka對應的broker id ,唯一
broker.id=1
#指定數據存放的目錄
log.dirs=/kkb/install/kafka_2.11-1.0.1/kafka-logs
#指定zk地址
zookeeper.connect=node01:2181,node02:2181,node03:2181
#指定是否可以刪除topic ,默認是false 表示不可以刪除
delete.topic.enable=true
#指定broker主機名
host.name=node02
  • node03
cd /kkb/install/kafka_2.11-1.0.1/config

vi server.properties

#指定kafka對應的broker id ,唯一
broker.id=2
#指定數據存放的目錄
log.dirs=/kkb/install/kafka_2.11-1.0.1/kafka-logs
#指定zk地址
zookeeper.connect=node01:2181,node02:2181,node03:2181
#指定是否可以刪除topic ,默認是false 表示不可以刪除
delete.topic.enable=true
#指定broker主機名
host.name=node03

同樣需要在node02和node03配置kafka環境變量

sudo vi /etc/profile

export KAFKA_HOME=/kkb/install/kafka_2.11-1.0.1
export PATH=$PATH:$KAFKA_HOME/bin

kafka集羣啓動和停止

單節點啓動

  • 先啓動zk集羣

  • 然後在所有節點執行腳本

nohup kafka-server-start.sh /kkb/install/kafka_2.11-1.0.1/config/server.properties >/dev/null 2>&1 &
  • 所有節點執行關閉kafka腳本
kafka-server-stop.sh

一鍵啓動停止腳本

kafkaCluster.sh

#!/bin/sh
case $1 in 
"start"){
for host in node01 node02 node03 
do
  ssh $host "source /etc/profile; nohup /kkb/install/kafka_2.11-1.0.1/bin/kafka-server-start.sh /kkb/install/kafka_2.11-1.0.1/config/server.properties > /dev/null 2>&1 &"   
  echo "$host kafka is running..."  
done  
};;

"stop"){
for host in node01 node02 node03 
do
  ssh $host "source /etc/profile; nohup /kkb/install/kafka_2.11-1.0.1/bin/kafka-server-stop.sh >/dev/null  2>&1 &"   
  echo "$host kafka is stopping..."  
done
};;
esac
  • 啓動
#啓動
sh kafkaCluster.sh start
  • 停止
#停止
sh kafkaCluster.sh stop

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章