Kafka詳細配置

轉自:http://blog.csdn.net/suifeng3051/article/details/38321043?utm_source=tuicool&utm_medium=referral html

Kafka集羣配置比較簡單,爲了更好的讓你們理解,在這裏要分別介紹下面三種配置 node

  • 單節點:一個broker的集羣
  • 單節點:多個broker的集羣
  • 多節點:多broker集羣

單節點單broker實例的配置

image

1.啓動zookeeper服務

bin/zkServer.sh start工具

2.啓動Kafka broker

bin/kafka-server-start.sh config/server.propertiesui

3.建立topic

建立一個僅有一個Partition的topic.net

bin/kafka-create-topic.sh --zookeeper localhost:2181 --replica 1 --partition 1 --topic kafkatopicserver

或者:htm

./kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partition 1 --topic kafkatopicblog

版本不一樣語法不一樣,參考:http://www.cnblogs.com/huxi2b/p/4571309.html進程

4.生產消息

用Kafka提供的生產者客戶端啓動一個生產者進程來發送消息:get

bin/kafka-console-producer.sh --broker-list  localhost:9092 --topic kafkatopic

其中有兩個參數須要注意:

  • broker-list:定義了生產者要推送消息的broker地址,以<IP地址:端口>形式     
  • topic:生產者發送給哪一個topic

而後你就能夠輸入一些消息用於發送

5.消費消息

啓動一個Consumer實例來消費消息

bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic kafkatopic --from-beginning

當你執行這個命令以後,你即可以看到控制檯上打印出的生產者生產的消息

單節點運行多broker實例

image

1.啓動zookeeper

和上面的同樣

2.啓動Kafka的broker

要想在一臺機器上啓動多個broker實例,只須要準備多個server.properties文件便可,好比咱們要在一臺機器上啓動兩個broker。

首先咱們要準備兩個server.properties配置文件

  1. server-1
    1. brokerid=1
    2. port=9092
    3. log.dir=/temp/kafka8-logs/broker1   
  2. server-2
    1. brokerid=2
    2. port=9093
    3. log.dir=/temp/kafka8-logs/broker2 

而後咱們再用這兩個配置文件分別啓動一個broker

[root@localhost kafka]# env JMX_PORT=9999 bin/kafka-server-start.sh config/server-1.properties

[root@localhost kafka]# env JMX_PORT=10000 bin/kafka-server-start.sh config/server-2.properties

能夠看到咱們啓動是爲每一個broker都指定了不一樣的JMX Port,JMX Port主要用來利用jconsole等工具進行監控和排錯

3.建立一個topic

建立一個含有兩個Partition分區和2個備份的topic:

[root@localhost kafka]# bin/kafka-create-topic.sh --zookeeper localhost:2181 --replica 2 --partition 2 --topic othertopic

4.啓動Producer發送消息

若是咱們要用一個Producer發送給多個broker,惟一須要改變的就是在broker-list屬性中指定要鏈接的broker

[root@localhost kafka]# bin/kafka-console-producer.sh --broker-list localhost:9092,localhost:9093 --topic othertopic

5. 啓動Consumer消費消息

和以前的命令同樣

[root@localhost kafka]# bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic othertopic --from-beginning

集羣模式(多節點多實例)

image

zookeeper配置文件(zookeeper.properties):不變

broker的配置配置文件(server.properties):按照單節點多實例配置方法在一個節點上啓動兩個實例,不一樣的地方是zookeeper的鏈接串須要把全部節點的zookeeper都鏈接起來

zookeeper.connect=node1:2181,node2:2181

相關文章
相關標籤/搜索