腾讯云 Serverless 云函数实现 CKafka 数据转存到 ES - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
scf10cent
V2EX    推广

腾讯云 Serverless 云函数实现 CKafka 数据转存到 ES

  •  
  •   scf10cent 2020-09-07 11:00:06 +08:00 1677 次点击
    这是一个创建于 1907 天前的主题,其中的信息可能已经有所发展或是发生改变。

    原文首发于 Serverless 中文网


    背景介绍

    腾讯云 Serverless 云函数是下一代通用计算平台,提供安全稳定、高效易用的低成本无服务器运行环境。随着 Kafka 社区的繁荣,越来越多的用户开始使用 Kafka 来做日志收集、大数据分析、流式数据处理等。而公有云上的产品 Ckafka 也借助了开源社区的力量,做了很多优化:

    • 基于 ApacheKafka 的分布式、高可扩展、高吞吐
    • 100% 兼容 Apache KafkaAPI ( 0.9 及 0.10 )
    • 无需部署,直接使用 Kafka 所有功能
    • Ckafka 封装所有集群细节,无需用户运维
    • 支持动态升降实例配置,按照需求付费(开发中)
    • 对消息引擎优化,性能比社区最高提升 50%

    同时,在公有云上,云函数也和 CKafka 做了深度联动,并推出了很多非常实用的功能。

    运行原理

    如下图,云函数可以实时消费 Ckafka 中的消息,比如做数据转存、日志清洗、实时消费等。并且,像数据转存的功能已经集成到了 Ckafka 的控制台上,用户可以一键开启使用,大大降低了用户使用的复杂度。

    方案优势

    对比使用云主机自建 Ckafka Consumer 的方式,云函数帮用户屏蔽掉了很多不必要的开销:

    1. 云函数控制台上可以一键开启 Ckafka 触发器,帮助用户自动创建 Consumer,并由云函数平台来维护组建的高可用;
    2. Ckafka 触发器自身支持很多实用的配置:支持配置 offset 位置、支持配置 1~1 万消息聚合条数、支持配置 1~1 万次重试次数等;
    3. 基于云函数开发的业务逻辑,天然支持弹性伸缩,无需额外搭建和维护服务器集群等。

    常用场景

    如下图所示,借助云函数和 Ckafka 触发器,可以非常方便实现 CKafka 消息转存到 COS 、ES 、DB 等,那本次也会借助云函数来替代 Logstash,实现 Ckafka 消息罗盘 ES 。

    和使用 CVM 自建 Logstash 对比,云函数有以下优势:

    1. 云函数自带 Consumer 组件,可自行聚合;
    2. 云函数的模板函数已经实现了消息聚合和部分清洗能力,还可自行扩展;
    3. 云函数集群自带高可用和监控日志能力,业务上线速度更快;
    4. 云函数采用按实际使用收费,比自建集群费用更优,可以节省 50% 的费用。

    部署流程

    前置条件(以广州地域为例):

    • 开启 Elasticsearch 服务
    • 开启 Ckafka 服务

    1. 创建云函数

    登录云函数控制台,选择地域后,新建函数,选择运行环境 Python3.6,搜索「 Ckafka 」,选中模板函数后,下一步。

    在下一步中,点开高级设置:配置环境变量,如下:

    必填参数:ES_Address, ES_User, ES_Password, ES_Index_KeyWord

    可选填入:

    • ES_Log_IgnoreWord(需要删除的关键词,缺省则全量写入,如填 name, password
    • ES_Index_TimeFormat(按照天或者小时设置 Index,缺省则按照天建立索引,如填 hour

    在高级设置中,配置私有网络,需要选择和 ES 相同 VPC,完成函数创建。

    2. 创建 Ckafka 触发器

    在函数的 [触发管理] 页面,创建触发器,配置对应 Topic 的触发方式,提交后即可生效。

    3. 查看 ES 和函数运行日志

    查看函数运行日志

    查看函数运行日志

    查看 Kibana

    查看 Kibana

    扩展能力介绍

    如果想要实现高级日志清洗逻辑,可直接在函数代码中修改逻辑。

    针对函数的运行状态,可以自行配置监控告警,实时感知业务运行情况。

    目前尚无回复
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     905 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 24ms UTC 20:55 PVG 04:55 LAX 12:55 JFK 15:55
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86