- 文档首页
云搜索服务
最佳实践
数据集成
通过 Logstash 读取消息队列 Kafka 版数据写入云搜索服务
数据集成
通过 Logstash 读取消息队列 Kafka 版数据写入云搜索服务
通过 Logstash 读取消息队列 Kafka 版数据写入云搜索服务
本文介绍如何通过 Logstash 管道,实现读取消息队列 Kafka 版 Topic 中的消息数据,并写入到云搜索服务索引中。
消息队列 Kafka 版是一款基于 Apache Kafka 构建的分布式消息中间件服务。具备高吞吐、高可扩展性等特性,提供流式数据的发布/订阅和多副本存储机制,广泛应用于日志压缩收集、流式数据处理、消息解耦、流量削峰去谷等应用场景。您可以使用 Logstash Kafka 连接器连接消息队列 Kafka 版,通过 Logstash 管道将消息队列 Kafka 版 Topic 中的消息数据消费到下游的大数据组件或者数据仓库。
- 准备数据源消息队列 Kafka 版 Topic。
- 您需要在消息队列 Kafka 版控制台创建一个实例,然后创建一个 Topic。
- 还需要获取实例的访问地址和 Topic 名称,以便在 Logstash 管道中填入信息实现与消息队列 Kafka 版的连通。
- 您需要在云搜索服务控制台创建实例并获取实例的访问地址。
- 当您准备好数据源和数据目的后,便可以在云搜索服务控制台创建 Logstash 管道。
为保证网络访问安全,本文所使用的云产品服务均使用内网访问方式,因此要求消息队列 Kafka 版实例与云搜索服务实例均处于相同地域的同一个 VPC 内。
步骤一:准备消息队列 Kafka 版 Topic
通过 Logstash 管道消费消息队列 Kafka 版消息前,首先需要先为消息队列 Kafka 版完成如下准备工作:
说明
- 实例 ID:在读取消息队列 Kafka 版 Topic 中的消息数据时,作为 Kafka SASL 用户名。
- Topic 名称:在生产消息的 Logstash 管道中,用于指定消息写入的目标主题。
通过 Logstash 管道消费消息队列 Kafka 版消息前,需要准备一个数据写入的目的源,本文使用的是云搜索服务索引。请按照以下步骤创建实例,并获取实例的访问地址。
- 根据消息队列 Kafka 版的数据格式,确定索引 Schema,并在 Dev Tools 中创建索引。具体操作,请参见 Dev Tools。示例语句如下。
- 创建 Logstash 管道,引用 Input-kafka 和 Output-elasticsearch/opensearch 模板,并根据实际情况修改模板中的内容。具体操作,请参见创建管道。配置示例如下。
- 保存并部署管道,等待 Logstash 实例状态再次变成运行中时,在日志中查看管道是否正常运行。具体操作,请参见查询日志。
在 Dev Tools 中查询执行索引的数据验证写入结果。具体操作,请参见 Dev Tools。示例命令如下。 示例输出如下。
最近更新时间:2026.07.31 15:55:02