Logstash接入Ckafka触发云函数存储消息至COS

注:本文均采用腾讯云相关产品测试。

相关名词解释:

云服务器CVM:腾讯云提供的可扩展的计算服务,即云服务器。

Logstash:Logstash是一个开源数据收集引擎,具有实时管道功能。Logstash可以动态地将来自不同数据源的数据统一起来,并将数据标准化到你所选择的目的地。

消息队列Ckafka:基于开源 Apache Kafka 消息队列引擎,提供高吞吐性能、高可扩展性的消息队列服务。

无服务器云函数SCF:腾讯云为企业和开发者们提供的无服务器执行环境,帮助您在无需购买和管理服务器的情况下运行代码, 是实时文件处理和数据处理等场景下理想的计算平台。 您只需使用 SCF 平台支持的语言编写核心代码并设置代码运行的条件,即可在腾讯云基础设施上弹性、安全地运行代码。

COS对象存储:腾讯云提供的一种存储海量文件的分布式存储服务,用户可通过网络随时存储和查看数据。腾讯云 COS 使所有用户都能使用具备高扩展性、低成本、可靠和安全的数据存储服务。

私有网络VPC:一块在腾讯云上自定义的逻辑隔离网络空间,与在数据中心运行的传统网络相似,托管在腾讯云私有网络内的是在腾讯云上的服务资源,包括 云服务器负载均衡云数据库 等。

1.开始前准备:

一台腾讯云服务器、一个腾讯云Ckafka实例以及一个腾讯云COS存储桶(三者需要在同一地域下,且前两者需要在同一私有网络VPC下)。

2.安装logstash以及kafka客户端:

logstash下载地址:https://artifacts.elastic.co/downloads/logstash/logstash-7.5.0.tar.gz(腾讯云官网有描述兼容关系,笔者目前使用7.5版本暂未遇到问题)

兼容性说明

kafka下载地址:http://kafka.apache.org/downloads(腾讯云Ckafka目前兼容 Kafka 0.9 0.10版本,推荐0.10.2版本的安装包)

下载相关压缩包后解压

3.Ckafka实例配置及测试

创建实例基本信息如下:

实例基本信息

新建topic,如下:

新建topic

kafka客户端测试生产:./kafka-console-producer.sh --broker-list 172.27.0.42:9092 --topic logstash_ckafka_cos

kafka客户端生产

kafka客户端测试消费:./kafka-console-consumer.sh --bootstrap-server 172.27.0.42:9092 --from-beginning --topic logstash_ckafka_cos

kafka客户端消费

4.logstash客户端配置与测试

在logstash安装目录/config/新建配置文件,配置如下:

input {

stdin{}

}

output {

kafka {

bootstrap_servers => "172.27.0.42:9092"

topic_id => "logstash_ckafka_cos"

}

}

使用上述配置文件进行生产测试:

在logstash安装目录下bin目录下执行:./logstash -f ../config/output.conf


logstash客户端生产

kafka客户端进行消费

kafka安装目录下bin目录下执行:./kafka-console-consumer.sh --bootstrap-server 172.27.0.42:9092 --from-beginning --topic logstash_ckafka_cos

kafka客户端消费

5.无服务器云函数配置

新建模板函数(Ckafka消息投递到COS):https://console.cloud.tencent.com/scf/list?rid=16&ns=default

新建云函数

新建API密钥:https://console.cloud.tencent.com/cam/capi

新建API密钥

修改函数内配置项:

修改配置项

修改完成后保存(注:appid可在个人信息中查看,api密钥为上一步新建,地域选择对应地域即可,存储桶为准备步骤中新建)

添加触发方式:

添加触发方式

添加时选择对应Ckafka实例下的对应topic即可(Ckafka触发可能需要提交工单申请白名单)

6.测试

执行命令:./logstash -f ../config/output.conf后,等待logstash启动,启动后输入相关数据

logstash生产数据
Ckafka监控信息
云函数运行日志
存储桶文件
存储桶文件详情

参考文档:
1.Ckafka快速入门:https://cloud.tencent.com/document/product/597/30932

2.Logstash使用简介:https://blog.csdn.net/tanga842428/article/details/77045028

3.Logstash 接入 CKafka:https://cloud.tencent.com/document/product/597/11487

4.使用SCF自定义Ckafka投递COS:https://cloud.tencent.com/document/product/583/30722

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。