检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
基于Serverless版事件流实现Kafka实例之间的数据同步 本文介绍如何应用事件网格EventGrid的Serverless版事件流功能实现分布式消息服务Kafka版实例间的数据同步。 当前事件网格服务仅支持华北-北京四、华北-乌兰察布一、华东-上海一、华东-上海二、华南-广州、亚太-新加坡、拉美-墨西哥城二。
基于EventGrid事件订阅和Function实现OBS桶数据同步 方案概述 操作流程 实施步骤
在事件追踪中查看事件投递信息 在函数服务的监控中查看代码执行详情 在OBS目标桶查看对象是否已完成同步 父主题: 基于EventGrid事件订阅和Function实现OBS桶数据同步
华为云服务事件发送流程 本章节介绍华为云服务事件发送的整个流程。 华为云对象存储服务(Object Storage Service,简称OBS)作为云服务事件源将产生的云服务事件发送到事件网格,事件规则对云服务事件进行过滤和转换,通过转换后的事件触发事件目标(即函数工作流服务中的函数)。
方案概述 本文介绍如何通过事件网格服务的事件订阅和函数服务实现OBS桶的数据同步。 方案架构 本实践事件订阅架构图如下所示: 图1 事件订阅架构图 当前事件网格服务仅支持华北-北京四、华北-乌兰察布一、华东-上海一、华东-上海二、华南-广州、亚太-新加坡、拉美-墨西哥城二。 父主题:
“作业管理”,可以查看“同步进展详情”。 图6 Rocketmq事件流同步进展详情 表4 参数说明 参数名称 说明 Topic名称 创建RocketMQ实例时的Topic。 队列数 创建Topic时设置的队列个数。 待同步数 当前Topic队列数中未同步的消息数量。 父主题: 创建专享版事件流作业
发送OBS事件 目前支持的事件类型。 图1 支持类型 事件类型中描述的事件(如上传、覆盖),在OBS中触发后,根据事件订阅中事件类型的选择,可对该事件进行路由传递。例如在桶名为test_zzy的OBS源桶中上传“test930.png”文件,目录为“success”。 图2 OBS桶列表
以查看“同步进展详情”。 图6 Kafka事件流同步进展详情 表4 参数说明 参数名称 说明 Topic名称 创建Kafka实例时的Topic。 分区数 创建Topic时设置的分区数,分区数越大消费的并发度越大。 待同步数 当前Topic分区数中未同步的消息数量。 同步速率:当前
创建OBS源桶和目标桶 登录OBS控制台。 单击“创建桶”,进入“创建桶”页面。 设置桶参数。关于桶参数的详细介绍,请参考创建桶。 表1 桶参数配置 参数 说明 区域 事件网格与所在区域保持一致。 桶名称 输入示例如“eg-test”。 默认存储类别 按需选择。 桶策略 按需选择。
在OBS目标桶查看对象是否已完成同步 该数据同步功能默认同步后路径一致,在目标桶桶目录下查看文件是否同步成功: 图1 目标桶目录 父主题: 实施步骤
在函数服务的监控中查看代码执行详情 在“函数列表”中找到进行数据同步的函数: 图1 函数列表 单击监控中对应的请求查看代码日志: 图2 代码日志 父主题: 实施步骤
图3 目标端消息 图4 源端消息 单消息需保持大小在2M以下。 如消息一致,则Kafka实例间的数据同步成功。 父主题: 基于Serverless版事件流实现Kafka实例之间的数据同步
参数配置说明 参数 说明 选择提供方 请选择“华为云”。 事件目标 请选择“FunctionGraph(函数计算)”。 函数 选择创建的OBS数据同步的函数。 版本 按需选择。 执行方式 按需选择。 委托 选择委托。如无委托,可单击旁边的“创建委托”进行创建,将会创建名为“EG_TARGET_AGENCY”委托。
实践流程 创建事件订阅和事件路由流程如下图所示: 图1 流程图 父主题: 基于EventGrid事件订阅和Function实现OBS桶数据同步
上海二、华北-北京四、华南-广州、亚太-新加坡、拉美-墨西哥城二。 父主题: 基于Serverless版事件流实现Kafka实例之间的数据同步
云上云下、跨云厂商需用户侧拉专线。 相关监控指标 2023年9月30日上线。 父主题: 基于Serverless版事件流实现Kafka实例之间的数据同步
创建FG函数 本章节提供实现图片压缩功能的程序包,使用空白模板创建函数,样例代码请参见使用函数压缩图片。 创建函数(创建函数的时候,必须选择包含OBS访问权限的委托,否则不能使用OBS服务)。 登录函数工作流控制台,在左侧导航栏选择“函数 > 函数列表”,进入函数列表界面。 单击“创建函数”,进入创建函数流程。
的分布式消息Kafka版,无需定义事件网格。详情请参见事件流概述。 父主题: 基于Serverless版事件流实现Kafka实例之间的数据同步
在事件追踪中查看事件投递信息 在EG控制台界面,单击“事件通道”中对应的事件通道的“事件轨迹”可以看到该事件的投递详情和事件详情: 界面入口: 图1 界面入口 事件详情: 图2 事件详情 事件轨迹: 图3 事件轨迹 父主题: 实施步骤
创建专享版事件流作业 Kafka同步Kafka RocketMQ同步RocketMQ 父主题: 专享版事件流作业