zookeeper(3.4.14) + kafka(kafka_2.11-2.3.1)集群环境搭建
zookeeper 集群搭建
- tar zxvf zookeeper-3.4.14.tar.gz
- cd zookeeper-3.4.14/conf
- cp zoo_sample.cfg zoo.cfg
- vi zoo.cfg 在文件末尾加上
server.1=192.168.1.1:3181:3182
server.2=192.168.1.2:3181:3182
server.3=192.168.1.3:3181:3182
说明: server.数字=IP:port1:port2 例如server.1=192.168.1.1:3181:3182
# server.A=B:C:D 其 中
# A 是一个数字,表示这个是第几号服务器,叫做myid或sid;
# B 是这个服务器的 ip地址;
# C 表示的是这个服务器与集群中的 Leader 服务器交换信息的端口;
# D 表示的是万一集群中的 Leader 服务器挂了,需要一个端口来重新进行选举,选出一个新的 Leader, 而这个端口就是用来执行选举时服务器相互通信的端口。
即在192.168.1.1服务上
- cd /tem/zookeeper 目录下
- vi myid 创建这个文件该文件填写 数字 1
- 其他服务依此类推
- 启动zookeeper
cd zookeeper/bin
sh zkServer.sh start
- 查看zookeeper状态
进入到zookeeper安装目录
cd zookeeper-3.4.14/bin
sh zkServer.sh status
Kafka 集群搭建
-
tar zxvf kafka_2.11-2.3.1.tgz
-
cd kafka_2.11-2.3.1/config
-
vi server.properties 修改broker.id=数字 保证集群中此id唯一即可 修改listeners=PLAINTEXT://10.21.17.15:9092,此IP为当前服务器的IP。 修改 zookeeper链接,填写zookeeper服务器的IP,端口默认是2181
-
启动kafka cd kafka_2.11-2.3.1/bin sh kafka-server-start ../conf/server.propertis
Kafka基本指令使用
- 创建topic
sh kafka-topics.sh --create --zookeeper 192.168.1.1:2181,192.168.1.2:2181,192.168.1.3:2181 --replication-factor 2 --partitions 3 --topic zk_topic
--zookeeper 表示zookeeper服务器,多个服务器已英文逗号隔开 --replication-factor 表示用来设置主题的副本数 --partitions 物理意义上的topic分区,可以在/tmp/kafka-logs下能看到zk_topic有3份
--topic topic主题名称
-
查看已创建的topic sh kafka-topics.sh --list --zookeeper 192.168.1.1:2181,192.168.1.2:2181,192.168.1.3:2181
-
发送消息 sh kafka-console-producer.sh --broker-list 192.168.1.1:9092 --topic zk_topic
-
消费消息 sh kafka-console-consumer.sh --bootstrap-server 192.168.1.1:9092 --topic zk_topic --from-beginning