先定一个运维小目标,比方监控它10000台主机
“想做世界最好是对的,但是最好先定一个能达到的小目标,比方说我先挣它一个亿。”,王首富云淡风轻地给各行各业提供了一个很好的Roadmap,包括我们运维。的确,如今数据中心的规模增长速度也已像一匹脱缰的野马,各地都频频建设起超大型数据中心。按工信部的定义,超大型是指规模大于等于一万个标准机架的数据中心,考虑到虚拟化技术的使用,实际上需要运维的主机规模很容易超过十万的级别。所以,首富说的目标离我们也不远,也许很快就可以达到。
而如此大规模的数据,其运维的难度可想而知,我们来逐个分析应对看看:
挑战一:如何把监控配置等运维工作降低到零?
通常情况下,每一个主机或虚拟机的点亮,运维人员都需要为新主机完成配套的运维工作,包括系统部署、IP地址分配、应用部署与监控配置等等。尤其在使用虚拟机技术的数据中心,据调查,目前虚拟机的平均生存时间只有15天,因此其配套的运维工作变得更加繁重。将这些例行的配套工作自动化,可以有效降低运维工作。
在这个问题域中,我们设想有这样一种代理程序,它易于安装、启动后可自动采集本机信息上报、同时开始监控各项重要的指标。那么我们就很容易,将代理程序作为主机系统部署的一部份,同时预置到虚拟机镜像中,那么每点亮一个主机,在监控中心就可以立即发现与监控它,这能有效消除监控配置运维工作。
这样后续新增主机的流程如下,需要运维工作投入仅仅在开机部份,其余过程可全部自动化:
挑战二:如何设计监控数据传输网络,低成本支持海量数据?
对于10万主机的规模,以及目前数据中心秒级的监控需求,其监控数据显然会成为一个大数据。一个主机上报监控数据产生了0.5KB/s的流量,那么10万主机,每时每刻都产生50MB/s的总流量,这当然是无法接受的。
答案是引入采集数据传输中间层,通过中间层有以下优势:
1.合并上报TCP连接,减轻监控服务端的连接压力
2.集中数据压缩上报,并减少传递的数据大小
挑战三:如何对接各类系统,实现大规模监控数据集中化?
数据中心的监控运维不仅仅针对主机,还会有机房环境、业务应用、存储系统等各类系统,这些系统可能也已有各自的监控工具,但运维需要避免工具的碎片化,为运维人员提供统一的监控平台。因此监控系统应当非常容易扩展监控资源与监控指标,让运维人员可以仅用一条命令,就可以提交监测资源与指标,以便随时通过各类Shell扩展监控能力。
具体要求包括:
1.支持http或udp提交接口
2.简洁的数据格式要求
3.不要求预先在平台中定义资源或指标信息
这种方式,运维人员即可使用shell粘合curl命令,快速对接各类系统:
挑战四:如何可视化上万个主机的性能状况?
由于超大型数据中心的主机资源已经达到万级,因此传统的一些TopN报表或多维度分析表格,其显示的数据样本少,缺少交互式的数据分析工具,无法直观的表现数据中心的整体性能情况,也难以分析负荷的瓶颈。
应对这样规模的资源展现,我们需要使用一些大数据的可视化技术:
1.用反应主机负荷的图形元素,在进行宏观的主机展现:
2.通过机房、系统、使用部门等等不同的维度进行切换,洞悉负荷高压区域:
总结
如今在监控领域,已经有很多传统的监控工具,也包括各类开源的监控系统如Zabbix、Nagios等,但如果需要满足万级主机监控,还是有很多的运维平台研发的工作需要落实。而优云Monitor,本身就已充分考虑大规模的监控体量,它的设计中包含了以下特性:
1.通过一键安装快速实现大规模自动化部署,降低监控的运维附加工作量
2.通过代理级联应对各类隔离网络环境与多数据中心,并对网络负荷零影响
3.通过OpenAPI快速实现监控平台的集成
4.多视角切换观察,随意纵览万级主机数据中心
5.可随数据中心规模增长而进一步水平扩展,随时扩大监控规模
蒋君伟
IT运维领域资深专家,优云软件产品总监,拥有10年运维实战经验;
先后研发了网络管理、系统管理、CMDB、ITSM等产品,并成功建设了多个全国性的网络运维管理项目;
其主导研发的产品广泛应用于海关、税务、公安、社保、银行、保险、能源等20多个行业。