CDH第七篇:CDH 集成 Kafka 实战:CSD + Parcel 组合拳,先装 ZooKeeper 是铁律

目录

一、为什么 Kafka 要"外挂"进 CDH

二、集成前必懂:CSD 与 Parcel 的分工

三、4 步完成 Kafka 集成

四、小内存救命调参:Broker 堆改 256M

五、功能验证:建 Topic 收发消息

六、结语与系列预告

一、为什么 Kafka 要"外挂"进 CDH

在物联网架构案例里,海量设备上报数据先打进消息队列削峰,再落存储、进计算。Kafka 是这一层的标准选择。

但 CDH 5.9 的官方组件清单里没有 Kafka------Cloudera 把它作为扩展服务提供,需要管理员手工把两样东西"教给"CM:

CSD 描述文件(KAFKA-1.2.0.jar):告诉 CM Kafka 是什么服务、怎么启动、有哪些配置项

Kafka Parcel:Kafka 本体的二进制分发包

理解了这个分工,四步操作就不是死记硬背了。

二、集成前必懂:CSD 与 Parcel 的分工

组件 文件 放置位置 作用

CSD KAFKA-1.2.0.jar /opt/cloudera/csd/ 服务定义(元信息)

Parcel KAFKA-2.0.2-1.2.0.2.p0.5-el7.parcel + .sha1 /opt/cloudera/parcel-repo/ 程序本体

**只有 CSD 没有 Parcel,服务能"看见"但装不上;只有 Parcel 没有 CSD,文件躺在仓库里 CM 根本不认识。**两者齐备,再重启 CM Server 让它重新扫描。

三、4 步完成 Kafka 集成

步骤 1:放置 CSD 文件(仅 master)

bash

mv KAFKA-1.2.0.jar /opt/cloudera/csd/

chown cloudera-scm:cloudera-scm /opt/cloudera/csd/KAFKA-1.2.0.jar

步骤 2:放置 Kafka Parcel 并改名(仅 master)

bash

mv KAFKA-2.0.2-1.2.0.2.p0.5-el7.parcel /opt/cloudera/parcel-repo/

mv KAFKA-2.0.2-1.2.0.2.p0.5-el7.parcel.sha1 /opt/cloudera/parcel-repo/

老规矩:sha1 必须改名

mv /opt/cloudera/parcel-repo/KAFKA-2.0.2-1.2.0.2.p0.5-el7.parcel.sha1

/opt/cloudera/parcel-repo/KAFKA-2.0.2-1.2.0.2.p0.5-el7.parcel.sha

重启 CM Server 使 CSD + Parcel 生效:

bash

/opt/cm/etc/init.d/cloudera-scm-server restart

步骤 3:Web 端分发激活 Parcel

CM 控制台 → 主机 → Parcel 页面:

找到 KAFKA-2.0.2 条目

依次点击 下载 → 分配 → 激活

激活完成后,Kafka 的程序包已经落到了全部三个节点。

步骤 4:添加 Kafka 服务

先决条件:ZooKeeper 服务必须已存在。 如果第 6 篇没勾选 ZooKeeper,先通过"添加服务"装上。

Kafka 依赖 ZooKeeper 做 Broker 注册、控制器选举和集群协调,没有它 Kafka 服务在向导里都过不去,这是铁律。

然后添加服务:

CM 首页 → 添加服务 → 选择 Kafka

Broker 角色分配到三个节点(cdhmaster、cdhslave01、cdhslave02)

配置页把 Replication Factor 改为 3(三副本,容忍一台 Broker 宕机)

启动服务

四、小内存救命调参:Broker 堆改 256M

小内存机器上 Kafka 启动失败的高发原因就是默认堆内存太大。如果启动报错或反复闪退:

进入 Kafka 服务 → 配置

搜索 Java Heap Size

把 Broker 的堆内存改为 256M

保存并重启服务

实验/教学集群 256M 完全够用;生产集群按吞吐量评估,一般 4~8G。

五、功能验证:建 Topic 收发消息

任一节点执行(Kafka 客户端命令由 Parcel 自动配好):

bash

创建测试主题:3 副本 3 分区

kafka-topics.sh --create --zookeeper cdhmaster:2181

--replication-factor 3 --partitions 3 --topic test

查看主题列表

kafka-topics.sh --list --zookeeper cdhmaster:2181

输出:test

开一个控制台生产者,输入几条消息

kafka-console-producer.sh --broker-list cdhmaster:9092 --topic test

另开终端开消费者,能收到刚才的消息即全链路通

kafka-console-consumer.sh --bootstrap-server cdhmaster:9092 --topic test --from-beginning

控制台也能看到 Kafka 服务状态绿灯、三个 Broker 实例健康。

六、结语与系列预告

至此,物联网架构的数据平台全部就位:HDFS 存储、YARN 调度、Hive 数仓、Oozie 调度、Kafka 消息管道。

系列收官篇来了:把整个部署过程中踩过的坑浓缩成一张故障排查表------7180 打不开、Parcel 分发失败、Kafka 起不来......收藏那篇,部署不慌。

相关推荐
weixin_404380632 小时前
MQTT 上云验收:ESP32-S3 从局域网控灯到远程网页控制
物联网·mqtt·esp32
阿乔外贸日记3 小时前
外贸风控|美国市场7大类欺诈模式解析与风控框架
大数据·人工智能·物联网·microsoft·智能手机
rtu遥测终端机4 小时前
四信全力支撑首批136项重大应用场景落地验证
物联网
ClinicTech7 小时前
高校危化品存储的合规技术架构:双人双锁、动态台账与物联网管理
物联网
IT规划师8 小时前
MQTT实战 - MQTT高频面试题 + 我的8年实战答案(十一)
物联网·mqtt·面试·.net core·iot·mqttnet
honsor19 小时前
机柜式双网口 RS485 温湿度变送器接入 Zabbix 完整教程(含 Modbus 点位)
物联网·zabbix·tcp
注塑机数据采集联网21 小时前
注塑机生产管控MES系统应用
大数据·运维·服务器·人工智能·物联网
悟天特斯1 天前
楼宇自控的进阶:从「自动控制」到「自学习优化」
人工智能·物联网