1. 程式人生 > >kafka分布式搭建

kafka分布式搭建

type ftw hid 使用 text tgz script hide fig文件

kafka分布式搭建

(192.168.230.129)master

(192.168.230.130)slave1

(192.168.230.131)salve2

在master、slave1、slave2三臺主機上配置kafaka分布式集群

準備工作:在三臺機器上配置好zookeeper

1、解壓kafka壓縮文件到指定文件夾下

[[email protected] software]# tar -zxf kafka_2.10-0.8.1.1.tgz -C /opt/modules

技術分享

2、改動/opt/modules/kafka_2.10-0.8.1.1/config文件夾下的server.properties文件

[[email protected] ~]# cd /opt/modules/kafka_2.10-0.8.1.1/config
[[email protected] config]# vi server.properties

技術分享

broker.id=1
zookeeper.connect=master:2181,slave1:2181,slave2:2181

技術分享

技術分享

3、將master主機上kafka配置好的安裝文件夾發送到slave1、salve2主機上

[[email protected] config]# scp -r /opt/modules/kafka_2.10-0.8.1.1/ [email protected]
/* */:/opt/modules/kafka_2.10-0.8.1.1/ [[email protected] config]# scp -r /opt/modules/kafka_2.10-0.8.1.1/ [email protected]:/opt/modules/kafka_2.10-0.8.1.1/

4、在slave1主機中改動/opt/modules/kafka_2.10-0.8.1.1/config/server.properties配置文件

[[email protected] kafka_2.10-0.8.2.1]# vi config/server.properties

broker.id=2

技術分享

5、在slave1主機中改動/opt/modules/kafka_2.10-0.8.1.1/config/server.properties配置文件

[[email protected] kafka_2.10-0.8.1.1]# vi config/server.properties

broker.id=3

技術分享

6、改動三個主機的/opt/modules/kafka_2.10-0.8.1.1/config/server.properties配置文件裏的

[[email protected] kafka_2.10-0.8.1.1]# vi config/server.properties

#host.name=localhost
將#凝視去掉,並改成

master主機下:
host.name=master

技術分享

[[email protected] kafka_2.10-0.8.1.1]# vi config/server.properties

slave1主機下:
host.name=slave1

技術分享

[[email protected] kafka_2.10-0.8.1.1]# vi config/server.properties

slave2主機下:
host.name=slave2

技術分享

7、在每一臺節點上啟動broker

在master主機上啟動broker:

[[email protected] kafka_2.10-0.8.1.1]# ./bin/kafka-server-start.sh config/server.properties

技術分享

技術分享

在slave1主機上啟動broker:

[[email protected] kafka_2.10-0.8.1.1]# ./bin/kafka-server-start.sh config/server.properties

技術分享

技術分享

在slave2主機上啟動broker:

[[email protected] kafka_2.10-0.8.1.1]# ./bin/kafka-server-start.sh config/server.properties

技術分享

技術分享

8、在kafka集群中創建一個topic

在master主機中創建一個話題

[[email protected] kafka_2.10-0.8.1.1]# ./bin/kafka-topics.sh --create --zookeeper master:2181,slave1:2181,slave2:2181 --replication-factor 3 --partitions 3 --topic chinesescore

技術分享

9、查看消息是否創建成功

[[email protected] kafka_2.10-0.8.1.1]# ./bin/kafka-topics.sh --list --zookeeper master:2181,slave1:2181,slave2:2181 --topic chinesescore

技術分享

10、查看一個topic的分區及副本狀態信息

[[email protected] kafka_2.10-0.8.1.1]# ./bin/kafka-topics.sh --describe --zookeeper master:2181,slave1:2181,slave2:2181 --topic chinesescore

技術分享

11、用一個producer向某一個topic中寫入消息

[[email protected] kafka_2.10-0.8.1.1]# ./bin/kafka-console-producer.sh --broker-list  master:9092,slave1:9092,slave2:9092 --topic chinesescore

技術分享

12、用一個comsumer從某一個topic中讀取信息

[[email protected] kafka_2.10-0.8.1.1]# ./bin/kafka-console-consumer.sh --zookeeper master:2181,slave1:2181,slave2:2181 --from-beginning --topic chinesescore

技術分享

13、從zookeeper中查看Topic

[[email protected] kafka_2.10-0.8.1.1]# zkCli.sh

技術分享

[zk: localhost:2181(CONNECTED) 4] ls /brokers/topics

技術分享

13使用Java編寫kafka生產者程序:

技術分享

用一個comsumer從某一個topic中讀取信息

[[email protected] kafka_2.10-0.8.1.1]$ ./bin/kafka-console-consumer.sh --zookeeper hadoop-sparse:2181 --from-beginning --topic orders

技術分享

14、關閉Kafka服務

[[email protected] kafka_2.10-0.8.1.1]# ./bin/kafka-server-stop.sh

技術分享

[[email protected] kafka_2.10-0.8.1.1]# ./bin/kafka-server-stop.sh

技術分享

[[email protected] kafka_2.10-0.8.1.1]# ./bin/kafka-server-stop.sh

技術分享

kafka分布式搭建