Kafka简单集群
Kafka简单集群
仝玉甫 发表于5个月前
Kafka简单集群
  • 发表于 5个月前
  • 阅读 7
  • 收藏 0
  • 点赞 0
  • 评论 0

腾讯云 技术升级10大核心产品年终让利>>>   

搭建有3个消息生产者的简单Kafka集群。

复制server.properties:

cp config/server.properties config/server-1.properties
cp config/server.properties config/server-2.properties

分别编辑2个配置文件,broker.id是集群里的唯一标识,需要全局唯一。因为是在同一台机器上,所以需要修改listeners的端口和日志目录。

vi config/server-1.properties
    broker.id=1
    listeners=PLAINTEXT://:9093
    log.dir=/tmp/kafka-logs-1
 
vi config/server-2.properties
    broker.id=2
    listeners=PLAINTEXT://:9094
    log.dir=/tmp/kafka-logs-2

启动ZooKeeper:

bin/zookeeper-server-start.sh config/zookeeper.properties

分别启动三台生产者:

bin/kafka-server-start.sh config/server.properties &
bin/kafka-server-start.sh config/server-1.properties &
bin/kafka-server-start.sh config/server-2.properties &

创建一个复制3份,名为my-replicated-topic的topic:

bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 3 --partitions 1 --topic my-replicated-topic

查看集群状态:

bin/kafka-topics.sh --describe --zookeeper localhost:2181 --topic my-replicated-topic

Topic:my-replicated-topic    PartitionCount:1    ReplicationFactor:3    Configs:
Topic: my-replicated-topic    Partition: 0    Leader: 0    Replicas: 2,0,1    Isr: 0,1,2

"Leader"指id为0的节点是当前主节点,每个节点都可能被随机选为主节点。

"Replicas"指id为2,0,1的三个节点参与了复制,而不关心节点是否可用。

"Isr"是"in-sync"的意思,指可用的节点id列表。

发送消息:

bin/kafka-console-producer.sh --broker-list localhost:9092 --topic my-replicated-topic
my test message 1
my test message 2

消费消息:

bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --from-beginning --topic my-replicated-topic

 

容灾测试

通过describe命令,得知当前的主节点id是2(Leader:2),杀掉此节点:

ps aux|grep server-2.properties
kill -9 xxx

查看集群状态:

bin/kafka-topics.sh --describe --zookeeper localhost:2181 --topic my-replicated-topic

Topic:my-replicated-topic    PartitionCount:1    ReplicationFactor:3    Configs:
Topic: my-replicated-topic    Partition: 0    Leader: 2    Replicas: 2,0,1    Isr: 1,2

可以看到当前的主节点变成了2(leader:2),Isr可用节点为1,2

 消费消息:

bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --from-beginning --topic my-replicated-topic

 

标签: Kafka 集群
共有 人打赏支持
粉丝 6
博文 11
码字总数 8927
×
仝玉甫
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: