文档章节

Kafka简单集群

仝玉甫
 仝玉甫
发布于 2017/07/25 17:42
字数 407
阅读 15
收藏 0
点赞 0
评论 0

搭建有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

 

© 著作权归作者所有

共有 人打赏支持
仝玉甫
粉丝 6
博文 15
码字总数 11114
作品 0
浦东
程序员
Linux系统Kafka集群搭建与简单测试

Kafka安装 Zookeeper集群搭建,可参考Linux系统Zookeeper集群配置 上传kafka安装包并解压 编辑配置文件 这个是server.properties文件内容 增加集群的配置文件server1.properties 修改配置 增...

Listen_ing
2016/06/02
603
0
kafka 系统测试框架--kafka-monitor

在2016年4月份举行的Kafka峰会上,LinkedIn在Apache 2.0许可协议下开源了Kafka Monitor,并于近日详细介绍了该监控工具的架构以及他们最初的构建动机。在年初的时候,LinkedIn曾在一篇有关K...

匿名
2016/06/16
2.1K
0
LinkedIn 详细介绍了他们开源的 Kafka Monitor

在2016年4月份举行的Kafka峰会上,LinkedIn在Apache 2.0许可协议下开源了Kafka Monitor,并于近日详细介绍了该监控工具的架构以及他们最初的构建动机。在年初的时候,LinkedIn曾在一篇有关K...

oschina
2016/06/16
4.7K
7
基于Docker搭建分布式消息队列Kafka

本文基于Docker搭建一套单节点的Kafka消息队列,Kafka依赖Zookeeper为其管理集群信息,虽然本例不涉及集群,但是该有的组件都还是会有,典型的kafka分布式架构如下图所示。本例搭建的示例包含...

半夜菊花茶
2017/11/23
0
0
Kafka+Storm+HDFS整合实践

在基于Hadoop平台的很多应用场景中,我们需要对数据进行离线和实时分析,离线分析可以很容易地借助于Hive来实现统计分析,但是对于实时的需求Hive就不合适了。实时应用场景可以使用Storm,它...

HI曲奇饼干
2016/06/04
90
1
Kafka集群部署与示例

1 Kafka Cluster的部署   由于Kafka 集群需要依赖ZooKeeper集群,所以这里我们需要事先搭建好ZK集群(可与kafka集群分离),我这里kafka和zk并没有安在同一机器上,而是直接使用的hadoop集...

aibati2008
2016/10/14
41
0
Kafka1.1.0集群的简单使用(java)

Kafka本地集群搭建完成,简单入门Kafka集群的shell操作后,开始Java代码实现简单功能。 kafka版本说明:此处使用最新版本(现在)—1.1.0版本 1.1.0 is the latest release. The current sta...

tian330726
04/19
0
0
LinkedIn开源Kafka Monitor

一个关于Kafka的监控测试框架 原文请查阅链接。 Apache Kafka 已经成为了一个面向大规模流数据的,标准的消息系统。在Linkedin这样的公司,它被用作各类数据管道的主力,支持一系列关键服务。...

RiboseYim
2016/08/15
281
0
简单搭建 Apache Kafka 分布式消息系统

早先都是用的基于 JMS 规范的消息系统, 像 ActiveMQ, IBM MQSeries 等. 随着互联网的发展, 大约是要适应当今大数据, 高可用性, 高效的需求, 于是诞生了 Apache Kafka 这一新时代的分布式消息...

YanbinQ
2016/10/18
20
0
RabbitMQ和Kafka

起因 最近公司RabbitMQ的集群出了点问题,然后有些亲就说RabbitMQ慢且不好用,是一个瓶颈,不如换成Kafka。而我本人,使用RabbitMQ有一点久了,认为这个事情应当辩证的去看。所以就在没事的时...

通九互联科技
2015/09/06
4.4K
8

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Call to undefined function Workerman\posix_getpid

workerman 在centos下报PHP Fatal error: Call to undefined function Workerman\posix_getpid posix在下面这个包中php-process...

dragon_tech
8分钟前
0
0
mysql 7.4 创建表 时  所建表 字段太多 导致失败

报错:[Err] 1118 - Row size too large (> 8126). Changing some columns to TEXT or BLOB may help. In current row format, BLOB prefix of 0 bytes is stored inline. 解决方法:把表的引......

qimh
10分钟前
0
0
语法补漏

1.if...elif...else... 代码示例: test=10 if test>9: print(1) elif test>8: print(2) elif test>7: print(3) else: print('nothing') 输出代码: 1...

十年磨一剑3344
10分钟前
0
0
Python -re模块及正则表达式解析

传送门: https://blog.csdn.net/pipisorry/article/details/25909899 ps:上面文章中"命名分组"的语法格式不能执行。正确的如下: (?P<name>正则表达式) #name是一个合法的标识符 除了使用别名...

一口今心
18分钟前
0
0
mybatis中session.getMapper方法源码分析

0开始代码AuthorMapper mapper = session.getMapper(AuthorMapper.class); 1 DefaultSqlSession类 @Override public <T> T getMapper(Class<T> type) { //最后会去调用MapperRegistry.getMap......

writeademo
26分钟前
1
0
spring cloud zuul网关的作用

zuul一般有两大作用,1是类似于Nginx的网址重定向,但zuul的重定向的一般是整个spring cloud里在Eureka注册中心的模块. zuul: ignored-services: '*' sensitiveHeaders: routes: ...

算法之名
26分钟前
9
0
java按比例之原图生成缩略图

package com.wxp.test; import java.awt.Image; import java.awt.image.BufferedImage; import java.io.File; import java.io.FileOutputStream; import javax.imageio.ImageIO; import sun.......

恋码之子
36分钟前
1
0
SpringCloud 微服务 (十五) 服务容错 Hystrix

壹 工作中的微服务架构,某个服务通常会被多个服务调用或者多层调用完成需求,如果某个服务不可用,导致一个系统功能不可用或者服务直接没用了的情况,这种情况称为雪崩效应 有A服务调用B服务,B服...

___大侠
38分钟前
1
0
Spring框架中的设计模式(五)

Spring框架中的设计模式(五) 通过以前的4篇文章,我们看到Spring采用了大量的关于创建和结构方面的设计模式。本文将描述属于行为方面的两种设计模式:命令和访问者。 前传: Spring框架中的...

瑞查德-Jack
41分钟前
1
0
解决phpstorm运行很卡问题!

phpStorm一旦达到这个临界值,所有智能提示、自动补全都失效了 这TM就很尴尬了,顿时感觉自己就是个废人了,纯手写代码跟便秘一样 众所周知phpStorm基于JAVA,那么这个内存限制肯定跟JAVA的虚...

sjcehui2010
44分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部