点击查看原文
文章目录ubuntu系统安装OpenJDK8
添加ppa仓库设置Openjdk版本查看java版本 Zookeeper集群的配置
解压安装包并重命名修改配置文件 zoo.cfg创建data目录和myid文件分发zookeeper启动zookeeper服务 kafka集群的配置
解压安装包并重命名修改配置文件分发kafka文件启动kafka ubuntu系统安装OpenJDK8 添加ppa仓库
sudo add-apt-repository ppa:openjdk-r/ppasudo apt-get update sudo apt-get install openjdk-8-jdk
设置Openjdk版本sudo update-alternatives --config java
查看java版本java -version
参考教程:https://www.cnblogs.com/unclemac/p/12783408.html
Zookeeper集群的配置 解压安装包并重命名tar -zxvf zookeeper-3.4.14.tar.gzmv zookeeper-3.4.14/ zookeeper
修改配置文件 zoo.cfg
命令
cd zookeeper/conf/cp zoo_sample.cfg zoo.cfgvim zoo.cfg
配置内容
dataDir=/root/software/zookeeper/data server.1=Node1.IP:2888:3888 server.2=Node2.IP:2888:3888 server.3=Node3.IP:2888:3888
dataDir用于配置zookeeper快照日志和事务日志的存储地址,
server.每个节点服务编号 = 服务器ip地址:集群通信端口:选举端口
创建data目录和myid文件在zookeeper目录下执行如下命令
mkdir datacd dataecho "1" > myid
分发zookeeperscp -r zookeeper/ slave1:root/software/scp -r zookeeper/ slave2:root/software/
启动zookeeper服务分发后记得在各节点修改data中对应的myid编号
查看各个服务状态:bin/zkServer.sh status重启zookeeper服务:bin/zkServer.sh restart关闭zookeeper服务:bin/zkServer.sh stop启动zookeeper服务:bin/zkServer.sh start
kafka集群的配置 解压安装包并重命名tar -zxvf kafka_2.11-0.11.0.2.tgzmv kafka_2.11-0.11.0.2 kafka
修改配置文件命令
cd kafka/configvim sever.properties
配置内容
broker.id=0 listeners=PLAINTEXT://10.206.0.5:9092 advertised.listeners=PLAINTEXT://175.27.162.157:9092 log.dirs=/root/software/kafka/data zookeeper.connect=175.27.162.157:2181,1.13.163.169:2181,129.211.209.60:2181
broker.id:每个节点配置一个编号,保证唯一
listeners:内网访问的IP + 端口号
advertised.listeners :远程访问kafka服务的IP + 端口号
log.dirs:日志和文件存放路径
zookeeper.connect:zookeeper集群的地址
踩坑记录
启动kafka时报如下错误
kafka.common.KafkaException: Socket server failed to bind to xx:9092: Cannot assign requested address
解决
该情况下的虚拟机对外ip[暴露的ip]和真实ip[ifconfig显示的ip]可能只是映射关系,用户访问对外ip时,OpenStack会转发到对应的真实ip实现访问。但此时如果 Kafkaserver.properties配置中的listeners=PLAINTEXT://10.20.1.153:9092中的ip配置为[对外ip]的时候无法启动,因为socket无法绑定监听,所以会报如上错误
解决方法也很简单,listeners=PLAINTEXT://10.20.1.153:9092中的ip改为真实ip[ifconfig中显示的ip]即可,其他使用时正常使用对外ip即可,跟真实ip就没有关系了。
参考:https://qii404.me/2018/02/02/kafka-cluster.html
分发kafka文件scp -r kafka/ slave1:~/software/scp -r kafka/ slave1:~/software/
启动kafka分发后记得修改配置文件中broker.id、listeners、advertised.listeners对应值
进入kafka目录
bin/kafka-server-start.sh config/server.properties &
kafka常用命令:https://www.cnblogs.com/liyuanhong/p/12345751.html
参考:https://qii404.me/2018/02/02/kafka-cluster.html