公有云运维福利 | 开源监控小工具:Open-Falcon 插件 cloud-mon

阅读数:2262 2019 年 4 月 3 日 16:38

公有云运维福利 | 开源监控小工具:Open-Falcon插件cloud-mon

背景

当你成为公有云的一名管理员,权限和安全之间的权衡便成为了始终萦绕在我们身边的一个话题。每天在我们专心解决问题,或者 code 的时候,一会儿有人来找你:能不能帮我们看看××× 机器所在的 NAT 网关带宽多大呀?目前使用量是什么情况呀?一会儿有人问:我们在做业务升级,帮我们关注下 LB 的流量情况呀?我们现在 S3 的增长趋势是什么样子的呀?

公有云运维福利 | 开源监控小工具:Open-Falcon插件cloud-mon

方案调研

崩溃一秒钟,这种没有“含金量”的事情,怎么能浪费我们的时间呢?毕竟程序员的使命是要拯救地球的,再不济也得做一个优秀的产品。可是,问题来了。机器的监控好做,可以装 Agent、Zabbix、Open-Falcon 等。这些东西怎么监控呢?而且公有云有很多:什么 AWS、Azure 、阿里云、金山云等,自己重新开发一个监控系统么?

额,这个工作量有点大。干活当然得选最简单,高效,又合理的方案啦,哈哈。

小米内部都是用 Open-Falcon 做监控。Open-Falcon 的 GitHub 地址:

https://github.com/open-falcon

公有云运维福利 | 开源监控小工具:Open-Falcon插件cloud-mon

Open-Falcon 是基于 Go 开发的一款快速上手、高可用的监控系统,支持自定义 Dashboard 报警,可以用来监控机器各方面指标,还可以自定义插件,上报数据,获取自己想要的信息。

Open-Falcon 是小米早期的开源工具,星星多,社区活跃,还支持插件。恩,显示、存储、画图表、保持数据有序,都交给 TA 了。方案已定,写个 Open-Falcon 插件。

架构设计

说了这么久,先上架构图:

公有云运维福利 | 开源监控小工具:Open-Falcon插件cloud-mon

需要支持的云

(1)AWS

(2)阿里云

(3)金山云

监控的资源范围

(1)ELB

(2)EIP

(3)NAT 网关

(4)专线

每个资源都取哪些监控指标呢?当然全部取啦!控制台有啥就取啥。

具体指标信息和含义请自行参照官网:

金山云: https://docs.ksyun.com/documents/42

阿里云: https://help.aliyun.com/product/28572.html?spm=a2c4g.750001.list.212.49707b13EZbdDR

AWS: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CW_Support_For_AWS.html

代码思路

  • 通过读取配置文件,获取资源类型、监控指标、地区信息和账号信息;
  • 获取相应资源的所有列表;
  • 获取列表的相关监控信息;
  • 生成 Open-Falcon 识别的格式数据,推送到 Open-Falcon。

使用指北

该工具已经作为 Open-Falcon 的插件开源,开源地址:

https://github.com/open-falcon/cloud-mon

具体实现代码以及参考文档可以去 github 查看。

首先把代码 clone 下来,按照你们的实际情况配置文件,就可以使用啦。

配置文件实例:

公有云运维福利 | 开源监控小工具:Open-Falcon插件cloud-mon

cloud 下面是一个 list,可以写的很长很长,想配什么配什么。下面是各项参数说明:

公有云运维福利 | 开源监控小工具:Open-Falcon插件cloud-mon

至此,小工具分享完啦,希望帮助大家提高效率。

本文转载自公众号“小米运维” (ID: MI-SRE): https://mp.weixin.qq.com/s/IN6MjUesBkuk90tLfpadpA

评论

发布