下载:
下载地址:
https://www.apache.org/dyn/closer.cgi?path=/kafka/0.9.0.1/kafka_2.11-0.9.0.1.tgz 下的 http://apache.fayea.com/kafka/0.9.0.1/kafka_2.11-0.9.0.1.tgz
配置:config/server.properties
zookeeper.connect=localhost:2181 配置连接zookeeper
log.dirs=/usr/local/kafka_2.11-0.9.0.1/kafka-logs 配置日志文件的路径
启动:
kafka启动要依赖jdk和zookeeper 所以启动kafka之前先要先启动zookeeper
启动服务:切换到bin目录下运行下面命令
./kafka-server-start.sh ../config/server.properties
启动生产方:
kafka-console-producer.sh --broker-list localhost:9092 --topic zj.entity.sss.update
启动消费方:
kafka-console-consumer.sh --zookeeper localhost:2181 --topic zj.* --from-beginning
设置为开机启动的做法:
方法一: /etc/rc.local中添加
/usr/local/kafka_2.11-0.9.0.1/bin/kafka-server-start.sh /usr/local/kafka_2.11-0.9.0.1/config/server.properties
好像这种方式启动不是很稳定,有时候可以有时候不行???20160314
方法二:
添加服务的方式启动kafka
step1: 进入到/etc/rc.d/init.d/目录下
cd /etc/rc.d/init.dstep2:新建kafka文件
touch kafka
step3:给kafka添加可执行权限
chmod +x kafka
step4:编辑kafka 添加如下内容
#!/bin/bash #chkconfig:2345 30 80 #description:kafka #processname:kafka case $1 in start) su root /usr/local/kafka_2.11-0.9.0.1/bin/kafka-server-start.sh /usr/local/kafka_2.11-0.9.0.1/config/server.properties;; stop) su root /usr/local/kafka_2.11-0.9.0.1/bin/kafka-server-stop.sh /usr/local/kafka_2.11-0.9.0.1/config/server.properties;; *) echo "require start|stop" ;; esac
注意:#chkconfig:2345 30 80 这里的30 要比 zookeerper 中的大,表示比其慢启动。80比zookeeper中的小,表示比其先关闭。这样改了之后还是启动不起来,20160320。
step5:要添加服务
chkconfig --add kafka
step6:现在可以用下面命令来启动停止kafka服务
service kafka start/stop
step7:设置为开机启动
chkconfig kafka on
集群配置:
常见错误:
1,
启动kafka时如果报
java.net.UnknownHostException: com.zjdata: com.zjdata: 未知的名称或服务
解决方法:
修改/etc/hosts文件
127.0.0.1 com.zjdata localhost.localdomain localhost
com.zjdata是新加的,原来没有,保存,问题解决。
至于启动时候为什么会报错,这个目前还没弄明白。