OneAPM 在 8 月 20 日推出数据管理平台 Cloud Insight。支持 Ubuntu、Fedora、CentOS 和 RedHat 4 种主机监控,以及数十种如 MongoDBNginx 等平台服务监控。

为什么阿里云用户需要使用 Cloud Insight 来加强管理? 技术分享 第1张

相信试用过 Cloud Insight 的,在配置平台服务时,都会在配置项目中看到 tag。OneAPM 鼓励使用 tag 来更好地管理平台和平台服务,并在仪表盘中达到数据聚合的作用。

为什么阿里云用户需要使用 Cloud Insight 来加强管理? 技术分享 第2张

tag 就如微信中,我们针对好友进行分组,来管理联系人;也可以通过分组可见,来规定每条朋友圈的可见范围。同样的,在 Cloud Insight 中 tag 的功能也是这两部分:

  1. 更好地管理:来标识主机的属性,针对主机和服务按照地域、名称、规模等进行分类;
  2. 数据聚合:想看一组服务或者一组主机的整体性能,按照平均值、中间值、最大值来查看性能指标,通过 tag 都可以办到。

更好地管理

OneAPM 鼓励使用 key:value 的方式来使用 tag

为什么阿里云用户需要使用 Cloud Insight 来加强管理? 技术分享 第3张

如,一个公司可能需要维护上百台的主机,那么需要整个运维团队来协作管理。不同的运维工程师,会分管不同的主机。

举例来说,chengmolihuiqi 是公司的两位运维工程师,可能分管着不同的主机。那么他们可以在自己分管的主机上,打上 staff:chengmostaff:lihuiqitag

这样就可以按照 key 进行分组查看主机了。在这个例子中,就是可以按照同事的名称,对主机进行分组。

为什么阿里云用户需要使用 Cloud Insight 来加强管理? 技术分享 第4张

而在仪表盘中,你只想关注您所在管辖的主机的 CPU 使用量,那么也很简单。在 tag 选择器中,选择自己想看的分组,Cloud Insight 就会对数据做聚合,显示属于这个 tag 的所有主机的 CPU 使用量的平均值。

为什么阿里云用户需要使用 Cloud Insight 来加强管理? 技术分享 第5张

在图中,可以看到我们选择了:只查看 staff:lihuiqi 的主机的操作系统指标。那么,所有的 CPU 使用量、系统负载情况、IO 负载,都会是**被打上了 staff:lihuiqi 这个 tag 主机的性能指标的聚合数据。

例如,system.cpu.user 这个指标,在 15:30:00 这个时刻的数值是 1.71%,意味着:所有 lihuiqi 分管的主机们的平均 user 对 CPU 的消耗是 1.71%

数据聚合

谈了这么多,那么 tag 的功能到底有什么用呢?

如果你是阿里云的用户,或者使用过 Zabbix,那么你会明显感受到一个痛点:没有办法对数据做聚合,只能挨个查看主机的性能指标。更不用说有管理的功能!

如果我们从业务这个角度出发,假设现在阿里云中有 100 台 EC2 主机,其中 50 台用于数据采集工作,5 台用于数据清洗工作,10 台用于数据分析工作,20 台用于数据统计工作,剩下的响应前端的数据请求。

为什么阿里云用户需要使用 Cloud Insight 来加强管理? 技术分享 第6张

这种业务相关的属性,在阿里云中是没有办法「打标识」来实现管理的。在 Cloud Insight 中可以通过以下 tag 的管理方式,来实现管理和数据聚合:

  • func:data_collect
  • func:data_clean
  • func:data_analysis
  • func:data_stat
  • func:front_end

往日中,如果业务的增长导致数据采集、清洗、分析的负载加大,就很有可能会产生问题。如果此时对主机进行排查,或者说对平台服务进行排查,那么工作量就会变得很大。

除非您很了解业务,并对自己的架构非常熟悉;否则问题很难在短时间内,得到解决。而在 Cloud Insight 中,可以按照 tag 实现数据聚合。

你可以先查看不同业务功能的主机的指标,查看到底是数据采集出了问题,还是响应前端的数据引擎出了问题。如果此时发现是数据采集工作除了问题,您还可以通过以下 tag 来进行定位:

  • 是哪个地域的主机出了问题
  • 是哪个规模的主机出了问题

根据我们为您预定义的 tag 和您自定义的 tag 就会减少很多的工作量。

那么我们预定义的 tag 有哪些呢?

  • Agent 的 Tags,在 oneapm.conf 进行设置;
  • StatsD 中的 Tags;
  • 平台服务配置文件的 Tags,如 mysql.yaml
  • 与 AWS 阿里云等服务对接中,已有的 Tags;
  • 通过 API 建立的 Tags;
  • 对接 Chef 和 Puppet 服务时,建立的 Tags。

有关 AWS 的 Tags 建立和管理,请查阅 AWS 官方文档

结语

Cloud Insight 采用通用的集群的管理方式,来做数据的聚合和分析,降低运维人员的工作量。

Cloud Insight 就是这样一个数据管理平台,对接所有可以对接的服务,展现所有可以展现的数据;来填补部门间、人员间、技能间的沟通鸿沟。

Cloud Insight 也是一个完全由用户主导和参与的产品,我们采用小步迭代的方式,以最快速度对您在 Cloud Insight 社区中提到的意见,进行反馈和实现。

以上提到的事件流功能,预计在 2015 年年底进行沟通;有什么需求和意见,赶紧来 Cloud Insight 社区表达自己的想法吧!

为什么阿里云用户需要使用 Cloud Insight 来加强管理? 技术分享 第7张

还不赶紧注册个 OneAPM 账号,开始使用!使用完,别忘了来 Cloud Insight 社区,喷一嘴!