1.下載
下載地址:http://kafka.apache.org/downloads
2.安裝
下載的版本已經編譯,直接解壓到想要的目錄就算安裝好了
tar -zxf kafka_2.11-0.11.0.1.tgz
3.配置單節點
3.1 配置單節點zookeeper
我們使用kafka自帶的zookeeper
cd /usr/myapp/kafka_2.11 #進入kafka主目錄 mkdir -p zk/data #創建zookeeper數據存放目錄 mkdir -p zk/logs #創建zookeeperl存放日志目錄 cd config #進入配置文件所在目錄 mv zookeeper.properties zookeeper.properties.bak #將原配置文件移走 cat > zookeeper.properties << EOF tickTime=2000 dataDir=/usr/myapp/kafka_2.11/zk/data dataLogDir=/usr/myapp/kafka_2.11/zk/logs clientPort=2181 EOF
到具體情況時注意修昨dataDir和dataLogDir為自己的相應目錄
3.2 配置單結點kafka
cd /usr/myapp/kafka_2.11 #進入kafka主目錄 mkdir logs #創建logs目錄用於存放日志 cd config #進入配置文件所在目錄 mv server.properties server.properties.bak #將原配置文件移走 cat > server.properties << EOF broker.id=1 listeners=PLAINTEXT://192.168.220.128:9092 num.network.threads=3 num.io.threads=8 socket.send.buffer.bytes=102400 socket.receive.buffer.bytes=102400 socket.request.max.bytes=104857600 log.dirs=/usr/myapp/kafka_2.11/logs num.partitions=1 num.recovery.threads.per.data.dir=1 offsets.topic.replication.factor=1 transaction.state.log.replication.factor=1 transaction.state.log.min.isr=1 log.retention.hours=168 log.segment.bytes=1073741824 log.retention.check.interval.ms=300000 zookeeper.connect=192.168.220.128:2181 zookeeper.connection.timeout.ms=6000 group.initial.rebalance.delay.ms=0 EOF
上邊配置的server.properties的內容基本都是原server.properties的默認配置,到自己安裝時主要修改:
broker.id--broker的id;修改為任意自己想要的數值(和zookeeper中的id類似的)
listeners--監聽址址;修改為kafka要監聽的地址
log.dirs--日志文件存放目錄;修改為自己要存放日志的目錄
zookeeper.connect--zookeeper監聽地址;修改為自己的zookeeper的監聽地址,如果是集群所有地址全寫上用逗號(半角)隔開即可
4.啟動和停止
啟動前要配置JAVA_HOME,不然無法啟動(和tomcat一樣雖然輸出started了但並有有啟,可查看kafkaServer.out)
啟動:
./zookeeper-server-start.sh -daemon ../config/zookeeper.properties #啟動zookeeper ./kafka-server-start.sh -daemon ../config/server.properties #啟動kafka
停止:
./zookeeper-server-stop.sh #停止zookeeper ./kafka-server-stop.sh #停止kafka,centos7上可能關不了用kill -9直接殺掉
查看是否有zookeeper和kafka進程:
jps
集群等配置,參考