由于kafka依赖于zookeeper所以应首先安装zookeeper。
1.下载zk
从官网下载:
http://apache.mirror.colo-serv.net/zookeeper/zookeeper-3.4.14/
2.创建zk安装目录
[root@localhost local]# mkdir zk
3.解压zookeeper-3.4.14
[root@localhost 20190903]# tar -zxvf /usr/20190903/zookeeper-3.4.14.tar.gz -C /usr/local/zk
4.修改配置文件
(1)在zk的安装目录下创建2个文件,一个data,一个logs
[root@localhost zk]# mkdir data
[root@localhost zk]# mkdir logs
(2)备份配置文件
[root@localhost conf]# cp zoo_sample.cfg zoo_sample.cfg.bak
[root@localhost conf]# mv zoo_sample.cfg zoo.cfg
(3)修改配置文件如下图红色部分所示
#指定zk存放数据文件夹的目录为
dataDir=/usr/local/zk/data
#指定zk存放日志文件夹的目录为
dataLogDir=/usr/local/zk/logs
5.设置zk自动重启
(1)改系统环境变量,把zk的启动命令加入到系统环境变量中
[root@localhost conf]# vim /etc/profile
(2) 使profile配置生效
[root@localhost conf]# source /etc/profile
6.启动zk
[root@localhost zk]# zkserver.sh start
此时,即表明zk已经成功启动。
我们还可以使用zkServer.sh status命令来查看zk的运行状态。
Kafka安装
1.下载kafka安装包
[root@localhost 20190903]# wget http://archive.apache.org/dist/kafka/2.1.0/kafka_2.11-2.1.0.tgz
2.创建kafka安装目录
[root@localhost local]# mkdir kafka
3.解压安装包
[root@localhost 20190903]#tar -zxvf /usr/20190903/kafka_2.11-2.1.0.tgz -C /usr/local/kafka
4. 在kafka安装目录下创建一个目录kafka-logs用于kafka存放文件
[root@localhost kafka]# mkdir kafka-logs
5. 修改kafka配置
(1)修改server.properties配置文件
修改zk连接地址
修改日志位置
6.启动kafka
[root@localhost bin]# ./kafka-server-start.sh -daemon /usr/local/kafka/kafka_2.11-2.1.0/config/server.properties
使用jps命令检查是否启动成功,如图表示启动成功:
开机自启动配置
1.在目录/etc/init.d中创建kafka服务
[root@localhost init.d]# vi kafka
脚本如下所示:
#!/bin/sh
#
# chkconfig: 345 99 01
# description: Kafka
#
# File : Kafka
#
# Description: Starts and stops the Kafka server
#
KAFKA_HOME=/usr/local/kafka/kafka_2.11-2.1.0
export KAFKA_HOME
# See how we were called.
case "$1" in
start)
echo "Starting Kafka:"
cd $KAFKA_HOME/bin
./kafka-server-start.sh -daemon $KAFKA_HOME/config/server.properties
;;
stop)
echo "Stopping Kafka: "
es_pid=`ps aux|grep kafka | grep -v 'grep kafka' | awk '{print $2}'`
kill -9 $es_pid
;;
restart)
echo "restart Kafka: "
cd $KAFKA_HOME/bin
./kafka-server-start.sh -daemon $KAFKA_HOME/config/server.properties
;;
*)
echo "Usage: cassandra {start|stop|restart}"
;;
esac
2.修改kafka服务可执行权限
[root@localhost init.d]# chmod +x kafka
3.将kafka服务添加系统服务中
[root@localhost init.d]# chkconfig --add kafka
4.设置开机启动kafka服务
[root@localhost init.d]# chkconfig kafka on
5.查看是否设置成功
[root@localhost init.d]# chkconfig --list kafka
注意:该输出结果只显示 SysV 服务,并不包含原生 systemd 服务。SysV 配置数据可能被原生 systemd 配置覆盖。
如果您想列出 systemd 服务,请执行 'systemctl list-unit-files'。
欲查看对特定 target 启用的服务请执行
'systemctl list-dependencies [target]'。
kafka 0:关 1:关 2:开 3:开 4:开 5:开 6:关
6.开机测试
[root@localhost init.d]# reboot
[root@localhost bin]# ps -elf|grep kafka