大家好,又见面了,我是你们的朋友全栈君。 Kafka集群 搭建
测试机 三个节点 hadoop1 hadoop2 hadoop3 这三个节点 安装了独立的zookeeper 且我其他hadoop hbase等元数据信息都在上面 我不用Kafka自带的 zookeeper
本次的版本是:/kafka_2.10-0.10.0.1
修改配置:
kafka_2.10-0.10.0.1/config 下面有很多文件 需要我们关注的 除了log4j其实就三个
代码语言:javascript复制consumer.properties
server.properties
producer.properties
先看一下 最重要的 server.properties
我修改主要如下:
代码语言:javascript复制broker.id=0 //hadoop1 为0 Hadoop2 为1 Hadoop3为2
listeners=PLAINTEXT://192.168.90.保密:9092 // 三个节点不同ip
delete.topic.enable=true //删除主题后 物理删除(直接删掉不标记为删除)
log.dirs=/tmp/kafka-logs //这个是消息存放的路径 消息都是放在.log结尾的文件中 索引放在.index 文件中 (二分查找法)
zookeeper.connect=192.168.90.**:2181,192.168.90.**:2181,192.168.90.**:2181 //zookeeper 集群的地址
//其他参数 参考官网 调优时自己配置
下面 comsumer.properties
代码语言:javascript复制zookeeper.connect=192.168.90.**:2181,192.168.90.**:2181,192.168.90.**:2181 //zookeeper 集群的地址
下面 producer.properties
代码语言:javascript复制bootstrap.servers=192.168.90.**:9092,192.168.90.**:9092,192.168.90.**:9092
然后 三台启动 就可以了 具体查看集群状态信息 可以参考我上一篇博客 kafka的可视化界面
下面说点命令: 第一个 命令 : 启动集群 三个节点都要执行
代码语言:javascript复制./kafka-server-start.sh ../config/server.properties
查看主题
代码语言:javascript复制./kafka-topics.sh --list --zookeeper hadoop1:2181
结果:
__consumer_offsets
visit3
查看主题详情
代码语言:javascript复制[root@hadoop1 bin]# ./kafka-topics.sh --describe --topic visit3 --zookeeper hadoop1:2181
//这行显示的是 主题名 分区个数 副本数
Topic:visit3 PartitionCount:4 ReplicationFactor:2 Configs:
//下面是详细信息
//这一行说明 主题visit3的分区0 副本位于broker0 和broker2上 learder在broker0上面 之后再详细说明learder和isr是啥
Topic: visit3 Partition: 0 Leader: 0 Replicas: 0,2 Isr: 0,2
Topic: visit3 Partition: 1 Leader: 0 Replicas: 1,0 Isr: 0,1
Topic: visit3 Partition: 2 Leader: 1 Replicas: 2,1 Isr: 1,2
Topic: visit3 Partition: 3 Leader: 0 Replicas: 0,1 Isr: 0,1
创建主题
代码语言:javascript复制创建一个test主题 4个分区 每个分区2个副本
./kafka-topics.sh --create --topic test --partitions 4 --replication-factor 2 --zookeeper hadoop1:2181
Created topic "test".
删除主题
代码语言:javascript复制./kafka-topics.sh --delete --topic test1 --zookeeper hadoop1:2181
Topic test1 is marked for deletion.
Note: This will have no impact if delete.topic.enable is not set to true.
//我在配置中 配置了 直接删
还有 控制台 起生产者 消费者
代码语言:javascript复制./kafka-console-producer.sh --topic test --broker-list hadoop1:9092,hadoop2:9092,hadoop3:9092
./kafka-console-consumer.sh --topic test --zookeeper hadoop1:2181
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/133349.html原文链接:https://javaforall.cn