开发者社区> 优云软件> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

优云Monitor:大规模Docker平台自动化监控之路

简介: 本文介绍了通过优云Monitor,如何实现大规模容器运维平台的自动化监控需求。
+关注继续查看

前言:

本文介绍了通过优云Monitor,如何实现大规模容器运维平台的自动化监控需求。

尽管Docker技术目前还处于不稳定的发展与标准制定阶段,但这门技术已经呈现了极其火热的增长状态,却已经是不争的实事。到底有多火热?让我们先来看一张来自国外监控公司DataDog 2016年最新调查报告:

b7deb2a9bb14d7eebc276ba0852c05941cf8cabf

从图中可以看出,自2015年5月后,采用容器技术的应用呈现了30%的大幅增长,放弃容器技术的的应用,则已经出现了平衡状态。

此消彼长,随着容器技术的推广,本文的主人公老葛,某互联网金融资深运维工程师,也开始受其波及。最近,老葛的公司开始也使用Docker来交付线上的应用了,一上来的第一个应用,就产生了50+的应用容器。老葛带领着运维与研发团队经过一趟艰难迈坑之旅,终于让线上的应用跑起来了。但成功的喜悦转瞬即逝,马上老葛的脸上又出现了囧字,如何优雅地监控容器平台,成了运维团队的大问号?

让我们跟随老葛的视角,来逐个审视团队面临的挑战,首先第一个问题是:

问题1:如何对容器的可用性与资源消耗进行监控?

经过一番选择后,老葛采用优云Monitor来作线上的容器监控,通过在Docker宿主机上部署Agent,实现了所有容器的动态监控,如下图所示:

6f27a84a9579d59b09f35955e44cbfc39266f379

监控代理通过获取Docker Daemon API(其本质在Docker的容器管理API与cgroup资源统计),其监控到的指标包含:运行容器数(个),停止容器数(个),容器CPU使用率(%),容器RAM使用率(%),容器磁盘读速率(B/S),容器磁盘写速率(B/S),容器文件系统大小(B)、容器文件变更大小(B)、容器网络发送速率(B/S),容器网络接收速率(B/S)。

同时Monitor Agent也针对操作系统本身进行监控,对OS、Docker的各类指标可以达到秒极的监测粒度,完全满足了团队的系统监控要求。

其次还面临:

问题2:如何对容器内的应用进行监控?

通过Monitor Agent,可以针对每一种容器应用,启用特定的采集插件,实现针对其特定应用的指标监控。如问题1中的图形所示,Agent可以通过Net端口,访问特定容器的应用,来实现应用的可用性监控与性能指标的监控。

优云Monitor支持大量的传统资源与互联网资源:

523127822b41466d60c13252e32c7cb049e7c13f

在解决上述两个问题后,工作很快走上了正轨。但应用是有生命的,它在不断发展,随着实例的增加、容器编排能力的使用,应用开始做弹性扩缩,马上新的问题又出现了:

问题3:如何对快速变更下的新增容器进行监控?

经过与优云的技术团队的沟通,老葛团队对Docker宿主机增加了容器变更触发脚本,利用Monitor Agent易于自动化配置的特性,通过脚本自动生成新容器的监控配置项,满足了对新增容器的应用自动监控。

2c32dea10be5b3dd4540b4d40e14520406a7e16a

最后,由于大量的应用使用了分布式微服务,相同的微服务在整个网络中运行了多个实例,过去再以单个应用为单位的监控已经无法满足要求,因为单个指标无法代表整个应用的性能水平,所以团队又碰到了一个监控可视化的问题:

问题4:如何可视化分布式应用的整体性能指标?

比如,目前上线的应用有6个Jetty微服务,同时还会不断增加,那么如何确认所有业务Jetty服务的负载是否均衡?

利用Agent监控时,可以为指标数据设置“来源标签”的特性,我们可以将这个应用的6个Jetty服务以及自动新增的Jetty服务,都设置上“app=shop.portal”。

然后,通过优云Monitor的多种仪表盘,通过标签可以提取到这些数据,结合奇妙的数据汇聚公式与丰富的图表,对这6个Jetty服务进行了流量访问趋势、流量访问合计、负载排名、资源消耗等可视化,如下图所示:

5a7bcdada50922faf36459045c2fb467a7bb82c3

同时类似的问题还包括,“集群中的多个Nginx服务,总共有多少HTTP连接会话?”,“集群中所有节点当前成功处理的交易量是多少?”,“集群中所有节点的CPU利用率排名是怎样的?”等等。

从老葛团队容器监控运维历程,我们发现优云Monitor天然地支持对容器以及容器内应用的监控,并且可以敏捷的应对容器的弹性扩缩容,实现自动化容器监控。同时,Monitor还拥有非常棒的数据汇聚与可视化手段,摆脱了运维人员需要逐个面对监控指标的情况,实现监控整体应用,掌控全局。

作者简介:

蒋君伟

IT运维领域资深专家,优云软件产品总监,拥有10年运维实战经验;

先后研发了网络管理、系统管理、CMDB、ITSM等产品,并成功建设了多个全国性的网络运维管理项目;

其主导研发的产品广泛应用于海关、税务、公安、社保、银行、保险、能源等20多个行业。

“ 活动期:现到2016年12月31日前使用优云产品免费,欢迎详询:https://uyun.cn

更多运维技术文章请关注优云官方微信(broada_ops)

1240

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
【Dataphin智能运维】智能基线,自动化预警代替人工监控
DataphinV3.6版本全新上线智能运维模块,支持基线监控和调度限流功能。基线监控能够快速捕捉导致基线上的任务无法按时完成的异常情况并提前预警,保障复杂依赖场景下重要数据能在预期时间内顺利产出,帮助您降低人工配置成本、提升监控及时性和准确性、避免无效报警,运维人员的好帮手,管理者的福音!
0 0
Golang-自动化监控教务系统成绩单
Golang-自动化监控教务系统成绩单
0 0
zabbix自动化监控---自动注册机制(二十三)
zabbix自动监控之自动注册 1.自动注册介绍 zabbix自动发现的效率非常慢,每次自动发现的时候都需要对所有的主机进行扫描,也类似与zabbix被动模式,每次都需要向机器进行一次探测,比如这次某个主机没有存在,下次上线了又要重新扫描一次,效率非常低下。 而zabbix自动注册的原理就类似主动模式,每次都是由zabbix-agent主动去向zabbix-server说我上线了,需要加入监控,这时zabbix-server同意后立马就加入监控了,这个效率是非常高的 zabbix自动注册只需要配置四个地方即可生效
0 0
zabbix自动化监控---自动发现机制(二十二)
zabbix自动监控之自动发现 1.自动发现介绍 当我们有上千台主机都需要加监控的时候用自动发现会非常方便,只需要我们创建一个自动发现规则,设置自动发现的范围,在根据设置的动作就可以将已经安装好agent的Linux服务器自动的添加到监控上
0 0
日志审计:多账号下ALB访问日志的自动化采集与监控
本文主要介绍在日志审计下如何开启ALB访问日志的自动化采集与监控
0 0
基于Tag的自动化监控方案
简介: 关键词: 云监控,Tag,分组,应用分组,自动监控,redis监控,cloudmonitor-group,自动发现 随着企业云资产越来越多,每天生产销毁变更的资源也不在少数,企业用户对这些资产的管控难度也越来越大,尤其是监控领域。
643 0
Redis的自动化监控解决方案
## 1,使用基于名称自动匹配的分组监控 云监控控制台>应用分组>创建分组>选择'智能实例规则创建'。后续只要对实例命名符合条件,即可自动加入对应的应用分组,自动被监控。 ## 2,使用系统预留TAG 在redis控制台,对实例打上tagkey:cloudmonitor-group 任意的value,即可创建一个应用分组cloudmonitor-group-$value的应用分
0 0
redis自动化监控
redis自动化监控
0 0
高阶实践:云监控基于tag自动化监控
如何基于TAG自动化监控?只要您的ECS,RDS,SLB三种产品的实例打上标签键为cloudmonitr-group,标签值为非空的值就可以自动创建标签分组。
0 0
+关注
优云软件
优云(uyun.cn)是广通软件旗下的新一代敏捷运维品牌,优云诞生于云计算、大数据和物联网爆发的时代,从高效、智能、迭代、协同等角度重新审视运维、在数据中心、互联网、物联网三个领域为用户提供敏捷运维工具和服务,帮助用户赢得数字化业务成功。
文章
问答
文章排行榜
最热
最新
相关电子书
更多
《一站式网络自动化管理平台》
立即下载
钉钉客户端自动化的应用
立即下载
新一代自动化渗透平台的设计与实现
立即下载