kafka集群搭建
1. 服务器基本信息
ip地址 | 安装服务 |
---|---|
10.0.0.1 | kafka_2.11-1.1.0 |
10.0.0.2 | kafka_2.11-1.1.0 |
10.0.0.3 | kafka_2.11-1.1.0 |
jdk版本:jdk-8u171
3. 安装jdk(省略) 4. 配置Zookeeper
vi kafka_2.11-1.1.0/config/zookeeper.properties
4.1 修改以下内容
maxClientCnxns=60
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/data/zookeeper/data
dataLogDir=/data/logs/zookeeper
clientPort=2181
server.1=10.0.0.1:2888:3888
server.2=10.0.0.2:2888:3888
server.3=10.0.0.3:2888:3888
2888表示zookeeper程序监听端口,3888表示zookeeper选举通信端口。
4.2 创建数据和日志文件夹
mkdir -p /data/zookeeper/data
mkdir -p /data/logs/zookeeper
4.3 生成myid文件
【kafka集群搭建】注意三台机器该配置文件应该不一致,该id表明每个节点唯一身份id
10.0.0.1
echo "1" >/data/zookeeper/data/myid ##生成ID,这里需要注意, myid对应的zookeeper.properties的server.ID,比如第二台zookeeper主机对应的myid应该是2
10.0.0.2
echo "2" >/data/zookeeper/data/myid
10.0.0.3
echo "3" >/data/zookeeper/data/myid
5. 启动Zookeeper
bin/zookeeper-server-start.sh -daemon config/zookeeper.properties
6. 配置Kafka
vi kafka_2.11-1.1.0/config/server.properties
6.1 修改如下配置
# 第一段 写到 10.0.0.1上server.properties配置
broker.id=0
listeners=PLAINTEXT://10.0.0.1:9092
zookeeper.connect=10.0.0.1:2181,10.0.0.2:2181,10.0.0.3:2181
delete.topic.enable=true
log.dir=/data/kafka-logs
log.retention.hours=168
message.max.bytes=5242880
replica.fetch.max.bytes=5242880# 第二段 写到 10.0.0.2上server.properties配置
broker.id=1
listeners=PLAINTEXT://10.0.0.2:9092
zookeeper.connect=10.0.0.1:2181,10.0.0.2:2181,10.0.0.3:2181
delete.topic.enable=true
log.dir=/data/kafka-logs
log.retention.hours=168
message.max.bytes=5242880
replica.fetch.max.bytes=5242880# 第三段 写到 10.0.0.3上server.properties配置
broker.id=2
listeners=PLAINTEXT://10.0.0.3:9092
zookeeper.connect=10.0.0.1:2181,10.0.0.2:2181,10.0.0.3:2181
delete.topic.enable=true
log.dir=/data/kafka-logs
log.retention.hours=168
message.max.bytes=5242880
replica.fetch.max.bytes=5242880
6.2 创建数据和日志文件夹
mkdir -p /data/kafka-logs
7. 启动kafka(三台)
bin/kafka-server-start.sh -daemon config/server.properties
8. 创建 TOPIC 使用 kafka-topics.sh 创建单分区单副本的 topic test:
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
查看 topic 列表:
bin/kafka-topics.sh --list --zookeeper localhost:2181
9. 产生消息 使用 kafka-console-producer.sh 发送消息:
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
mark
10. 消费消息 使用 kafka-console-consumer.sh 接收消息并在终端打印:
bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic test --from-beginning
推荐阅读
- 六步搭建ES6语法环境
- federation--kubernetes集群联邦的实现
- 深入浅出谈一下有关分布式消息技术(Kafka)
- (1)redis集群原理及搭建与使用(1)
- 15.Kafka
- 桁架搭建有什么价值()
- VM|VM ware 的 harbor 私有仓库搭建 (Ubuntu16.04)
- PHP开发-Mac搭建ThinkPHP5.0
- Python|Win10下 Python开发环境搭建(PyCharm + Anaconda) && 环境变量配置 && 常用工具安装配置
- sentry搭建错误监控系统(二)