背景
本博客描述的是在centos7上安装kafka_2.11_2.2.0
安装java
安装java8以上,配置好环境变量
修改主机名
vi /etc/hostname
reboot
修改/etc/hosts
将主机名和ip追加上
Ping一下主机名,看能否ping通
关闭防火墙
systemctl status firewalld.service
systemctl stop firewalld.service
systemctl disable firewalld.service
安装zookeeper
安装并启动zookeeper,安装zookeeper见zookeeper安装教程
下载kafka
下载地址:http://kafka.apache.org/downloads
创建目录
创建安装目录:mkdir /usr/local/kafka
解压压缩包
解压压缩文件到指定文件目录: tar -zxvf kafka_2.11-2.2.0.tgz -C /usr/local/kafka/
修改启动配置
修改配置文件:vi server.properties
log.dirs=/data/soft/kafka-logs
#zookeeper的连接地址
zookeeper.connect=zookeeper:2181
# kafka服务的地址
listeners=PLAINTEXT://kafka:9092
#设置topic的partition数量,提高并发处理能力
num.partitions=8
#kafka默认副本数,副本数设置不能大于broker数
offsets.topic.replication.factor=1
启动停止kafka
启动: /usr/local/kafka/kafka_2.11-2.2.0/bin/kafka-server-start.sh -daemon /usr/local/kafka/kafka_2.11-2.2.0/config/server.properties
停止: /usr/local/kafka/kafka_2.11-2.2.0/bin/kafka-server-stop.sh /usr/local/kafka/kafka_2.11-2.2.0/config/server.properties
设置开机自启动
1)创建kafka服务配置文件: vi /usr/lib/systemd/system/kafka.service
2)添加配置
[Unit]
Description=kafka service
After=network.target
[Service]
Type=Simple
Enviroment="PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:i/sbin:/bin:/usr/local/java/jdk1.8.0_271"
User=root
Group=root
ExecStart=/usr/local/kafka/kafka_2.11-2.2.0/bin/kafka-server-start.sh /usr/local/kafka/kafka_2.11-2.2.0/config/server.properties
ExecStop=/usr/local/kafka/kafka_2.11-2.2.0/bin/kafka-server-stop.sh /usr/local/kafka/kafka_2.11-2.2.0/config/server.properties
Restart=on-failure
[Install]
WantedBy=multi-user.target
3)刷新配置文件:systemctl daemon-reload
4)启动服务: systemctl start kafka
5)设置开机自启动: systemctl enable kafka
集群模式
需要修改server.properties
#broker.id需要修改
broker.id=0 / 1 / 2
#listeners需要修改
listeners=PLAINTEXT://kafkaA:9092
listeners=PLAINTEXT://kafkaB:9092
listeners=PLAINTEXT://kafkaC:9092