本文档以使用自建 Apache Kafka 触发器跨地域消费 CKafka 集群为例,指导您如何创建自建 Apache Kafka 触发器并完成函数的调用。
前提条件
已完成函数创建。
已完成 Kafka 集群及 Topic 的创建。
操作步骤
步骤1:创建 Apache Kafka 触发器
1. 登录 Serverless 控制台,单击左侧导航栏的函数服务。
2. 在主界面上方选择函数所在地域和命名空间,单击列表中的函数名称,进入函数详情页面。
3. 在左侧导航中选择触发管理,单击创建触发器。
4. 在创建触发器面板,选择 Apache Kafka 触发,并填写触发器相关信息。如下图所示:


配置项 | 操作 | 本文示例 |
触发版本/别名 | 默认值为 Default,也可以切换至函数已发布的别名或其他版本。 | Default |
触发方式 | Apache Kafka 触发。 | Apache Kafka 触发 |
触发器名称 | 填写自定义的触发器名称。 | scf-kafka-1728981649432 |
Bootstrap Servers | 所需访问 Kafka 实例的主机和端口地址,允许创建多个。 | 11.135.x.x:7661 |
Topic | 选择已创建的 Kafka 实例的 Topic。 | test1015 |
Consumer Group | 所需使用的消费组名称,若主题下已存在此消费组则使用此消费组继续消费,不存在时进行新建。 | 此处使用新建消费组,test1015 |
安全协议 | Kafka 实例所应用的安全协议。取值说明如下: PLAINTEXT SASL_SSL SASL_PLAINTEXT | SASL_PLAINTEXT |
身份验证机制 | 此 Kafka 实例所使用的身份验证机制。取值说明如下: 无 PLAIN SCRAM-SHA-256 SCRAM-SHA-512 | PLAIN |
用户名 | 身份验证机制中需通过用户名、密码信息验证时,需要配置 Apache Kafka 用户名用于身份验证。 | admin |
密码 | 身份验证机制中需通过用户名、密码信息验证时,需要配置 Apache Kafka 密码用于身份验证。 | ****** |
最大批量消息数 | 在拉取并批量投递给当前云函数时的最大消息数,目前支持最高配置为10000。结合消息大小、写入速度等因素影响,每次触发云函数并投递的消息数量不一定能达到最大值,而是处在1 - 最大消息数之间的一个变动值。 | 1 |
起始位置 | 选择消息的消费位点,当前支持从最新位置开始消费。 | 最新位置 |
重试次数 | 函数发生运行错误(含用户代码错误和 Runtime 错误)时的最大重试次数,最高支持配置10000。 | 1 |
最长等待时间 | 单次触发的最长等待时间。示例:用户配置了最大批量消息数为1000,最长等待时间为60秒。假设10秒后,云函数已经采集了1000条消息,则直接触发函数执行;假设过了60秒,云函数只采集到50条消息,也会触发函数执行。 | 1 |
触发器启用状态 | 创建触发器后是否立即启用。默认勾选启用触发器,即创建触发器后立即启用触发器。 | 启用触发器 |
5. 单击提交。
步骤2:检查触发器状态
触发器创建成功后,在触发管理页面,检查触发器状态。如下图所示:


系统会自动新建消费组并绑定好订阅关系。如下图所示:


步骤3:Kafka 消息消费及测试
1. 投递消息到 Kafka 中。如下图所示:


2. 在函数详情页面,选择日志查询页签,并查询函数执行记录,此时可看到已成功消费并触发函数运行。

