三台服务器(每台都需要部署kafka、zk)
Kafka是由Apache软件基金会开发的一个开源流处理平台,由Scala和Java编写。Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者在网站中的所有动作流数据。
http://kafka.apache.org/quickstart
wget http://mirrors.tuna.tsinghua.edu.cn/apache/kafka/1.1.0/kafka_2.11-1.1.0.tgz
tar -xzf kafka_2.11-1.1.0.tgz -C /opt/
cd /opt/kafka_2.11-1.1.0/bin
./zookeeper-server-start.sh config/zookeeper.properties
日志信息:
INFO binding to port 0.0.0.0/0.0.0.0:2181 (org.apache.zookeeper.server.NIOServerCnxnFactory)
可以看到zookeeper服务的端口为2181
https://zookeeper.apache.org/releases.html

https://archive.apache.org/dist/zookeeper/

目录 /usr/local/zookeeper-3.5.9
启动命令 ./bin/zkServer.sh start
bin/kafka-server-start.sh config/server.properties
其中kafka的端口为9092,在下面这条信息可以看到
INFO Registered broker 0 at path /brokers/ids/0 with addresses: ArrayBuffer(EndPoint(ambari.master.com,9092,ListenerName(PLAINTEXT),PLAINTEXT)) (kafka.zk.KafkaZkClient)
./kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
Created topic "test".
./kafka-topics.sh --list --zookeeper localhost:2181
test
Kafka带有一个命令行客户端,它将从文件或标准输入中获取输入,并将其作为消息发送到Kafka集群。默认情况下,每行将作为单独的消息发送。 启动生产者
./kafka-console-producer.sh --broker-list localhost:9092 --topic test
输入几条消息发送到服务器
>This is a message
>This is another message
./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning
然后就可以在命令行看到生产者发送的消息了
This is a message
This is another message
cp config/server.properties config/server-1.properties
cp config/server.properties config/server-2.properties
bin/kafka-server-start.sh config/server-1.properties &
bin/kafka-server-start.sh config/server-2.properties &
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 3 --partitions 1 --topic my-replicated-topic
运行describe topics查看主题的信息
./kafka-topics.sh --describe --zookeeper localhost:2181 --topic my-replicated-topic
./kafka-console-producer.sh --broker-list localhost:9092 --topic my-replicated-topic
>my test message 1
>my test message 2
./kafka-console-consumer.sh --bootstrap-server localhost:9092 --from-beginning --topic my-replicated-topic
my test message 1
my test message 2
ps aux | grep server.properties