一、前言
日志对于任何系统和组件都必不可缺的,运维人员通过日志信息发现系统隐患、系统故障并安排人员及时处置,开发人员解决问题离不开日志信息的协助定位。现在微服务兴起,微服务架构带来好处的同时带来了诸多困扰,分布式部署的应用其日志散落在各个位置,这给日志的采集、存储、分析、管理带来了挑战,所以在规模化的容器云平台建设中,日志中心的建设是我们需要重点考虑的部分。
我们在建设容器云平台日志中心的时候要考虑日志采集到管理全部组件的高可用、松耦合、高性能和稳定性,不仅容器云平台可以访问和使用日志中心服务,其他平台和组件也可以访问日志中心服务。这样的日志中心就成为了服务整个公司系统和应用的安全可靠的基础设施,节省了其他系统重复开发日志功能的成本。
二、架构设计
三、实现目标
上述日志中心的建设,实现了以下目标。
-
一次建设多次使用,降低成本。
-
将微服务中散落各地的日志进行了统一收集和处理,提升了分析和查询的便利性。
-
缩短项目组开发周期,不用重复建设日志采集、处理、存储等功能,专注于业务实现。
-
日志格式标准化,采集规范化,存储统一化。
-
kafka、es集群以及LogStream组件高度可扩展,可横向扩容。
-
降低了各项目组之间、各日志功能组件之间的耦合度。
-
遵循统一的规范和标准,各个组件可随时替换,减小重新设计工作量。
-
保证了日志查询的实时和准实时,可根据不同分级、不同业务属性创建不同的索引,保障重要关键日志查询的性能。
-
支持不同的日志格式,可通过LogStream组件转换日志编码,统一编码格式。
四、结束语
容器云平台日志中心的规划和建设取决于日志中心在整体架构上的定位,如果在整体架构上已存在了该角色,我们需要做的就是配合提供信息以支撑日志中心的接入和正常运行。只不过云计算平台是基础设施,不管IaaS、PaaS需要有对基础设施资源的管理和运维能力,日志作为每个平台每个服务都不可回避的能力,使之成为一个平台级的服务也是一种很好的选择。
上述内容描述的方案,但更多的是提供一种思路,我们在做方案设计时需要全面地看待问题,表面看起来不相关的东西都存在着内在的联系。容器云平台的设计和架构,关键不是容器的问题,关键是为了支撑业务。要支撑业务,则需要我们持续关注业务在容器云平台使用上的痛点和难点,不断完善容器云平台的各项功能。
文章作者:佘彬彬
排版设计:王蔚棋
手绘插画:岳 媛
求分享
求点赞
求在看
原创文章,作者:EBCloud,如若转载,请注明出处:https://www.sudun.com/ask/33237.html