1.安装zookeeper
- kafka需要使用zookeeper,需要先安装zookeeper。
- 安装zookeeper前请先安装jdk,参考:linux安装jdk。
1.1.利用kafka的脚本启动zookeeper(不推荐)
kafka自带的脚本,可以直接启动一个单节点zookeeper。此方式只适合在开发环境临时测试使用,生产环境请勿使用。
1.1.1.启动zookeeper
bin/zookeeper-server-start.sh -daemon config/zookeeper.properties
- -daemon:后台启动
1.1.2.打开端口
默认端口:2181
firewall-cmd --add-port=2181/tcp --permanent
firewall-cmd --reload
1.2.手动部署zookeeper
1.2.1.下载zookeeper
官网:https://zookeeper.apache.org/
版本:apache-zookeeper-3.6.2
下载链接:https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.6.2/apache-zookeeper-3.6.2-bin.tar.gz
1.2.2.解压安装包
tar -xvf apache-zookeeper-3.6.2-bin.tar.gz
1.2.3.创建配置文件
进入conf目录,复制样例文件作为配置文件。如需自定义配置,可自行修改配置。
cp zoo_sample.cfg zoo.cfg
1.2.4.启动zookeeper
进入bin目录
./zkServer.sh start
默认使用conf/zoo.cfg配置文件
1.2.5.开启端口
默认端口:2181
firewall-cmd --add-port=2181/tcp --permanent
firwwall-cmd --reload
2.安装kafka
2.1.下载kafka
官网:http://kafka.apache.org/
版本:0.10.0.0
下载链接:https://archive.apache.org/dist/kafka/0.10.0.0/kafka_2.11-0.10.0.0.tgz
2.2.解压安装包
tar -xvf kafka_2.11-0.10.0.0.tgz
2.3.修改配置文件
修改config/server.properties文件,在其中加上以下配置。
advertised.listeners=PLAINTEXT://本机外网IP:9092
- advertised.listeners是外网监听,会注册到zookeeper中,kafka需要开放外网访问时需要配置该参数。如果不配置,会取listeners的值,如果listeners也没有配置,会取主机名(java.net.InetAddress.getCanonicalHostName())。
- 如果只有内网访问,配置listeners。如果不配置,默认会取主机名(java.net.InetAddress.getCanonicalHostName())。
不配置此参数可能会报错:No entry found for connection。
2.4.启动kafka
进入bin目录,后台启动
./kafka-server-start.sh -daemon ../config/server.properties
- -daemon:后台启动
2.5.开启端口
默认端口:9092
firewall-cmd --add-port=9092/tcp --permanent
firewall-cmd --reload