|
|
|
|
移动端

登峰娱乐开户28:运维之三大监控对比

本文来源:http://www.ib556.com/www_cri_cn/

申博现金充值登入,  因为铬盐氧化处理方法是近代才出现的,德国在1937年,美国在1950年才先后发明。对于恒星来说,亮度周期性变暗并没什么稀奇,尤其是,如果有行星在围绕恒星运转,那么当行星从观测者和恒星之间略过的时候,必定会遮挡一部分星光,使得恒星在观测者看来是变暗了。来自广东省东莞市的匿名人士对新闻:的评论别介,美国人最爱的集体诉讼还没开始,怎么能算最艰难呢来自上海市的匿名人士对新闻:的评论说好的没问题呢这次真的要感谢美帝了。国内永远也不会出现,烫破个嘴皮,赔几百万的事,你索赔多了,都可能给你定个敲砸的罪名。

在这一环节中,Vive获胜。自HTCVive发表以来,HTC联合Valve与数千名开发者开发的虚拟现实内容已经包含游戏、娱乐、医疗、汽车、零售与教育领域。男子打断老婆腿后送医被赞不离不弃来自局域网的匿名人士对新闻:的评论"他的早餐很简单:一碗粥,一片面包,几片咸菜而已。只够大城市买三块地。

魅族:你等等在上我,我给你要钱呢!高通:好...来自湖南省长沙市的匿名人士对新闻:的评论佛祖精通C#、Java、PHP、Python等各大主流语言来自山东省青岛市的匿名人士对新闻:的评论跑了50KM结果发现玻璃外,两边和顶上都坐满了人来自上海市的匿名人士对新闻:的评论我都知道原因,微波炉呗来自广东省的匿名人士对新闻:的评论联想也有同样的毛病,都被惯成全球性的大公司了!来自河南省平顶山市的匿名人士对新闻:的评论邮寄爆炸物判几年谁来科普下[s:笑]来自山东省淄博市的匿名人士对新闻:的评论质监部门和监管部门要到315才上班来自广东省的匿名人士对新闻:的评论用外部加热诋毁抹黑中国这事一定要跟寒锅人算账。只够大城市买三块地。男子打断老婆腿后送医被赞不离不弃来自局域网的匿名人士对新闻:的评论"他的早餐很简单:一碗粥,一片面包,几片咸菜而已。魅族:你等等在上我,我给你要钱呢!高通:好...来自湖南省长沙市的匿名人士对新闻:的评论佛祖精通C#、Java、PHP、Python等各大主流语言来自山东省青岛市的匿名人士对新闻:的评论跑了50KM结果发现玻璃外,两边和顶上都坐满了人来自上海市的匿名人士对新闻:的评论我都知道原因,微波炉呗来自广东省的匿名人士对新闻:的评论联想也有同样的毛病,都被惯成全球性的大公司了!来自河南省平顶山市的匿名人士对新闻:的评论邮寄爆炸物判几年谁来科普下[s:笑]来自山东省淄博市的匿名人士对新闻:的评论质监部门和监管部门要到315才上班来自广东省的匿名人士对新闻:的评论用外部加热诋毁抹黑中国这事一定要跟寒锅人算账。

Zabbix核心组件主要是Agent和Server,其中Agent主要负责采集数据并通过主动或者被动的方式采集数据发送到Server/Proxy,除此之外,为了扩展监控项,Agent还支持执行自定义脚本。

作者:艺术生的运维路来源:今日头条|2019-09-28 23:17

1. zabbix

运维之三大监控对比

Zabbix核心组件主要是Agent和Server,其中Agent主要负责采集数据并通过主动或者被动的方式采集数据发送到Server/Proxy,除此之外,为了扩展监控项,Agent还支持执行自定义脚本。Server主要负责接收Agent发送的监控信息,并进行汇总存储,触发告警等。

Zabbix由于使用了关系型数据存储时序数据,所以在监控大规模集群时常常在数据存储方面捉襟见肘。所以从Zabbix 4.2版本后开始支持TimescaleDB时序数据库,不过目前成熟度还不高。

2. falcon

运维之三大监控对比

  • Falcon-agent是用Go语言开发的Daemon程序,运行在每台Linux服务器上,用于采集主机上的各种指标数据,主要包括CPU、内存、磁盘、文件系统、内核参数、Socket连接等,目前已经支持200多项监控指标。并且,Agent支持用户自定义的监控脚本。
  • Hearthbeat server简称HBS心跳服务,每个Agent都会周期性地通过RPC方式将自己的状态上报给HBS,主要包括主机名、主机IP、Agent版本和插件版本,Agent还会从HBS获取自己需要执行的采集任务和自定义插件。
  • Transfer负责接收Agent发送的监控数据,并对数据进行整理,在过滤后通过一致性Hash算法发送到Judge或者Graph。
  • Graph是基于RRD的数据上报、归档、存储组件。Graph在收到数据以后,会以rrdtool的数据归档方式来存储,同时提供RPC方式的监控查询接口。
  • Judge告警模块,Transfer转发到Judge的数据会触发用户设定的告警规则,如果满足,则会触发邮件、微信或者回调接口。这里为了避免重复告警引入了Redis暂存告警,从而完成告警的合并和抑制。
  • Dashboard是面向用户的监控数据查询和告警配置界面。

3. prometheus

运维之三大监控对比

Prometheus Server负责定时在目标上抓取metrics(指标)数据并保存到本地存储里面。Prometheus采用了一种Pull(拉)的方式获取数据,不仅降低客户端的复杂度,客户端只需要采集数据,无需了解服务端情况,而且服务端可以更加方便的水平扩展。

如果监控数据达到告警阈值Prometheus Server会通过HTTP将告警发送到告警模块alertmanger,通过告警的抑制后触发邮件或者webhook。Prometheus支持PromQL提供多维度数据模型和灵活的查询,通过监控指标关联多个tag的方式,将监控数据进行任意维度的组合以及聚合。

对比:

  • 开发语言 便捷易部署(promehteus)
  • 系统成熟度(zabbix)20多年
  • 系统扩展性 Zabbix和Open-Falcon都可以自定义各种监控脚本,并且Zabbix不仅可以做到主动推送,还可以做到被动拉取,Prometheus则定义了一套监控数据规范,并通过各种exporter扩展系统采集能力。
  • 数据存储 Zabbix采用关系数据库保存,这极大限制了Zabbix采集的性能,Nagios和Open-Falcon都采用RDD数据存储 ,Prometheus自研一套高性能的时序数据库,在V3版本可以达到每秒千万级别的数据存储,通过对接第三方时序数据库扩展历史数据的存储;
  • 配置复杂度 Prometheus只有一个核心server组件,其他系统配置相对麻烦,尤其是Open-Falcon。
  • 社区活跃度 Prometheus在这方面占据绝对优势,社区活跃度最高,并且受到CNCF的支持
  • 容器支持 Prometheus开始成为主导及容器监控方面的标配

Prometheus功能介绍

运维之三大监控对比

(1) prometheus的指标类型

  • Counter(计数器):计数统计,累计多长或者累计多少次等。它的特点是只增不减,譬如HTTP访问总量;
  • Gauge(仪表盘):数据是一个瞬时值,如果当前内存用量,它随着时间变化忽高忽低。

如果需要了解某个时间段内请求的响应时间,通常做法是使用平均响应时间,但这样做无法体现数据的长尾效应。例如,一个HTTP服务器的正常响应时间是30ms,但有很少几次请求耗时3s,通过平均响应时间很难甄别长尾效应,所以Prometheus引入了Histogram和Summary。

  • Histogram(直方图):服务端分位,不同区间内样本的个数,譬如班级成绩,低于60分的9个,低于70分的10个,低于80分的50个。
  • Summary(摘要):客户端分位,直接在客户端通过分位情况,还是用班级成绩举例:0.8分位的是,80分,0.9分为85分,0.99分为的是98分

(2) prometheus的client应用方式

  • 客户端集成client,提供metrics接口查询
  • 通过exporter方式

(3) prometheus的存储方式

运维之三大监控对比

Prometheus提供了两种数据持久化方式:

  • 一种是本地存储,通过Prometheus自带的tsdb(时序数据库),将数据保存到本地磁盘,为了性能考虑,建议使用SSD。但本地存储的容量毕竟有限,建议不要保存超过一个月的数据。Prometheus本地存储经过多年改进,自Prometheus 2.0后提供的V3版本tsdb性能已经非常高,可以支持单机每秒1000w个指标的收集。
  • 另一种是远端存储,适用于大量历史监控数据的存储和查询。通过中间层的适配器的转化,Prometheus将数据保存到远端存储。适配器实现Prometheus存储的remote write和remote read接口并把数据转化为远端存储支持的数据格式。目前,远端存储主要包括OpenTSDB、InfluxDB、Elasticsearch、M3db、Kafka等,其中M3db是目前非常受欢迎的后端存储。

(4) prometheus的查询方式

和关系型数据库的SQL类似,Prometheus也内置了数据查询语言PromQL,它提供对时间序列数据丰富的查询,聚合以及逻辑运算的能力。一条PromQL主要包括了指标名称、过滤器以及函数和参数。并且指标可以进行数据运算。

(5) prometheus的监控方式

Prometheus配置监控对象有两种方式,一种是通过静态文件配置,另一种是动态发现机制,自动注册监控对象。

Prometheus动态发现目前已经支持Kubernetes、etcd、Consul等多种服务发现机制,动态发现机制可以减少运维人员手动配置,在容器运行环境中尤为重要,容器集群通常在几千甚至几万的规模,如果每个容器都需要单独配置监控项不仅需要大量工作量,而且容器经常变动,后续维护更是异常麻烦。针对Kubernetes环境的动态发现,Prometheus通过watch kubernetes api动态获取当前集群所有服务和容器情况,从而动态调整监控对象

运维之三大监控对比

为了扩展单个Prometheus的采集能力和存储能力,Prometheus引入了“联邦”的概念。

多个Prometheus节点组成两层联邦结构,如图所示,上面一层是联邦节点,负责定时从下面的Prometheus节点获取数据并汇总,部署多个联邦节点是为了实现高可用

并且联邦机制可以分为俩种,一种是跨服务联合,一种是分层联邦。

  • 跨服务联合,从不同的源抓取特定的服务的监控数据,然后做聚合处理;
  • 分层联邦,就向一颗树,更高级别的prometheus服务从大量次级服务器收集聚合时间序列数据,然后去统一制定告警规则,分发触发事件。

除此之外,prometheus可以依靠Thanos外挂服务,实现prometheus集群化、以及数据长期存储的功能,有兴趣的可以了解下。其实在prometheus2.0自身使用remote-wirte,remote-read接口已经解决了数据长期存储的问题了。预计3.0会做出更大的提升,尤其是prometheus的集群化。

【编辑推荐】

  1. 申博现金充值登入想摆脱无效报警?十年运维监控报警优化经验总结
  2. 5分钟学会两年经验Linux运维都不懂的内核问题
  3. 如何让运维不再当落后技术的背锅侠?
  4. Linux服务器的管理运维简单方式
  5. 5 个 Ansible 运维任务
【责任编辑:赵宁宁 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

订阅专栏+更多

用Python玩转excel

用Python玩转excel

让重复操作傻瓜化
共3章 | DE8UG

173人订阅学习

AI入门级算法

AI入门级算法

算法常识
共22章 | 周萝卜123

151人订阅学习

这就是5G

这就是5G

5G那些事儿
共15章 | armmay

128人订阅学习

读 书 +更多

计算机网络原理与实践标准教程

本书深入浅出地阐述了计算机网络技术的基本原理,介绍了当前常用的先进网络技术以及网络的实际应用知识。全书主要内容包括计算机网络概述、...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊

51CTO服务号

51CTO官微

申博官网娱乐开户登入 www.285msc.com 申博娱乐场直营网 申博管理网网址登入 申博太阳城现金网游戏 菲律宾申博真人娱乐登入
www.285msc.com 菲律宾申博官方网址 申博代理管理网手机登入 申博娱乐手机登入网址 申博登录网址 申博管理登入
申博管理登入 申博电子游戏官网直营 菲律宾申博官方网址 申博游戏端登入 www.99msc.com 申博138娱乐登入