云优cms采集(阿里云监控为云上用户提供开箱即用手写前端(组图))

优采云 发布时间: 2021-10-26 19:27

  云优cms采集(阿里云监控为云上用户提供开箱即用手写前端(组图))

  前言

  对于阿里云用户来说,阿里云监控是一款非常不错的产品。首先,在配额内可以免费使用!免费!免费!重要的事情说三遍。其功能与zabbix类似,但提供的监控项比zabbix更多。基本上可以通过云监控实时监控云上使用的资源。并且提供开箱即用的方式,自然整合云资源,提供多种报*敏*感*词*式,免去监控报警系统的繁琐搭建和维护,减少资源消耗,比购买ECS少并自己构建 zabbix。消耗大量资源。同时,阿里云监控和阿里云的其他服务一样,还提供了比较完善的OpenApi和各种语言的SDK,可以基于阿里云的OpenApi与自己的系统集成。之前我们是这样做的,但是随着监控项的增加以及办公室经常需要监控的特殊监控页面,我们运维工程师使用vue的写入速度明显跟不上,页面是漂亮程度也差了很多。

  手写前端VS Grafana

  虽然手写前端的可定制性更强,但是调试起来还是需要很多功夫的。对于运维人员来说,连运维开发都太多了(前端小哥和*敏*感*词*姐不会帮你的,下图是我拍的我去年写的vue写的伪Grafana展示页面,花了大约一周调整这些前端元素)。

  

  Grafana标准化程度高,陈列更符合大众审美。一些定制需求可以通过定制DataSource或AJAX插件的iframe模式来完成。后端DataSource的开发绝对没有前端调整css那么痛苦和耗时。这样一个页面的整体配置和开发,可能只需要一个人日就可以完成。新产品上线时,搭建专门的监控展示页面更快,几分钟就可以完成。

  

  关于阿里云监控

  云监控(CloudMonitor)是一项监控阿里云资源和互联网应用的服务。

  云监控为云用户提供开箱即用的企业级开放式一站式监控解决方案。涵盖IT基础设施基础监控、外网质量拨号监控、基于事件、自定义指标、日志的业务监控。为您提供更高效、更全面、更划算的全方位监控服务。通过提供跨产品、跨地域的应用分组管理模型和告警模板,帮助您快速构建高效的监控告警管理系统,支持数十种云产品,管理数万个实例。通过提供 Dashboard,它可以帮助您快速构建自定义业务监控市场。使用云监控不仅可以帮助您增加系统服务的可用时间,

  云监控服务可用于采集获取阿里云资源监控指标或自定义监控指标,检测服务可用性,并为指标设置告警。让您全面了解阿里云的资源使用情况、业务运行状态和健康状况,及时响应异常告警,保障应用的顺利运行。

  关于 Grafana

  Grafana 是一个跨平台的开源测量分析和可视化工具。您可以查询和可视化采集的数据,并及时通知您。由于Cloud Monitoring的Grafana不支持告警,这里我们只使用Grafana的可视化功能,而且告警本身是Cloud Monitoring内置的,所以不需要依赖Grafana来实现。而且我们的 Prometheus 也使用 Grafana 进行数据可视化,所以有现成的 Grafana-Server 可以使用。

  阿里云监控和Grafana

  首先,Grafana服务的部署方法这里就不介绍了。请使用较新版本的 Grafana,最好是 5.5.0+。下面的文章中还有我开源的基于阿里云监控的Grafana helm chart,可以使用helm安装,会直接导入云监控指标,后面会介绍。

  安装阿里云监控插件

  进入插件目录进行安装

  cd /var/lib/grafana/plugins/

git clone https://github.com/aliyun/aliyun-cms-grafana.git

service grafana-server restart

  如果使用docker或者在k8s集群中部署,也可以在Grafana部署时使用环境变量进行安装

  ...

spec:

containers:

- env:

- name: GF_INSTALL_PLUGINS # 多个插件请使用,隔开

value: grafana-simple-json-datasource,https://github.com/aliyun/aliyun-cms-grafana/archive/master.zip;aliyun-cms-grafana

...

  也可以下载aliyun-cms-grafana.zip插件并解压,上传到服务器Grafana的plugins目录下,重启grafana-server即可。

  配置云监控数据源 Grafana启动后,进入Configuration页面,选择DataSource Tab页面,点击右上角添加数据源,添加数据源。选择 cms Grafana 服务并单击选择。

  

  填写配置项,URL根据云监控位置填写,填写阿里云账号的accessKeyId和accessSecret,完成后点击Save&Test。

  

  创建Dashboard,点击Create -> Dashboard -> Add Query配置图标,选择之前添加的cms Grafana Service作为数据源,然后在文档中的配置项中填写指标(这里注意,云监控API只返回实例ID,没有自定义实例名称,需要在Y列describe中手动填写;且仅支持单个维度,如果输入多个维度,第一个是默认选择的。这是由于这些问题。出于我后续开发cms-grafana-builder的动机)。

  

  配置参考云产品监控项,

  

  使用 Helm Chart 部署 Grafana

  项目地址:

  cms-grafana-builder

  由于上述问题,我们需要手动选择每个实例ID到Dimension中,还要在Y列describe中输入实例名称,非常繁琐,无法大量输入。

  这就是我开发这个 Grafana 指标参数*敏*感*词*的原因。一开始只是一个python脚本,把我们要监控的指标组装成一个可以使用的Grafana json文件,然后结合Grafana的容器化部署方式,就做成了一个helm chart。启动时可自动生成所需参数,所有指标每日更新,无需每次新购买或发布资源时都运行脚本。

  部署

  只需拉下项目并运行 helm install 命令

  helm install my-release kk-grafana-cms \

--namespace {your_namespace} \

--set access_key_id={your_access_key_id} \

--set access_secret={your_access_secret} \

--set region_id={your_aliyun_region_id} \

--set password={admin_password}

  更多详情请参考github README,欢迎提交issue交流。

  索引选择

  部署成功后可以修改ConfigMap:grafana-cms-metric,然后修改相应的监控指标。

  影响

  电子控制系统:

  

  RDS:

  

  电子工业园区:

  

  Redis:

  

  后记

  为了满足公司的需求,我们还将为公司的大屏显示器开发定制的DataSource部分。这部分是另外一个项目,不在这个项目中,就不赘述了,以后有机会再总结分享。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线