版本:
CentOS-6.5-x86_64
zookeeper-3.4.6
kafka_2.10-0.10.1.0
一.zookeeper下载与安装
1)下载
$ wget http://mirrors.cnnic.cn/apache/zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar.gz
2)解压
tar zxvf zookeeper-3.4.6.tar.gz
3)配置
cd zookeeper-3.4.6
cp -rf conf/zoo_sample.cfg conf/zoo.cfg
vim zoo.cfg
zoo.cfg:
dataDir=/opt/zookeeper-3.4.6/zkdata #这个目录是预先创建的
dataLogDir=/opt/zookeeper-3.4.6/zkdatalog #这个目录是预先创建的
请参考zookeeper
4)配置环境变量
ZOOKEEPER_HOME=/opt/zookeeper-3.4.6
PATH=$JAVA_HOME/bin:$ZOOKEEPER_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$ZOOKEEPER_HOME/lib:
5)启动zookeeper
$ sh zkServer.sh start
二.下载并且安装kafka
1).下载kafka:
wget http://apache.fayea.com/kafka/0.10.0.1/kafka_2.10-0.10.0.1.tgz
2) 解压:
tar -zxvf kafka_2.10-0.10.0.1.tgz
3) 配置:
log.dirs=/opt/kafka_2.10-0.10.1.0/kafka_log(提前创建)
listeners=PLAINTEXT://kafka所在机器ip地址:9092
(我这里使用的是本地 localhost)
4)启动kafka
$ sh bin/kafka-server-start.sh config/server.properties &
#这里我老显示启动报错。
把 kafka_2.10-0.10.1.0 /config/ server.properties里broker.id=0修改 broker.id=1
启动成功
备注:挂到后台使用
检测2181与9092端口 netstat -tunlp|egrep "(2181|9092)"
5)新建一个TOPIC
$ sh kafka-topics.sh --create --topic kafkatopic --replication-factor 1 --partitions 1 --zookeeper localhost:2181
$ ./kafka-topics.sh --list --zookeeper 192.168.61.135:2181 --查看所有topic
$ ./kafka-topics.sh --describe --zookeeper localhost:2181 --topic logTopic100 --查看指定topic
6) 把KAFKA的生产者启动起来:
$ sh kafka-console-producer.sh --broker-list localhost:9092 --sync --topic kafkatopic
7)另开一个终端,把消费者启动起来:
$ sh kafka-console-consumer.sh --zookeeper localhost:2181 --topic kafkatopic --from-beginning
(--from beginning 是从头开始消费,不加则是消费当前正在发送到该topic的消息)
8)使用
在发送消息的终端输入aaa,则可以在消费消息的终端显示