作者:kahing
导语:云原生日志服务(Cloud Log Service,CLS)是腾讯云提供的一站式日志数据解决平台,提供了从日志采集、日志存储到日志检索,图表分析、监控告警、日志投递等多项服务,协助用户通过日志来解决业务运维、服务监控、日志审计等场景问题。
【用户说】
李可先 —— 腾讯电子签 研发负责人
电子签业务快速起量,服务日志的倍速增长使得我们在性能优化、问题定位时需投入大量的精力维护原有的ELK架构。
CLS的引入让我们从中解脱出来,可以全部精力投入到业务中,效率更高,服务也更稳定。
背景
2020年10月,千帆计划 - “腾讯电子签平台”正式上线,为日益增多的个人间交易提供电子合同服务,并使用区块链技术将签约过程进行存证保全以确保签约公信力。
自腾讯电子签相继上线“小收据”、“小借条”、“小合同”以来,吸引了大量的用户访问,后台也多次出现访问量爆增,为保障服务的稳定运行,业务日志成为了运维同学为电子签护航的重要工具。但面对不断增长的日志输出量级,一套稳定高效的日志存储、分析、可视化的方案对于运维同学来说是尤其重要的。
接下来,我们就来康一康腾讯电子签在日志方案的选型、趟坑、再选型这一路上那些不为人知的秘密吧~
ELK初体验
在腾讯电子签上线初期,先选择了ELK (ElasticSearch Logstash Kiabana) 作为日志排障的方案。但在业务运维中,发现有一些痛点:
问题1: 查询日志性能差
在“小收据”发布后,产品瞬间形成爆款,引起了大量用户相继传播并使用,出现了流量突增。运维同学发现有部分请求延时,急需快速进行问题排障时,ES 查询与检索的响应时间却平均在 1分钟 以上,甚至超时,这极大程度降低了运维同学定位问题的效率。
问题2: 流量突增时,未及时扩容,导致日志丢失
因为 ES 集群无法自动扩缩容,为了保证系统高可用与高稳定性,运维同学需要提前进行资源计划和部署。但面对一些不可预测的流量突增时,运维同学不能及时对 ES 集群进行扩容,直接造成了 ES 的宕机和部分日志丢失。
问题3: 存储空间不足,需不定期清理数据
从运维角度,希望将日志保存更长时间,如30天;但从成本角度,需尽量减少存储空间;为保持两者的平衡,需通过脚本监控,对 ES 集群中的数据量进行监控并清理。
CLS vs ELK
在一段时间后,考虑到现有方案运维成本较高,将腾讯云日志服务 CLS 与 ELK 对比,并对重点关注的性能/可靠性/运维/成本上进行了再次评估。
CLS | ELK | |
---|---|---|
性能 | 写入到可检索 秒级 | 写入到可检索 分钟级 |
部署 | 云原生日志方案,支持TKE/k8s 一键部署 | 需单结点逐个部署,logstash规则配置复杂 |
运维 | 按需使用,无需关注资源问题 | 1. 需提前规划资源(计算/存储空间),并紧急扩容 2. 需考虑版本升级 3. 需配备专门的ELK运维人员 |
成本 | 低 (低于ELK 50%) | 高 |
功能 | 1. loglistener采集端性能高、资源占用少 2. 集检索/分析/告警/仪表盘一体的完整解决方案 | 1. logstash占用资源多,影响业务程序正常运行 2. 告警需结合grafana使用 |
根据以上分析,将 CLS 与 ELK 并行使用一段时间后,在性能/运维/成本确实有很大收益:
1. 性能提升 6 倍
ELK 困扰腾讯电子签许久的查询慢的问题,在使用CLS后,日志可检索的时效性得到了很大的改善,从分钟级提升为10秒级,排障效率也有着显著的提升,并且结合CLS的"分区自动分裂"功能,根据流量变化智能扩大分区数,即使流量突增时也能保证实时性。
2. 一键部署、零运维
由于电子签的业务都基于腾讯云容器平台 TKE 部署,得益于 CLS 对 TKE 的友好支持,在控制台上即可一键部署与配置,即使扩容结点,也无需额外部署采集端agent。
另外,在运维过程中,使用ELK时,需有专人学习并理解logstash及ES的各种配置参数,并需不时的进行故障排查、性能查定位、扩容、升级;使用CLS后,实现真正的零运维,将重心聚焦在业务本身。
3. 成本降低 50%
除开运维的投入大大降低外,在资源成本上,使用 CLS 相对 ELK 降低 50%。一方面由于 CLS 按量计费,按需使用,ES按资源收费,需提前计划并购买资源;另一方面由于 CLS 在存储引擎层和检索性能上做了诸多优化,相对 ELK 有较大的成本优势。
4. 一站式服务
CLS提供的一站式服务,还包含了仪表盘及告警功能,便于统一平台统一管控。如发现有“error”字段可于1分钟内告警;通过SQL语句,在仪表盘可快速展示不同客户的访问来源及使用频次,方便实时了解产品的运营情况。
总结
通过将日志从 ELK 切换至云原生日志服务 CLS后,腾讯电子签可以真正专注于业务本身,从运维成本、财务成本都有了很大的优化,性能上有了更大的提升。
CLS 让运维真正服务于团队,让团队更加聚焦于业务!
这里也推荐一下“腾讯电子签”小程序,提供个人和企业用户收据、合同能力,快捷签约,合规安全,做生意有保障!微信搜索“腾讯电子签”小程序,也可以直接点击下方链接直达“腾讯电子签”小程序哦~
【这里需要加入小程序,小程序加入流程如下↓】
以上就是关于CLS助力腾讯电子签高效运维的案例分享,如果您有更多有意思的日志实践玩法分享,欢迎投稿!
往期文章:
日志源解析|自建Kubernetes集群部署CLS日志服务原理及场景实现
【日志服务CLS】免费体验Demo日志:一键开启,CLS全功能开箱即用
【日志服务CLS】容器服务TKE审计日志运维场景体验
【日志服务CLS】Nginx日志数据全方位大解析
对象存储COS访问日志场景体验