1.目标

今天,在这篇Kafka文章中,我们将看到Kafka Cluster Setup。这个Kafka集群教程为我们提供了一些设置Kafka集群的简单步骤。简而言之,为了实现Kafka服务的高可用性,我们需要在集群模式下设置Kafka。 因此,在此Kafka Cluster文档中,我们将学习Kafka多节点群集设置和Kafka多代理群集设置。此外,我们将看到Kafka Zookeeper群集设置。
那么,让我们开始Kafka群集设置。

设置Kafka集群的方法:Apache Kafka

你对卡夫卡了解多少

2. Kafka群集设置

为了获得更好的Kafka服务可靠性和高可用性,我们需要在集群模式下设置Kafka。一开始:

  • 从Apache的网站下载Kafka。另外,解压缩zip文件。
  • 此外,制作提取的文件夹的两个副本,然后将后缀_1,_2,_3添加到这些文件夹名称。因此,如果我们提取的文件夹名称为kafka_2.11-1.1.0,您将拥有文件夹kafka_2.11-1.1.0_1,kafka_2.11-1.1.0_2,kafka_2.11-1.1.0_3。
  • 转到kafka_2.11-1.1.0_1文件夹。

我们来讨论Apache Kafka Connect - 完整指南2018

3.设置Kafka群集的步骤

现在,按照几个步骤设置Kafka Cluster:

  1. 创建一个名为“logs”的文件夹。在此文件夹中,将存储所有Kafka日志。
  2. 然后,打开server.properties文件,进入config目录。在这里,我们将找到包含Kafka代理配置的文件。
  3. 此外,将broker.id设置为1.确保它是Kafka群集中代理的ID,因此对于每个代理,它必须是唯一的。
  4. 然后,取消注释侦听器的配置,并将其设置为PLAINTEXT:// localhost:9091。它说,对于连接请求,Kafka经纪人将监听端口9091。
  5. 此外,使用logs文件夹路径,设置我们在步骤1中创建的log.dirs配置。
  6. 另外,在zookeeper.connect配置中设置Apache Zookeeper地址。但是,如果Zookeeper在Kafka集群中运行,请确保将该地址作为逗号分隔列表,即:localhost:2181,localhost:2182。

基本上,这些是我们需要为开发环境设置的一些常规配置。
通过这种方式,我们的第一个Kafka代理配置就绪。现在,对于其他两个文件夹或代理,请按照相同的步骤进行以下更改。
让我们在Apache Kafka中修改Zookeeper的角色

  • 现在,将broker.id分别更改为2和3,分别在步骤3中。
  • 并且,还要在步骤4中分别更改用于9092和9093的端口。注意:可以提供任何可用的端口号。

因此,对于所有经纪人,我们的配置已准备就绪。现在,运行命令./bin/kafka-server-start.sh config / server.properties,转到每个Kafka文件夹的主目录。

  • 执行命令(全部作为一行):
  1. ./bin/kafka-topics.sh --create --zookeeper localhost:2181 --rerelication -factor
  2. 3 --partitions 50 --topic演示

这里每个分区的复制因子为3,创建了50个分区。在定义复制因子为3时,对于分区,将有一个领导者和两个粉丝。此外,在将消息或记录发送给领导者时,它将被复制到粉丝中。

  • 执行以下命令:
  1. ./bin/kafka-topics.sh --describe --topic Hello-Kafka --zookeeper localhost:2181

它有助于我们知道哪个代理是哪个分区的领导者或关注者。

  • 输出:

主题:demoPartitionCount:50ReplicationFactor:3Configs:
主题:demoPartition:0Leader:2Replicas:2,3,1Isr:2,3,1 
主题:demoPartition:1Leader:3Replicas:3,1,2Isr:3,1,2 
主题:demoPartition: 2Leader:1Replicas:1,2,3Isr:1,2,3 
主题:demoPartition:3Leader:2Replicas:2,1,3Isr:2,1,3 
主题:demoPartition:4Leader:3Replicas:3,2,1Isr:3, 2,1 
主题:demoPartition:5Leader:1Replicas:1,3,2Isr:1,3,2 
主题:demoPartition:6Leader:2Replicas:2,3,1Isr:2,3,1 
........................... ....................................... 
.................................................................. 
............................................. .....................
现在,我们可以看到Broker 2是领导者,分区0和Broker 3是分区1的领导者。而且,这里ISR指的是同步副本。
看看Apache Kafka术语和概念
所以,这完全是关于Kafka Cluster的。希望你喜欢我们的解释

4。结论

因此,在这个Kafka群集设置教程中,我们学习了三个代理的Kafka群集设置。此外,我们讨论了Kafka多节点设置和Kafka - Zookeeper设置。但是,如果对Kafka群集设置有任何疑问,请在评论标签中询问。
另请参阅 -  如何创建Kafka客户端以
供参考

设置Kafka集群的方法的更多相关文章

  1. kafka集群中jmx端口设置

    jmx端口主要用来监控kafka集群的. 在启动kafka的脚本kafka-server-start.sh中找到堆设置,添加export JMX_PORT="9999" if [ ...

  2. 另类--kafka集群中jmx端口设置

    # 监控kafka集群 # 有一个问题,需要在kafka-server-start.sh文件中配置端口,有如下三种办法 # 第一种:复制并修改kafka目录,比如kafka-1,kafka-2,kaf ...

  3. Kafka1 利用虚拟机搭建自己的Kafka集群

    前言:       上周末自己学习了一下Kafka,参考网上的文章,学习过程中还是比较顺利的,遇到的一些问题最终也都解决了,现在将学习的过程记录与此,供以后自己查阅,如果能帮助到其他人,自然是更好的. ...

  4. ELK+Kafka集群日志分析系统

    ELK+Kafka集群分析系统部署 因为是自己本地写好的word文档复制进来的.格式有些出入还望体谅.如有错误请回复.谢谢! 一. 系统介绍 2 二. 版本说明 3 三. 服务部署 3 1) JDK部 ...

  5. Kafka集群的安装和使用

    Kafka是一种高吞吐量的分布式发布订阅的消息队列系统,原本开发自LinkedIn,用作LinkedIn的活动流(ActivityStream)和运营数据处理管道(Pipeline)的基础.现在它已被 ...

  6. Kafka【第一篇】Kafka集群搭建

    Kafka初识 1.Kafka使用背景 在我们大量使用分布式数据库.分布式计算集群的时候,是否会遇到这样的一些问题: 我们想分析下用户行为(pageviews),以便我们设计出更好的广告位 我想对用户 ...

  7. 如何为Kafka集群选择合适的Partitions数量

    转载:http://blog.csdn.net/odailidong/article/details/52571901 这是许多kafka使用者经常会问到的一个问题.本文的目的是介绍与本问题相关的一些 ...

  8. kafka学习(三)-kafka集群搭建

    kafka集群搭建 下面简单的介绍一下kafka的集群搭建,单个kafka的安装更简单,下面以集群搭建为例子. 我们设置并部署有三个节点的 kafka 集合体,必须在每个节点上遵循下面的步骤来启动 k ...

  9. window环境搭建zookeeper,kafka集群

    为了演示集群的效果,这里准备一台虚拟机(window 7),在虚拟机中搭建了单IP多节点的zookeeper集群(多IP节点的也是同理的),并且在本机(win 7)和虚拟机中都安装了kafka. 前期 ...

随机推荐

  1. 利用GitHub+Node.js+Hexo搭建个人博客

    本篇是自己在搭建Hexo博客平台时的一个过程记录.(2019.9.13实测有效) GitHub 账号注册 因为此文所搭建的个人博客是基于GitHub平台服务的,所以首先是注册GitHub,当然已有账号 ...

  2. invoke和begininvoke 区别

    一直对invoke和begininvoke的使用和概念比较混乱,这两天看了些资料,对这两个的用法和原理有了些新的认识和理解. 首先说下,invoke和begininvoke的使用有两种情况: 1. c ...

  3. Greenplum常用的gp_toolkit & pg_catalog监控语句

    gp_toolkit 说明 Greenplum数据库提供了一个名为gp_tooikit的管理schema,该schema下有关于查询系统目录,日志文件, 用户创建(databases,schema,t ...

  4. 关于System.MissingMethodException异常

    什么是MissingMethodException 试图动态访问不存在的方法时引发的异常. 继承 Object Exception SystemException MemberAccessExcept ...

  5. [RN] React Native 实现 类似QQ 登陆页面

    [RN] React Native 实现 类似QQ 登陆页面 一.主页index.js 项目目录下index.js /** * @format */ import {AppRegistry} from ...

  6. Linux 系统管理——文件系统与LVM、磁盘配额实例

    1.为主机增加80G SCSI 接口硬盘 2.划分三个各20G的主分区 3.将三个主分区转换为物理卷(pvcreate),扫描系统中的物理卷 4.使用两个物理卷创建卷组,名字为myvg,查看卷组大小 ...

  7. 【luoguP2371】 [国家集训队]墨墨的等式

    题目链接 考虑将所有的\(a_1x_1+a_2x_2+--+a_nx_n=B\)对\(a_1\)取模,那么所有可达到的B就分为了\(0\)~\(a_1-1\)类 如果对\(a_1\)取模为\(k\)的 ...

  8. git下载指定分支到本地

    从网上查了很多方法有很多种,自我感觉下面这种更方便 git clone xxx.git --branch 分支名/dev/...

  9. mysql pi() 获取pi

    mysql> select pi(); +----------+ | pi() | +----------+ | 3.141593 | +----------+ row in set (0.00 ...

  10. 大量数据通过Phoenix插入到hbase报错记录(2)

    错误: Caused by: java.sql.SQLException: ERROR (INT10): Unable to find cached index metadata 解决办法: 在hba ...