赞
踩
目录
系统版本:Red Hat Enterprise Linux Server release 6.8
三台服务器上都需要安装JDK,版本1.8,这里就不在详述。
Kafka新版本有自带的zookeeper,但是有些关于zookeeper的命令没有集成,所以这里使用独立的zookeeper服务器。三台服务器上分别安装zookeeper,安装步骤相同,配置上有细微差别。
上传安装包,并解压
sudo tar -xzvf zookeeper-3.4.13.tar.gz
进入解压后目录的conf目录
cd /home/XX/kafka/zoo/zookeeper-3.4.13/conf
复制一份配置文件
sudo cp zoo_sample.cfg zoo.cfg
修改配置文件
sudo vim zoo.cfg
修改dataDir、clientPort、添加dataLogDir、server.1/2/3,各参数的作用在kafka伪集群文档中有描述,在此就不复述了。
创建上面配置文件中dataDir、dataLogDir目录
sudo mkdir -pv /home/XX/kafka/zoo/{data1,log1}
依照习惯,其他两台上创建的是data2/3,log2/3,这些目录结构自己规划就行,但是要与配置文件的目录路径一样。
进入data目录,创建myid文件
- cd /home/XX/kafka/zoo/data1
-
- sudo vim myid
输入myid的值,三台服务器分别是1/2/3。
分别启动3台zookeeper
进入zookeeper解压目录的bin目录下,执行启动命令:
- cd /home/XX/kafka/zoo/zookeeper-3.4.13/bin
-
- sudo ./zkServer.sh start
启动之后在此目录下,查看zookeeper状态,命令:
sudo ./zkServer.sh status
可以得出每个zookeeper的角色,是leader还是follower
上传安装包,并解压
sudo tar -xzvf kafka_2.12-2.0.0.tgz
解压完成后进入解压目录的config目录
sudo cd /home/XX/kafka/kafka/kafka_2.12-2.0.0/config
修改之前备份,这是必须的。备份完成后修改原文件
sudo vim server.properties
修改的内容如下:
- border.id值顺延:1-3
-
- port值顺延:9092-9094
-
- host.name值为服务器IP
-
- listeners=PLAINTEXT://服务器IP:9092(注意修改)
-
- advertised.listeners=PLAINTEXT://服务器IP:9092(注意修改)
-
- log.dirs==/home/redis/kafka/kafka/log1(logs序号对应)
-
- zookeeper.connect=ip1:2181,ip2:2182,ip3:2183(此处,3台配置一样)
各参数的作用在kafka伪集群配置文档中有描述,此处不再复述。
创建上面配置文件中的log.dirs
mkdir -p /home/XX/kafka/kafka/log1
分别启动3个kafka,切至安装目录的bin目录,执行命令:
- cd /home/XX/kafka/kafka/kafka_2.12-2.0.0/bin
-
- sudo nohup ./kafka-server-start.sh ../config/server.properties &
日志输出在bin目录下的nohup.out文件中
查看日志,没有报错即为启动成功。
跟踪日志命令:
sudo tail -f nohup.out
切至任意一台kafka安装目录
创建topic(3分区,2备份)
sudo bin/kafka-topics.sh --create --zookeeper ip1:2181,ip2:2182,ip3:2183 --replication-factor 2 --partitions 3 --topic test
查看存在的topic
sudo bin/kafka-topics.sh --zookeeper ip1:2181,ip2:2182,ip3:2183 --list
创建生产者,往topic中写入消息
sudo bin/kafka-console-producer.sh --broker-list ip1:9092,ip2:9093,ip3:9094 --topic test
创建消费者,查看topic中信息
sudo bin/kafka-console-consumer.sh --bootstrap-server ip1:9092,ip2:9093,ip3:9094 --topic test --from-beginning
上面的命令通过后,可以kill掉一个kafka,然后再重新执行上面命令,若无错误,证明kafka伪集群配置成功。
其他命令:
删除topic
sudo ./kafka-topics.sh --delete --zookeeper ip1:2181,ip2:2182,ip3:2183 --topic test
赞
踩
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。