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)


相关推荐

  • python社交网络分析_python编程:从入门到实践

    python社交网络分析_python编程:从入门到实践NLP之情感分析:基于python编程(jieba库)实现中文文本情感分析(得到的是情感评分)输出结果1、测试对象data1=’今天上海的天气真好!我的心情非常高兴!如果去旅游的话我会非常兴奋!和你一起去旅游我会更加幸福!’data2=’今天上海天气真差,非常讨厌下雨,把我冻坏了,心情太不高兴了,不高兴,我真的很生气!’data3=’美国华裔科学家,祖籍江苏扬州市高邮县,…

  • 股票布林线boll指标介绍及应用(图解)_布林线和什么指标配合效果好

    股票布林线boll指标介绍及应用(图解)_布林线和什么指标配合效果好一、定义:布林线指标,即BOLL指标,其英文全称是“BollingerBands”,布林线(BOLL)由约翰·布林先生创造,其利用统计原理,求出股价的标准差及其信赖区间,从而确定股价的波动

  • war包解压与压缩_ls命令linux

    war包解压与压缩_ls命令linux下面要给大家介绍到的就是和war包解压以及java项目打包成war包相关的内容,一起来具体的看看吧!1、javawar打包、解压命令在Window上war包的解压,经常会将工程打包成war包,如下://将当前目录打包成war包jarcvftemp.war*/.命令格式:javacvf打包文件名称要打包的目录打包文件保存路径解压自然就是:jarxvftemp.warjar和li…

  • 【LDC1314】电感传感器中文手册与检测原理介绍

    【LDC1314】电感传感器中文手册与检测原理介绍关键词:LDC1314,电感传感器,金属传感器,中文手册【声明:本博文参考TI官方手册翻译而成,旨在帮助大家快速了解这款芯片,如翻译有误欢迎评论指出,转载需注明来源!】以下是我对TI官方手册的人肉翻译,截取了其中的关键部分,有助于大家更好的撸底层驱动和排查硬件问题。相关博客:【LDC1314】金属传感器(电感传感器)的调试技巧首先,是引脚位的定义与说明:引脚 引脚类型…

  • QGIS 3.10 路径分析

    QGIS 3.10 路径分析网络数据集(networks)的创建、管理和可视化是GIS的重要组成部分。公路、铁路、管线等公用基础设施都可以建模为由线和节点组成的带有属性信息的网络数据。本教程将学习如何对路网进行建模,如何运用样式对路网属性可视化,同时通过QGIS3.10内置的路径分析工具找出两点之间的最短路径。任务概述通过华盛顿地区道路中心线图层,建立路网并查找城市中任意两点之间的最短路径。将会学到的其他技巧使用数据定义覆盖(datadefinedoverrides),根据线的方向对齐箭头符号。获取示范数据本教程

  • 微信小程序之事件(bindtap和catchtap)[通俗易懂]

    微信小程序之事件(bindtap和catchtap)[通俗易懂]微信小程序之事件(bindtap和catchtap)微信小程序的事件请参考:https://mp.weixin.qq.com/debug/wxadoc/dev/framework/view/wxml/event.html。在这里不必啰嗦。我们都知道bindtap和catchtap都是当用户点击该组件的时候会在该页面对应的Page中找到相应的事件处理函数。但是bind事件绑定不会阻止冒泡事件

发表回复

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

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