文章目录
- 一、zookeeper伪集群搭建
- 1. 下载安装包
- 2. 解压安装包
- 3. 创建目录
- 4. 修改配置文件
- 5. 修改dataDir,clientPort两个配置项
- 5. 在data目录下创建myid文件
- 6. 复制多个zookeeper
- 7. 修改内存大小
- 8. 启动zookeper
- 9. 查看zookeeper运行状态
- 二、kafka 伪集群搭建
- 2.1. 下载
- 2.2. 解压安装包
- 2.3. 新建目录
- 2.4. 修改配置文件
- 2.5. 复制多个kafka
- 2.6. 配置kafka9092
- 2.7. 配置kafka9093
- 2.8. 修改内存大小
- 2.9. 防火墙策略
- 2.10. 启动kafka集群
- 2.11. 关闭kafka
- 三、测试
- 3.1. 创建Topic
- 3.2. 查看已经创建的Topic信息
- 3.3. 发送消息
- 3.4. 创建Topic
- 3.5. kafka集群搭建
一、zookeeper伪集群搭建
腾讯云安装参考:腾讯云~ zookeeper集群安装、配置、验证
在同一台服务器上,以不同端口(2181,2182,2183)运行三个zookeeper,形成一个伪集群
1. 下载安装包
cd /app
wget https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.8.0/apache-zookeeper-3.8.0-bin.tar.gz
2. 解压安装包
tar -zxvf apache-zookeeper-3.8.0-bin.tar.gz
mv apache-zookeeper-3.8.0-bin/ zookeeper-2181
3. 创建目录
cd /app/zookeeper-2181
mkdir data logs
4. 修改配置文件
cd /app/zookeeper-2181/conf
cp zoo_sample.cfg zoo.cfg
5. 修改dataDir,clientPort两个配置项
修改
dataDir=/app/zookeeper-2181/data
clientPort=2181
并添加以下配置项
dataLogDir=/app/zookeeper-2181/logs
server.1=localhost:2287:3387
server.2=localhost:2288:3388
server.3=localhost:2289:3389
5. 在data目录下创建myid文件
cd /app/zookeeper-2181/data
vim myid
在myid中指定节点id,在一个集群中不能重复。例如:将2181节点的id设置为1,2182节点设置为2,2183节点设置为3
6. 复制多个zookeeper
cd /app
cp -r zookeeper-2181 zookeeper-2182
cp -r zookeeper-2181 zookeeper-2183
修改conf/zoo.cfg配置文件中的配置,参考第4小节
7. 修改内存大小
在各个节点的配置目录下,新增配置配置文件
cd /app/zookeeper-2181/conf
vim zkEnv.sh
添加以下内容
#!/bin/sh
export JVMFLAGS="-Xms100m -Xmx100m $JVMFLAGS"
2182/2183依次新增
8. 启动zookeper
进入到每个zookeeper中,启动zookeeper
cd /app/zookeeper-2181
./bin/zkServer.sh start conf/zoo.cfg
9. 查看zookeeper运行状态
for i in {1,2,3}; do sh /opt/module/zookeeper/zookeeper-218${i}/bin/zkServer.sh status; done
查看某个节点的状态
/app/zookeeper-2181/bin/zkServer.sh status
二、kafka 伪集群搭建
在同一台服务器上,以不同的端口(9091,9092,9093)启动三个kafka节点,组成伪集群
2.1. 下载
cd /app
wget https://archive.apache.org/dist/kafka/2.4.0/kafka_2.13-2.4.0.tgz
2.2. 解压安装包
tar -zxvf kafka_2.13-2.4.0.tgz
mv kafka_2.13-2.4.0 kafka_9091
2.3. 新建目录
mkdir /app/kafka_9091/logs -p
2.4. 修改配置文件
复制配置修改server1.properties配置
cd /app/kafka_9091/config
修改配置文件server.properties
broker.id=1
listeners=PLAINTEXT://localhost:9091
log.dirs=/app/kafka_9091/logs
zookeeper.connect=localhost:2181,localhost:2182,localhost:2183
- broker.id:节点id,在同一个集群中,不能重复
- listeners:节点监听的端口,在同一台机器上,也不能相同
- log.dris:存储数据的位置
- zookeeper.connect:zookeeper集群的连接地址
2.5. 复制多个kafka
cd /app
cp -r kafka_9091 kafka_9092
cp -r kafka_9091 kafka_9093
2.6. 配置kafka9092
cd /app/kafka_9092/config
修改配置文件server.properties
broker.id=2
listeners=PLAINTEXT://localhost:9092
log.dirs=/app/kafka_9092/logs
zookeeper.connect=localhost:2181,localhost:2182,localhost:2183
- broker.id:节点id,在同一个集群中,不能重复
- listeners:节点监听的端口,在同一台机器上,也不能相同
- log.dris:存储数据的位置
- zookeeper.connect:zookeeper集群的连接地址
2.7. 配置kafka9093
cd /app/kafka_9093/config
修改配置文件server.properties
broker.id=3
listeners=PLAINTEXT://localhost:9093
log.dirs=/app/kafka_9093/logs
zookeeper.connect=localhost:2181,localhost:2182,localhost:2183
- broker.id:节点id,在同一个集群中,不能重复
- listeners:节点监听的端口,在同一台机器上,也不能相同
- log.dris:存储数据的位置
- zookeeper.connect:zookeeper集群的连接地址
2.8. 修改内存大小
在各个节点下,修改脚本文件
- kafka 9091节点
cd /app/kafka_9091/bin
vim kafka-server-start.sh
修改配置项KAFKA_HEAP_OPTS
export KAFKA_HEAP_OPTS="-Xmx200M -Xms200M"
- kafka 9092节点
cd /app/kafka_9092/bin
vim kafka-server-start.sh
修改配置项KAFKA_HEAP_OPTS
export KAFKA_HEAP_OPTS="-Xmx200M -Xms200M"
- kafka 9093节点
cd /app/kafka_9093/bin
vim kafka-server-start.sh
修改配置项KAFKA_HEAP_OPTS
export KAFKA_HEAP_OPTS="-Xmx200M -Xms200M"
2.9. 防火墙策略
firewall-cmd --zone=public --add-port=9091/tcp --permanent
firewall-cmd --zone=public --add-port=9092/tcp --permanent
firewall-cmd --zone=public --add-port=9093/tcp --permanent
firewall-cmd --reload
2.10. 启动kafka集群
前台启动
./bin/kafka-server-start.sh config/server.properties
- kafka 9091节点
cd /app/kafka_9091
./bin/kafka-server-start.sh -daemon config/server.properties
- kafka 9092节点
cd /app/kafka_9092
./bin/kafka-server-start.sh -daemon config/server.properties
- kafka 9093节点
cd /app/kafka_9093
./bin/kafka-server-start.sh -daemon config/server.properties
2.11. 关闭kafka
- kafka 9091节点
cd /app/kafka_9091/bin
./bin/kafka-server-stop.sh -daemon config/server.properties
- kafka 9092节点
cd /app/kafka_9092/bin
./bin/kafka-server-stop.sh -daemon config/server.properties
- kafka 9093节点
cd /app/kafka_9093/bin
./bin/kafka-server-stop.sh -daemon config/server.properties
三、测试
3.1. 创建Topic
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic gblfy-topic
3.2. 查看已经创建的Topic信息
bin/kafka-topics.sh --list --zookeeper localhost:2181
或者
bin/kafka-topics.sh --bootstrap-server localhost:9091,localhost:9092,localhost:9093 --list
查询效果一样,因为zk本身咱们就是集群,信息共享
3.3. 发送消息
消息发送命令
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic gblfy-topic
消息内容:
{"domainName":"gblfy.com","operation":"666"}
3.4. 创建Topic
在开一个窗口
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic gblfy-topic
3.5. kafka集群搭建
kafka集群下载、启动、部署、测试
https://gblfy.blog.csdn.net/article/details/104428791