kafka單機部署

kafka單機部署java

 

kafka是一種高吞吐量的分佈式發佈訂閱消息系統,kafka是linkedin用於日誌處理的分佈式消息隊列,linkedin的日誌數據容量大,但對可靠性要求不高,其日誌數據主要包括用戶行爲linux

環境配置:
CentOS release 6.3 (Final)
jdk版本:jdk-6u31-linux-x64-rpm.bin
zookeeper版本:zookeeper-3.4.4

 

一、安裝jdk並設置環境變量vim

jdk環境變量配置:bash

export JAVA_HOME=/usr/java/jdk1.6.0_31

export CLASSPATH=$JAVA_HOME/jre/lib:$JAVA_HOME/lib

export PATH=$PATH:$JAVA_HOME/bin

# source /etc/profile    使其生效socket

 

二、安裝zookeeper分佈式

# vim conf/zoo.cfgide

dataDir=/home/hadoop/storage/zookeeper    設置datadiroop

啓動zookeeper:spa

# ./bin/zkServer.sh start.net

查看狀zk態:

# ./bin/zkServer.sh status 

 

三、kafka 安裝

  • 修改配置文件:# vim config/producer.properties

broker.id=0
port=9092
host.name=10.37.129.3
num.network.threads=2
num.io.threads=8
socket.send.buffer.bytes=1048576
socket.request.max.bytes=104857600
log.dirs=/tmp/kafka-logs
num.partitions=2
log.flush.interval.messages=10000
log.flush.interval.ms=1000
log.retention.hours=168
log.retention.bytes=1073741824
log.segment.bytes=536870912
log.retention.check.interval.ms=60000
log.cleaner.enable=false
zookeeper.connect=10.37.129.3:2181 
zookeeper.connection.timeout.ms=1000000
  • 啓動kafka:

[root@localhost kafka_2.8.0-0.8.0]# ./bin/kafka-server-start.sh /usr/local/src/kafka_2.8.0-0.8.0/config/server.properties &

 

  • 新建一個TOPIC

# ./kafka-topics.sh --create --topic kafkatopic --replication-factor 1 --partitions 1 --zookeeper localhost:2181

  • 檢查是否建立主題成功 

# ./kafka-list-topic.sh --zookeeper localhost:2181
topic: test partition: 0 leader: 0 replicas: 0 isr: 0

 

  • 發送消息至KAFKA:

[root@localhost bin]# ./kafka-console-producer.sh --broker-list 192.168.1.141:9092 --sync --topic kafkatopic

This is the first message

這是另一個消息

This is another news

 

另開一個終端,顯示消息的消費

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

This is the first message

這是另一個消息

This is another news

 

 

*啓動produce    ./bin/kafka-console-producer.sh --broker-list 10.10.224.12:9092  --topic test  *啓動consumer    ./kafka-console-consumer.sh --zookeeper localhost:2181 --topic test    6.關閉kafka和zookeeper    ./kafka-server-stop.sh ../config/server.properties    ./zookeeper-server-stop.sh  心得總結:  1.produce啓動的時候參數使用的是kafka的端口而consumer啓動的時候使用的是zookeeper的端口;  2.必須先建立topic才能使用;  3.topic本質是以文件的形式儲存在zookeeper上的。  

相關文章
相關標籤/搜索