前言
基础设施服务是产业数字化转型建设的重要组成部分之一。当我们反复讨论如何实现高效、精确的全局监控,也许能从观测云借助一套方案来探索、检查和监控分布式基础架构中的每个关键部分这一操作中习得一些灵感。
在针对企业的平台中内嵌实时的基础设施监控工具是云原生时代最基本性的做法。但当业务系统庞大,基础架构包含数百或数千个主机时,通过简单登录到服务器来运行命令行诊断问题不再能满足监测需求。今天的观测云面向主机、云环境、容器、进程及网络,支持通过快速部署,轻松观测全部基础设施,并覆盖物联网、多云环境、虚拟化、微服务等各类 IT 设施。甚至您可以自定义基础设施对象,方便您观测任意一个基础设施。
那么,在具备了实现全面监测基础设施的能力之后,对于观测云来说,我们如何基于收集的数据来进行基础设施健康状态的统一管理呢?
整体观测各类对象状态分布
当观测云完成主机、容器、进程、网络和其他自定义对象的数据采集并上报到工作空间,我们可以前往基础设施 > 各类 tab 页查看所有对象的数据。
数据采集前提:安装 DataKit。
列表
以主机为例。当我们进入基础设施 > 主机,可以查看最近 24 小时内每个主机的数据信息,CPU 使用率、内存使用率和 CPU 负载等指标为我们直接了当地呈现当前工作空间已采集到的主机运行情况。此时,我们可以借由数据占比从整体观测基础设施状态,实时定位异常。
当然,如果您想查看主机的其他指标信息,可直接在显示列进行添加编辑。
蜂窝图
除了列表模式,我们还可以查看各主机或容器的蜂窝分布情况。借助蜂窝图,可以看到不同维度的对象性能状态。基于不同的填充指标,会按照最大和最小值等分为 5 个区间,每个区间将自动对应五个不同的颜色,从而区分异常情况,由此主机或容器的异常或故障状态一目了然。
以容器 > Containers 为例,我们在下图的 205 个容器中,选择 CPU 使用率这一填充指标,可以看到十个左右的容器的 CPU 使用率超过 100%,存在内存使用率超标的问题。
详情页
在列表或蜂窝图模式下,虽然我们能直白地获取到对象数据信息。但结合列表详情页,我们能获得某条数据下的基本信息、扩展属性以及该对象数据一站式关联的日志、进程、时间、进程、网络等信息,从而更快更全面的监测对象运行情况。
比如在下图主机列表,我们点击名为 192.16**** 的这条主机数据,在其侧滑详情页中,即可查看与该主机相关的最近 1 小时的日志以及该主机各相关指标的实时性能状态:
除了系统已预设的诸如以上关联对象,根据我们前面曾探讨过的内置视图的妙用(参见《内置视图联动查看器,实现数据关联分析》),我们还可以绑定内置视图,实现联动查询分析。
还是以该主机详情页为例,我们的目标是实现在该条数据下直接查看 Linux 监控指标情况。点击右侧添加符号,选择主机概览_Linux 监控视图,点击确定即可。
绑定成功后,我们就可以在当前页面查看该主机相关的多项性能指标。结合各类图表,可以帮助我们全方位观测主机、容器、进程、网络性能,深入了解服务器工作负载和容量需求,从而及时作出反应。
网络
在观测云的基础设施,【网络】这一模块支持查看主机、Pod、Deployment 和 Service 之间的网络流量,分析服务端、客户端之间的网络流量和数据连接情况。借助这种可视化的方式实时展示,我们可以实时了解业务系统的网络运行状态,快速分析、追踪和定位问题故障,预防或避免因网络性能下降或中断而导致的业务问题。
总览
在总览页面,我们可以切换主机、Pod、Deployment、Service 组件来查看具体的网络情况,包括其客户端、服务端、TCP 重传次数、TCP 连接数、TCP 关闭次数、TCP 延时、发送字节数、接收字节数等。还可以查看不同参数在不同时间段内的趋势变化表。
这些指标基本可以覆盖我们全方位的网络数据分析,不放过任何一个风险问题。
拓扑
观测云在网络还设置了拓扑图。这种发散式排列分布的图形组合自动映射服务器、网络、计算资源、存储系统之间的依赖关系,可视化显示不同项目、服务、主机、镜像下的各对象性能状态及目标到目标之间的网络流量和数据连接情况,帮助我们找出多域问题的根本原因。
以网络为例,我们可以在拓扑下查看主机、Pod、Deployment 和 Service 之间的网络上下游分布情况。基于 TCP 延迟、TCP 波动、TCP 重传次数、TCP 建连次数以及 TCP 关闭次数这五类不同的填充,根据不同的颜色显示区分异常情况。
网络流
除了借助总览和拓扑,我们还可以查看时间线上的 L4(netflow)、L7(httpflow) 网络流数据。所有网络流数据每 30s 自动刷新一次,默认展示最近 15 分钟的数据。
自定义
除了上文我们所提到的主机、容器、进程、网络以外,观测云支持自定义新的对象分类并上报相关对象数据到控制台。这种自定义类型通过 DataKit API,满足采集阿里云、腾讯云、华为云、AWS 等多种云资产的业务需求,并进行统一管理,实现数据关联查询和分析,保障业务系统的稳定性。
当能够满足全面、丰富的云资产监测,进一步保障这类自定义对象的健康状态也就成为了可能。
关于本部分详细信息,您可前往 自定义 - 观测云文档 进行查看。
结论
观测云在基础设施这一功能模块下,不仅仅停留在应用层面,还深入到每一层的基础架构中,远超简单的主机监控。其提供了完整可观测性:除了针对容器技术、进程检测和资源利用率、网络使用和性能、日志监控,还将第三方数据和事件纳入全栈视图,为您打造了一个闭环的基础设施监测生态,自动探索和监控完整堆栈的每个组件,满足企业从应用程序、基础架构到用户体验等多方面需求。