kafka 安装、配置、启动

下载:

 下载地址:

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.d 
step2:新建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是新加的,原来没有,保存,问题解决。

至于启动时候为什么会报错,这个目前还没弄明白。

 

猜你喜欢

转载自wangshirufeng.iteye.com/blog/2281753