基于大数据教程的环境:

192.168.101.11 centos7-01
192.168.101.12 centos7-02
192.168.101.13 centos7-03

搭建Kafka环境需要Zookeeper的前提:

https://www.cnblogs.com/mindzone/p/15468883.html

下载Kafka包

01 机器下载:
wget https://archive.apache.org/dist/kafka/2.1.1/kafka_2.11-2.1.1.tgz

解包到指定任意目录

tar -zxvf kafka_2.11-2.1.1.tgz -C /opt/module/

创建指定的kafka输出目录

# 创建日志目录(路径自定义)
mkdir -p /opt/module/kafka_2.11-2.1.1/logs

更改Kafka配置信息:

vim /opt/module/kafka_2.11-2.1.1/config/server.properties

参数项:

标黄的参数是需要更改的,其他参数基本是默认项,在源文件中就设定好了

#broker 的全局唯一编号,不能重复
broker.id=0
# 允许用户可以删除主题
delete.topic.enable=true

#处理网络请求的线程数量
num.network.threads=3
#用来处理磁盘 IO 的现成数量
num.io.threads=8
#发送套接字的缓冲区大小
socket.send.buffer.bytes=102400
#接收套接字的缓冲区大小
socket.receive.buffer.bytes=102400
#请求套接字的缓冲区大小
socket.request.max.bytes=104857600
# kafka 运行日志存放的路径
log.dirs
logs=/opt/module/kafka_2.11-2.1.1/logs
#topic 在当前 broker 上的分区个数
num.partitions=1
#用来恢复和清理 data 下数据的线程数量
num.recovery.threads.per.data.dir=1
#segment 文件保留的最长时间,超时将被删除
log.retention.hours=168
# 配置连接 Zookeeper 集群地址
zookeeper.connect

追加环境变量:

vim /etc/profile.d/my_env.sh

写profile里面也是可以的,这里是单独区分了文件写的

#KAFKA_HOME
export KAFKA_HOME=/opt/module/kafka_2.11-2.1.1
export PATH=$PATH:$KAFKA_HOME/bin

立即生效

source /etc/profile

将环境变量配置文件和kafka目录分发到其他机器上

xsync /etc/profile.d/my_env.sh
xsync /opt/module/kafka_2.11-2.1.1 # 无xsync脚本则用scp拷贝
scp /etc/profile.d/my_env.sh root@centos7-03:/etc/profile.d/
scp /etc/profile.d/my_env.sh root@centos7-04:/etc/profile.d/ scp /opt/module/kafka_2.11-2.1.1 root@centos7-03:/opt/module
scp /opt/module/kafka_2.11-2.1.1 root@centos7-04:/opt/module

然后更改其他机器上的kafka服务ID

#broker 的全局唯一编号,不能重复
broker.id=0

1号机默认0,2号机就改成1,3号机就改成2,总而言之服务的ID不能冲突

vim /opt/module/kafka_2.11-2.1.1/config/server.properties

集群启动Kafka

# 1 2 3 分别执行
$KAFKA_HOME/bin/kafka-server-start.sh -daemon $KAFKA_HOME/config/server.properties

集群关闭Kafka

# 1 2 3 分别执行
$KAFKA_HOME/bin/kafka-server-stop.sh stop

检查Kafka是否正常运行,JPS命令

[root@centos7-04 ~]# jps
11128 Kafka
1861 HRegionServer
1526 NodeManager
1705 SecondaryNameNode
1774 QuorumPeerMain
11342 Jps

若只是部署单例只需要更改ZK的客户端即可,也不用管服务ID

# 配置连接 Zookeeper 集群地址,单例则写一个即可
zookeeper.connect

【Kafka】02 原生集群部署的更多相关文章

  1. ELK5.2+kafka+zookeeper+filebeat集群部署

    架构图 考虑到日志系统的可扩展性以及目前的资源(部分功能复用),整个ELK架构如下: 架构解读 : (整个架构从左到右,总共分为5层) 第一层.数据采集层 最左边的是业务服务器集群,上面安装了file ...

  2. kafka简介及集群部署

    消息队列概念:(Message queue): “消息”是在两台计算机间传送的数据单位.消息可以非常简单,例如只包含文本字符串:也可以更复杂,可能包含嵌入对象. “消息队列”是在消息的传输过程中保存消 ...

  3. Apache Kafka 集群部署指南

    公众号关注 「开源Linux」 回复「学习」,有我为您特别筛选的学习资料~ Kafka基础 消息系统的作用 应该大部分小伙伴都清楚,用机油装箱举个例子. 所以消息系统就是如上图我们所说的仓库,能在中间 ...

  4. 分布式消息系统之Kafka集群部署

    一.kafka简介 kafka是基于发布/订阅模式的一个分布式消息队列系统,用java语言研发,是ASF旗下的一个开源项目:类似的消息队列服务还有rabbitmq.activemq.zeromq:ka ...

  5. Kafka集群部署

    一. 关于kafka Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据. 这种动作(网页浏览,搜索和其他用户的行动)是在现代网络上的许多社会功能的一个关键 ...

  6. kafka 集群部署 多机多broker模式

    kafka 集群部署 多机多broker模式 环境IP : 172.16.1.35   zookeeper   kafka 172.16.1.36   zookeeper   kafka 172.16 ...

  7. 消息中间件kafka+zookeeper集群部署、测试与应用

    业务系统中,通常会遇到这些场景:A系统向B系统主动推送一个处理请求:A系统向B系统发送一个业务处理请求,因为某些原因(断电.宕机..),B业务系统挂机了,A系统发起的请求处理失败:前端应用并发量过大, ...

  8. Zookeeper+Kafka集群部署(转)

    Zookeeper+Kafka集群部署 主机规划: 10.200.3.85  Kafka+ZooKeeper 10.200.3.86  Kafka+ZooKeeper 10.200.3.87  Kaf ...

  9. 3、Kafka集群部署

    Kafka集群部署 1)解压安装包 [ip101]$ tar -zxvf kafka_2.11-0.11.0.0.tgz -C /opt/app/ 2)修改解压后的文件名称 [ip101]$ mv k ...

  10. Zookeeper+Kafka集群部署

    Zookeeper+Kafka集群部署 主机规划: 10.200.3.85  Kafka+ZooKeeper 10.200.3.86  Kafka+ZooKeeper 10.200.3.87  Kaf ...

随机推荐

  1. swap文件修复

    修复swap文件 vim -r /aaaa.swap

  2. vue3 Suspense

    在Vue.js 3中,Suspense 是一个用于处理异步组件的特殊组件,它允许你在等待异步组件加载时展示备用内容.这对于优化用户体验.处理懒加载组件或异步数据获取时非常有用.Suspense 的主要 ...

  3. react 高阶函数

    HOC(Higher Order Components)就是一个函数,传给它一个组件,它返回一个新的组件. 高阶组件:就相当于手机壳,通过包装组件,增强组件功能. 实现步骤: 首先创建一个函数 指定函 ...

  4. 用C++ Qt实现类似Photoshop的钢笔工具

    因为工作上的需求,需要实现一个类似Photoshop里面的钢笔工具, 分析一下它的功能,包括: 1. 有两种点:节点和控制点,节点是构成图形的基本端点,控制点是影响贝塞尔曲线的系数. 2. 创建节点: ...

  5. kvm链接克隆虚拟机迁移到openstack机器的实验

    总结 如果是完整克隆的那种虚拟机,是可以直接在openstack使用的,如果镜像格式没问题的话. 因为kvm虚拟机大部分都是链接克隆出来的镜像,不可用直接复制使用,所以需要创建新的镜像文件 创建空盘: ...

  6. YUM退役了?DNF本地源配置

    客户遇到在OEL8安装Oracle缺包问题,使用dnf安装也没有,甚至连oracle-database-preinstall-21c都装不上.本质是DNF配置问题. 早期为了解决这类问题,专门写过很多 ...

  7. C# 13(.Net 9) 中的新特性 - 扩展类型

    C# 13 即 .Net 9 按照计划会在2024年11月发布,目前一些新特性已经定型,今天让我们来预览一个比较大型比较重要的新特性: 扩展类型 Extension types 在5月份的微软 Bui ...

  8. python正则表达式替换所有内容并同时保留找到的内容

    除了一些专业的工具,例如ue,大部分编程语言的函数包都挺让人迷惑的,例如Java,js. 因为的确有许多功能是很常用的,但是他们又不提供,非得要程序员自己去实现,或者是利用三方的包. 到底是什么理由了 ...

  9. 如何从零开始集成DTM Android SDK

    什么是动态标签管理? 动态标签管理(Dynamic Tag Manager,简称"DTM"),可让开发者快速配置更新测量代码及相关代码片段,可以基于Web界面轻松地进行分析.测量代 ...

  10. PyTorch程序练习(一):PyTorch实现CIFAR-10多分类

    一.准备数据 代码 import torchvision import torchvision.transforms as transforms from torch.utils.data impor ...