Kafka安裝與使用

本地ip說明
192.168.1.129 上安裝zookeeper
192.168.1.130  安裝kafka
一,下載安裝及使用
 
 https://www.apache.org/dyn/closer.cgi?path=/kafka/1.1.0/kafka_2.11-1.1.0.tgz
 zookeeper 已經安裝在 192.168.1.129上
 
 第1步:下載後直接解壓即可
 # tar -zxvf kafka_2.11-1.1.0.tgz
   conf/server.properties 配置文件
   zookeeper.connect=192.168.1.129:2181
 第2步:後臺啓動
 # sh kafka-server-start.sh -daemon ../config/server.properties
 
 第3步:創建topic (參考官網http://kafka.apache.org/11/documentation.html#quickstart)
 # bin/kafka-topics.sh --create --zookeeper 192.168.1.129:2181 --replication-factor 1 --partitions 1 --topic test
 # bin/kafka-topics.sh --list --zookeeper 192.168.1.129:2181

 第4步:啓動producer發送消息
 # bin/kafka-console-producer.sh --broker-list 192.168.1.130:9092 --topic test
 
 第5步:啓動consumer消費消息
 # bin/kafka-console-consumer.sh --bootstrap-server 192.168.1.130:9092 --topic tes --from-beginning
 
 
 二 Kafka的集羣
 修改192.168.1.130配置文件 conf/server.properties 
 1.Zookeeper的配置,zookeeper有集羣時,用,分隔zookeeper.connect=192.168.1.129:2181,192.168.1.130:2181
   zookeeper.connect=192.168.1.129:2181
 2.broker的配置,集羣時,這個id要保證唯一
   broker.id=0
 3.listeners配置本機的ip,不能使用localhost或127.0.0.1
   listeners=PLAINTEXT://192.168.1.130:9094
---------------------------------------------
 修改192.168.1.131配置文件 conf/server.properties 
 1.Zookeeper的配置
   zookeeper.connect=192.168.1.129:2181
 2.broker的配置,集羣時,這個id要保證唯一
   broker.id=1
 3.listeners配置本機的ip
   listeners=PLAINTEXT://192.168.1.131:9094

 4.log目錄配置,
 log.dirs=/tmp/kafka-logs
 啓運Kafka的時候會在該配置的文件下生成一個 meta.properties
 文件中的broker.id 要和 server.properties文件中的broker.id 一致
 如果中途修改過server.properties中broker.id,有可能meta.properties不會改變,導致啓動不了

 5.zookeeper中的節點信息
  查看所有集羣節點
    [zk: localhost:2181(CONNECTED) 17] ls /brokers/ids
    [1, 3]

  查看master節點
    [zk: localhost:2181(CONNECTED) 26] get /controller
    {"version":1,"brokerid":3,"timestamp":"1540373625137"}
    cZxid = 0x2000007d2
    ctime = Wed Oct 24 17:33:45 CST 2018
    mZxid = 0x2000007d2
    mtime = Wed Oct 24 17:33:45 CST 2018
    pZxid = 0x2000007d2
    cversion = 0
    dataVersion = 0
    aclVersion = 0
    ephemeralOwner = 0x166a4c767b6000e
    dataLength = 54
    numChildren = 0

Kafka 沒有像ActiveMQ有 queue和topic的區分 ,它只有topic ,可以通過group.id來實現類型queue的功能

 

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