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. 《vue》实现动态显示与隐藏底部导航方法!

    在日常项目中,总有几个页面是要用到底部导航的,总有那么些个页面,是不需要底部导航的,这里列举一下页面底部导航的显示与隐藏的两种方式: 其实很简单,我们在路由里面带上参数,这个参数就用来区分那个页面显示 ...

  2. LeetCode 1102. Path With Maximum Minimum Value

    原题链接在这里:https://leetcode.com/problems/path-with-maximum-minimum-value/ 题目: Given a matrix of integer ...

  3. 【BZOJ4237】 稻草人 CDQ分治+单调栈

    ## 题目描述 JOI村有一片荒地,上面竖着N个稻草人,村民们每年多次在稻草人们的周围举行祭典. 有一次,JOI村的村长听到了稻草人们的启示,计划在荒地中开垦一片田地.和启示中的一样,田地需要满足以下 ...

  4. 开源项目 02 HttpLib

    using JumpKick.HttpLib; using Newtonsoft.Json; using System; using System.Collections.Generic; using ...

  5. 用户价值和RFM模型

    什么是用户价值? 用户价值就是对公司来说有用的地方,比如有的公司看中用户的消费能力,有的公司则看中用户的忠诚度 .各公司的业务目的不同,用户价值的体现自然也不同.这里主要说一下适用于电商的RFM模型. ...

  6. 58、Spark Streaming: DStream的output操作以及foreachRDD详解

    一.output操作 1.output操作 DStream中的所有计算,都是由output操作触发的,比如print().如果没有任何output操作,那么,压根儿就不会执行定义的计算逻辑. 此外,即 ...

  7. javascript之随机密码[必包含大写,小写,数字]

    js取两个数字之间的随机数: parseInt(Math.random()*(上限-下限+1)+下限) 如:取1-10之间的随机数   parseInt(Math.random()*(10-1+1)+ ...

  8. 第12组 Alpha冲刺(6/6)

    Header 队名:To Be Done 组长博客 作业博客 团队项目进行情况 燃尽图(组内共享) 展示Git当日代码/文档签入记录(组内共享) 注: 由于GitHub的免费范围内对多人开发存在较多限 ...

  9. 使用docker 基于centos7制作mysql镜像

    说明:由于业务需要使用centos7.6+mysql5.7+jdk8以及其他的java程序,本想在网上找一个现成的,发现镜像都不适合我. 一.yum方式安装mysql 1.编写dockerfile文件 ...

  10. SSH框架整合1

    ======================web.xml======================= <?xml version="1.0" encoding=" ...