Zookeeper+kafka 三节点集群部署手册
2020-04-19 22:32
148 查看
Zookeeper+kafka 三节点集群部署手册
此处软件版本为:jdk-8,zookeeper-3.4.14,kafka-2.3,网络环境:阿里云内网&外网(互联网)
服务器名 kafka内网IP:PORT kafka外网IP:PORT zookeeper内网IP:PORT KAFKA01 192.168.1.157:9092 116.151.157.185:19092 192.168.1.157:2181 KAFKA02 192.168.1.158:9092 116.151.157.185:29092 192.168.1.157:2181 KAFKA03 192.168.3.159:9092 116.151.157.185:39092 192.168.1.157:2181 以上外网地址是将各自内网地址在SLB中单独监听产生
####更新及安装系统软件
yum update -y
yum -y install epel-release make gcc gcc-c++ curl wget git zip unzip xz vim perl sysstat lsof lvm2
安装jdk8
下载jdk
wget http://61.160.245.8:6001/jdk-8u102-linux-x64.tgz tar zxf jdk-8u102-linux-x64.tgz
解压缩后移动到目录/usr/java/ 下
mv jdk1.8.0_102/ /usr/local/java
配置JDK环境变量
vim /etc/profile.d/java.sh export JAVA_HOME=/usr/local/java export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export PATH=$PATH:$JAVA_HOME/bin
修改hosts
192.168.1.157 KAFKA01 KAFKA01 192.168.1.158 KAFKA02 KAFKA02 192.168.3.159 KAFKA03 KAFKA03
安装zookeeper
下载zookeeper
wget http://mirrors.hust.edu.cn/apache/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz
新建目录与安装
mkdir /opt/bigdata tar -zxvf zookeeper-3.4.14.tar.gz -C /opt/bigdata
复制配置文件
cd /opt/bigdata/zookeeper-3.4.14/ cp conf/zoo_sample.cfg conf/zoo.cfg
修改配置文件zoo.cfg如下:
dataDir=/opt/bigdata/data/zookeeper/zkdata dataLogDir=/opt/bigdata/data/zookeeper/zkdatalog server.1=KAFKA01:2888:3888 server.2=KAFKA02:2888:3888 server.3=KAFKA03:2888:3888
创建myid文件
mkdir -vp /opt/bigdata/data/zookeeper/zkdata echo x > /opt/bigdata/data/zookeeper/zkdata/myid
注意:x表示主机的编号,不可重复
配置环境变量(每个主机都需要配置)
vim /etc/profile #set java environment , append export ZOOKEEPER_HOME=/opt/bigdata/zookeeper-3.4.14 export PATH=$ZOOKEEPER_HOME/bin:$PATH
使得配置生效
. /etc/profile
启动服务
cd /opt/bigdata/zookeeper-3.4.14 bin/zkServer.sh start
查看状态
bin/zkServer.sh status
注意:zk集群一般只有一个leader,多个follower,主一般是响应客户端的读写请求,而从同步数据,当主挂掉之后就会从follower里投票选举一个leader出来。
客户端连接
zkCli.sh
安装配置kafka
下载解压kafka
wget http://mirror.bit.edu.cn/apache/kafka/2.3.0/kafka_2.11-2.3.0.tgz tar -zxvf kafka_2.11-2.3.0.tgz mv kafka_2.11-2.3.0 /opt/kafka
修改server.properties
broker.id=1 ###三台的broker.id不可相同,分别为1 、2、3 delete.topic.enable=true ###添加,如果我们需要删除topic,还需要配置一下内容 listeners=PLAINTEXT://kafka内网IP:PORT ###修改成相应内网地址 advertised.listeners=PLAINTEXT://kafka外网IP:PORT #所有节点都必须配置否则无法访问 log.dirs=/opt/kafka-logs zookeeper.connect=KAFKA01:2181,KAFKA02:2181,KAFKA03:2181 #此外,可以在log.retention.hours=168 下面新增下面三项: message.max.byte=5242880 default.replication.factor=2 replica.fetch.max.bytes=5242880
验证
思路:以下给出几条kafka指令。创建一个topic,一个节点作为生产者,两个节点作为消费者分别看看能否接收数据,进行验证:
启动
cd /opt/kafka bin/kafka-server-start.sh -daemon config/server.properties &
创建及查看topic
bin/kafka-topics.sh -list -zookeeper KAFKA01:2181 bin/kafka-topics.sh --create --zookeeper KAFKA01:2181 --replication-factor 1 --partitions 1 --topic myTopic #单机 bin/kafka-topics.sh --create --zookeeper KAFKA01:2181 --replication-factor 3 --partitions 3 --topic myTopic #三节点集群
开启生产者
bin/kafka-console-producer.sh --broker-list KAFKA01:9092 --topic myTopic
开启消费者
bin/kafka-console-consumer.sh --bootstrap-server KAFKA01:9092 --topic myTopic --from-beginning bin/kafka-console-consumer.sh --bootstrap-server KAFKA02:9092 --topic myTopic --from-beginning bin/kafka-console-consumer.sh --bootstrap-server KAFKA03:9092 --topic myTopic --from-beginning 外网消费 bin/kafka-console-consumer.sh --bootstrap-server 116.151.157.185:19092 --topic myTopic --from-beginning
更多kafka命令
查看topic的详细信息
bin/kafka-topics.sh -zookeeper PORTAL-KAFKA02:2181 --describe --topic myTopic
为topic增加副本
bin/kafka-reassign-partitions.sh --zookeeper PORTAL-KAFKA01:2181 --reassignment-json-file json/partitions-to-move.json -execute
删除topic
bin/kafka-topics.sh --zookeeper PORTAL-KAFKA01:2181 --delete --topic myTopic
关闭kafka
bin/kafka-server-stop.sh
- 点赞
- 收藏
- 分享
- 文章举报
相关文章推荐
- Zookeeper+Kafka集群部署方案
- docker-compose跨机器部署kafka集群(包含zookeeper集群搭建) 第一版本
- 消息中间件 kafka+zookeeper 集群部署、测试与应用(1)
- zookeeper+kafka集群安装部署
- kafka集群部署与配置手册
- Kafka-0.10.2.1使用独立zookeeper部署集群
- zookeeper+kafka集群安装部署
- kafka学习总结之集群部署和zookeeper
- 搭建3个节点的hadoop集群(完全分布式部署)--3 zookeeper与hbase安装
- Kubernetes+docker-DIY-kafka+zookeeper+manager集群部署
- zookeeper+Kafka集群部署
- Zookeeper+Kafka集群部署
- Kafka的3节点集群详细启动步骤(Zookeeper是外装)
- Zookeeper以及kafka单节点服务部署
- centos7.6下kafka_2.12-2.1.1+zookeeper-3.4.13集群部署
- kafka集群和zookeeper集群的部署,kafka的java代码示例
- Kafka 安装部署及使用(单节点/集群)
- Kafka集群搭建01-Zookeeper 集群部署
- Kafka分布式集群部署手册
- 生产环境实战spark (11)分布式集群 5台设备 Zookeeper集群、Kafka集群安装部署