Skip to main content

一、Kafka 客户端通用配置

本章介绍 Kafka 客户端接入及验证所需的通用配置。本章示例命令中的占位符(如 、账号、密码、topic)请按实际环境替换。

为Kafka客户端创建SASL认证文件

可以根据包目录在 config/kafka_client_jaas.conf 文件中配置如下内容。以下例为以 visitor 账号访问为例,(若是程序访问,如springboot访问,可以不配置) KafkaClient { org.apache.kafka.common.security.plain.PlainLoginModule required username=“visitor” password=“qaz@123”; };

配置 consumer 和 producer

在config/consumer.properties和config/producer.properties里分别加上如下配置: security.protocol=SASL_PLAINTEXT sasl.mechanism=PLAIN

修改启动脚本

在安装目录下bin/kafka-console-producer.sh和bin/kafka-console-consumer.sh,在文件最上面添加变量

分别启动zookeeper和kafka

nohup /asop/kafka/kafka_2.11-2.1.0/bin/zookeeper-server-start.sh -daemon /asop/kafka/kafka_2.11-2.1.0/config/zookeeper.properties nohup /asop/kafka/kafka_2.11-2.1.0/bin/kafka-server-start.sh -daemon /asop/kafka/kafka_2.11-2.1.0/config/server.properties

查看接收数据

需要注意每一个消费者需要设置不同的组名或者是组id,不然队列消息只能被消费一次,用命令查询的—group参数后面接的组名g1不能一样 查看命令示例(请替换为实际路径): /asop/kafka/kafka_2.11-2.1.0/bin/kafka-console-consumer.sh —bootstrap-server :9092 —topic test —from-beginning —consumer-property security.protocol=SASL_PLAINTEXT —consumer-property sasl.mechanism=PLAIN —group g1 # topic 替换为事件订阅里配置的 topic 值

结果示例

{“subject”:“规则名称 :部门 -机柜”,“message”:“模型 :部门\n数据违规规则:\n查询路径1:部门 - (关联)业务系统-(关联)mysql实例-(属于)物理主机-(属于)物理裸设备-(属于)机柜\n查询路径2:部 门 -(属于)负责人-(包含)物理主机-(属于)物理裸设备-(属于)机柜\n对比的终点模型属性:机柜_机 柜名称\n同一起始实例,相同终点模型字段属性值不一致\n\n执行实例总数:661\n违规实例总数:81\n执行时间:2023-11-21 18:48:42”} 如果用脚本请求,不同的消费者就需要设置不同组id CMDB 推送 kafka 配置手册 操作截图 1

二、事件订阅推送kafka

1. 简要描述

CMDB向“事件订阅”中的kafka系统推送变更资产的数据。(kafka版本: 2.1.0)

2. 配置订阅规则

在 CMDB “事件订阅” 中配置,如图(示例):

3. 推送参数

注: 资产数据格式, 是资产按模型定义已经组建好的实际数据信息

4. 推送数据示例

{ “event”: “create”, “id”: “RxgLdIkPZaeD1629445803”, “log_id”: “64633add0d31b00caf623614”, “name”: “X86服务器1”, “model_id”: “X86ServerBasic”, “model_name”: “X86服务器”, “creator”: “Admin”, “create_date”: “2021-08-20 15:50:03”, “modifier”: “Admin”, “modify_date”: “2022-09-02 11:55:04”, “data”: { “系统内置ID”: “FRKh1t1629445803”, “配置项编号”: "", “服务器名称”: “X86服务器1”, “序列号”: "", “品牌型号”: "", “硬盘信息”: [ { “硬盘类型”: “固态”, “硬盘容量”: 10240, “硬盘名称”: “西部数据固态 ” }], “WWN号”: [], “存储空间”: "", “网卡信息”: [], “HBA卡信息”: [], “内存信息”: [ { “容量”: 32, “频率”: 3200, “内存名称”: “金士顿 ” }], “CPU信息”: [ { “CPU名称”: “CPU1”, “核数”: 16, “主频”: 204800, “CPU型号”: “123” }], “起始U位”: 1, “结束U位”: 4, “分组”: [], “是否监控”: false, “IP地址”: “192.168.2.100”, “所属业务”: [], “占用U数”: 4 }}

三、合规违规通知推送

1. 简要描述

CMDB向kafka系统推送合规性检查发生违规的通知数据。(kafka版本: 2.1.0)

2. 配置合规规则

在 CMDB 系统的 “资产消费” >> “合规性检查” 的规则中配置,如图(示例): CMDB 推送 kafka 配置手册 操作截图 2

3. 推送参数

4. 推送数据示例

{ “subject”: “规则名称 :部门 -机柜”, “message”: “模型 :部门\n数据违规规则:\n查询路径1:部门-(关联)业务系统-(关联)mysql实 例 -(属于)物理主机-(属于)物理裸设备-(属于)机柜\n查询路径2:部门-(属于)负责人-(包含)物理主 机 -(属于)物理裸设备-(属于)机柜\n对比的终点模型属性:机柜_机柜名称\n同一起始实例,相同终点 模型字段属性值不一致\n\n执行实例总数:661\n违规实例总数:81\n执行时间:2023-11-21 18:48:42” }