Kafka 集群搭建

Kafka 集群搭建Kafka集群搭建

大家好,又见面了,我是你们的朋友全栈君。

1、前提条件

        1、部署Kafka集群搭建需要服务器至少3台,奇数台

        2、Kafka的安装需要java环境,jdk1.8

        3、Kafka安装包版本:kafka_2.11-0.10.0.1.tar.gz

        4、假设3台服务器分别为:kafka1、kafka2、kafka3

2、Zookeeper集群搭建

        1、将安装包kafka_2.11-0.10.0.1.tar.gz上传到/opt 目录下

        2、解压:tar -zxvf kafka_2.11-0.10.0.1.tar.gz

        3、创建zookeeper目录:mkdir zk_kfk_data

        4、进入目录:cd /opt/kafka_2.11-0.10.0.1/

        5、修改zookeeper.properties文件

                命令:cd /opt/kafka_2.11-0.10.0.1/config

                三台机器上的zookeeper.properties文件配置相同,data.Dir 为zk的数据目录,server.1、server.2、server.3 为集群信息。

                2888端口号是zookeeper服务之间通信的端口

                3888端口是zookeeper与其他应用程序通信的端口。

                tickTime:CS通信心跳数

                Zookeeper 服务器之间或客户端与服务器之间维持心跳的时间间隔,也就是每个 tickTime 时间就会发送一个心跳。tickTime以毫秒为单位。

                    tickTime:该参数用来定义心跳的间隔时间,zookeeper的客户端和服务端之间也有和web开发里类似的session的概念,而zookeeper里最小的session过期时间就是tickTime的两倍。

                 initLimit:LF初始通信时限

集群中的follower服务器(F)与leader服务器(L)之间 初始连接 时能容忍的最多心跳数(tickTime的数量)

                syncLimit:LF同步通信时限

                集群中的follower服务器(F)与leader服务器(L)之间 请求和应答 之间能容忍的最多心跳数(tickTime的数量)

6、创建myid文件

        进入/opt/kafka_2.11-0.10.0.1/zk_kfk_data目录,创建myid文件,将三台服务器上的myid文件分别写入1,2,3。myid是zookeeper集群用来发现彼此的标识,必须创建,且不能相同。

7、​​​​​​​执行启动zookeeper命令:

 nohup /opt/kafka_2.11-0.10.0.1/bin/zookeeper-server-start.sh /opt/kafka_2.11-0.10.0.1/config/zookeeper.properties &>> /opt/kafka_2.11-0.10.0.1/zookeeper.log &

        三台机器都执行启动命令,查看zookeeper的日志文件,没有报错就说明zookeeper集群启动成功了。

8、Kafka集群搭建
        1、修改server.properties配置文件
                命令:cd /opt/kafka_2.11-0.10.0.1/config
        2、创建kafka日志数据目录:mkdir kafka-logs-1
                命令:cd /opt/kafka_2.11-0.10.0.1/

        3、参数说明:

                broker.id 0 #broker.id的值三个节点要配置不同的值,分别配置为0,1,2

advertised.host.name kafka1.sd.cn #在hosts文件配置kafka1域名,另外两台分别为:kafka2.sd.cn,kafka3.sd.cn

                advertised.port 9092 #默认端口,不需要改

                log.dirs /opt/kafka_2.11-0.10.0.1/kafka-logs-1 #Kafka日志数据目录

                num.partitions 40 #分区数,根据自行修改

                log.retention.hours #24 #日志保存时间

                zookeeper.connect  kafka1.sd.cn:3181,kafka2.sd.cn:3181,kafka3.sd.cn:3181 #zookeeper连接地址,多个以逗号隔开

9、启动kafka集群:
                nohup /opt/kafka_2.11-0.10.0.1/bin/kafka-server-start.sh /opt/kafka_2.11-0.10.0.1/config/server.properties &>> /opt/kafka_2.11-0.10.0.1/kafka.log &

10、测试Kafka集群
        1、创建topic:test
                /opt/kafka_2.11-0.10.0.1/bin/kafktopics.sh –create –zookeeper kafka1.sd.cn:3181,kafka2.sd.cn:3181,kafka3.sd.cn:3181 –replication-factor 1 –partitions 1 –topic test

        2、列出已创建的topic列表
                /opt/kafka_2.11-0.10.0.1/bin/kafka-topics.sh –list –zookeeper localhost:3181

        3、模拟客户端去发送消息
                /opt/kafka_2.11-0.10.0.1/bin/kafka-console-producer.sh –broker-list kafka1.sd.cn:9092,kafka2.sd.cn:9092,kafka3.sd.cn:9092 –topic test

        4、模拟客户端去接受消息
/opt/kafka_2.11-0.10.0.1/bin/kafka-console-consumer.sh –zookeeper kafka1.sd.cn:3181,kafka2.sd.cn:3181,kafka3.sd.cn:3181 –from-beginning –topic test

        ​​​​​

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/131046.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • CreateMutex() 、ReleaseMutex()

    CreateMutex() 、ReleaseMutex()功能:CreateMutex()用于有独占要求的程序(在其进程运行期间不允许其他使用此端口设备的程序运行,或不允许同名程序运行)。比如运行金山词霸时,一次只能运行一个实例,当运行第二个实例时,实际上是激活第一个实例,将其带到最顶层。原型:1HANDLECreateMutex(2LPSECURITY_ATTRIBUTESlpMutexAttribut…

  • 线性代数投影矩阵的定义_线性代数a和线性代数b

    线性代数投影矩阵的定义_线性代数a和线性代数bAbout投影矩阵  一个矩阵AAA既可以表示一种线性变换,又可以是一个子空间(由基张开的),还可以是一组坐标,甚是神奇。文章目录About投影矩阵一维空间的投影矩阵投影矩阵的多维推广投影的物理意义信号处理中的正交投影技术一维空间的投影矩阵  查看上图,ppp是bbb在aaa上的投影,可以发现,ppp和aaa是同向的,故可以表示为如下形式,其中xxx是标量p=axp=axp=ax  根据eee和ppp正交的条件,可以推导出x=aTbaTax=\frac{a^Tb}{a^Ta}x=aTaaT

  • 离散数学传递闭包_传递闭包一定等于自身的是

    离散数学传递闭包_传递闭包一定等于自身的是给定 n 个变量和 m 个不等式。其中 n 小于等于 26,变量分别用前 n 的大写英文字母表示。不等式之间具有传递性,即若 A>B 且 B>C,则 A>C。请从前往后遍历每对关系,每次遍历时判断:如果能够确定全部关系且无矛盾,则结束循环,输出确定的次序;如果发生矛盾,则结束循环,输出有矛盾;如果循环结束时没有发生上述两种情况,则输出无定解。输入格式输入包含多组测试数据。每组测试数据,第一行包含两个整数 n 和 m。接下来 m 行,每行包含一个不等式,不等式全部为小于关系

  • 完整测试流程详解

    完整测试流程详解一:需求分析(了解熟悉业务,分析需求测试点)1.确认功能(业务功能,辅助功能,数据约束,易用性需求,编辑约束,参数需求,权限需求,性能约束)2.场景分析(考虑场景调用者和系统内部各个场景之间联系)3.挖掘隐性需求(测试计划测试用例执行测试测试报告bug清单…

  • 推荐系统 算法(开源推荐系统算法)

    来源:https://blog.csdn.net/eouaq448466/article/details/54772890推荐算法具有非常多的应用场景和商业价值,因此对推荐算法值得好好研究。推荐算法种类很多,但是目前应用最广泛的应该是协同过滤类别的推荐算法,本文就对协同过滤类别的推荐算法做一个概括总结,后续也会对一些典型的协同过滤推荐算法做原理总结。1.推荐算法概述    推荐算法是…

  • kylin简单优化cube

    kylin简单优化cube

    2021年11月27日

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号