Kafka 单节点多Kafka Broker集群
Kafka 单节点多Kafka Broker集群
接前一篇文章,今天搭建一下单节点多Kafka Broker集群环境。
配置与启动服务
由于是在一个节点上启动多个 Kafka Broker实例,所以我们需要使用不同的端口来实现。
$ cp config/server.properties config/server-1.properties
$ cp config/server.properties config/server-2.properties
修改 config/server-1.properties
broker.id=1
listeners=PLAINTEXT://:9093
log.dir=/tmp/kafka-logs-1
修改 config/server-2.properties
broker.id=2
listeners=PLAINTEXT://:9094
log.dir=/tmp/kafka-logs-2
在三个终端中分别使用不同的配置文件启动 kafka,如下:
# 终端一
$ 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的topic:
$ bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 3 --partitions 1 --topic mytopic
Created topic "mytopic".
创建后,使用 –describe 来查看一下
bin/kafka-topics.sh --describe --zookeeper localh2181 --topic mytopic
Topic:mytopic PartitionCount:1 ReplicationFactor:3 Configs:
Topic: mytopic Partition: 0 Leader: 2 Replicas: 2,1,0 Isr: 2,1,0
可以看出现在的Leader是 2 节点,复制节点是:2,1,0三个节点。
现在我们分别在两个终端上运行下面的命令来测试生产消息和消费消息。
# 终端 A 生产消息
$ bin/kafka-console-producer.sh --broker-list localhost:9092 --topic mytopic
aaa
bbb
ccc
# 终端 B 消费消息
$ bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --from-beginning --topic mytopic
aaa
bbb
ccc
目前为止一切工作正常,现在我们把其中的 Leader: 2 实例 kill 掉,然后再观察一下。
bin/kafka-topics.sh --describe --zookeeper localhost:2181 --topic mytopic
Topic:mytopic PartitionCount:1 ReplicationFactor:3 Configs:
Topic: mytopic Partition: 0 Leader: 1 Replicas: 2,1,0 Isr: 1,0
发现 Leader 变成了 1,复制节点变成了两个:1,0。
此时,继续在“终端 A”中生产消息,然后可以看到“终端 B”中会继续消费新的消息。这说明尽管原来负责写入的 Leader 已经挂掉,但是消息不会丢失,仍然可以继续被消费。
Kafka 单节点多Kafka Broker集群的更多相关文章
- windows单节点下安装es集群
linux下的es的tar包,拖到windows下,配置后,启动bin目录下的bat文件,也是可以正常运行的. 从linux下拷的tar包,需要修改虚拟机的内存elasticsearch.in.bat ...
- redhat6.5 redis单节点多实例3A集群搭建
在进行搭建redis3M 集群之前,首先要明白如何在单节点上完成redis的搭建. 单节点单实例搭建可以参看这个网:https://www.cnblogs.com/butterflies/p/9628 ...
- Apache Kafka学习 (二) - 多代理(broker)集群
1. 配置server.properties > cp config/server.properties config/server-1.properties> cp config/ser ...
- Hadoop单节点启动分布式伪集群
emm~ 写这篇博客只是手痒,因为开发环境用单节点就够了,生产环境肯定是真实集群,所以这个伪分布式纯属娱乐而已. 配置HDFS1. 安装好一台hadoop,可以参考这篇博客.2. 在hadoop目录下 ...
- 利用shell脚本[带注释的]部署单节点多实例es集群(docker版)
文章目录 目录结构 install_docker_es.sh elasticsearch.yml.template 没事写写shell[我自己都不信,如果不是因为工作需要,我才不要写shell],努力 ...
- 使用Kafka的一些简单介绍: 1集群 2原理 3 术语
目录 第一节 Kafka 集群 Kafka 集群搭建 Kafka 集群快速搭建 第二节 集群管理工具 集群管理工具 集群 Issues 第三节 使用命令操纵集群 第四节 Kafka 术语说明 第五节 ...
- Kafka 详解(二)------集群搭建
这里通过 VMware ,我们安装了三台虚拟机,用来搭建 kafka集群,虚拟机网络地址如下: hostname ipaddress ...
- ActiveMQ笔记(4):搭建Broker集群(cluster)
上一篇介绍了基于Networks of Borkers的2节点HA方案,这一篇继续来折腾Networks of Brokers,当应用规模日渐增长时,2节点的broker可能仍然抗不住访问压力,这时候 ...
- ActiveMQ: 搭建Broker集群(cluster)
上一篇介绍了基于Networks of Borkers的2节点HA方案,这一篇继续来折腾Networks of Brokers,当应用规模日渐增长时,2节点的broker可能仍然抗不住访问压力,这时候 ...
随机推荐
- IO多路复用客户端-服务器模型
IO多路复用服务器 -- 实现字符回射 服务器端 /************************************************************************* ...
- LeetCode (236):Lowest Common Ancestor of a Binary Search Tree
Given a binary search tree (BST), find the lowest common ancestor (LCA) of two given nodes in the BS ...
- Pycharm安装Python第三方库
转自:http://blog.csdn.net/qiannianguji01/article/details/50397046 除了使用easy_insatll和pip工具安装Python第三方库外还 ...
- linux下tar的使用方法
1.仅打包 tar -cvf hello.tar hello (输出文件大小为10240) 2.打包后压缩成gzip压缩格式 tar -czvf hello.tar.gz hello (输出文件大小为 ...
- 分析Ubuntu18.04启动后的各种任务
jello@jello:~$ ps -A PID TTY TIME CMD 1 ? 00:00:02 systemd 由idle进程(进程号为0的进程,那 ...
- Idea 切换git账号
重置一下账号设置,再次执行拉取或推送会提示重新输入账号密码 进入项目根目录执行:git config --system --unset credential.helper
- Task作为返回值以及Task<TResult>作为返回值
async await return Task https://stackoverflow.com/questions/25191512/async-await-return-task Can som ...
- C#设计模式之控制反转即依赖注入-Spring.NET
主流的依赖注入方案:微软企业库中的Unity.Spring.NET.StructureMap.Ninject.Castle Windsor等等. 本章用简单的案例讲解 Spring.NET IOC-控 ...
- 字典树应用 - poj1002
字典树应用 - poj 1002 Description Businesses like to have memorable telephone numbers. One way to make a ...
- Mysql事物的4种隔离级别
SQL标准定义了4种隔离级别,包括了一些具体规则,用来限定事务内外的哪些改变是可见的,哪些是不可见的. 低级别的隔离级一般支持更高的并发处理,并拥有更低的系统开销. 首先,我们使用 test 数据库, ...