MySQL集群告警系统设计_第1页
MySQL集群告警系统设计_第2页
MySQL集群告警系统设计_第3页
MySQL集群告警系统设计_第4页
MySQL集群告警系统设计_第5页
已阅读5页,还剩47页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、技术创新,变革未来MySQL集群告警系统设计一. 告警的选型二. Alertmanager的实现 三. Alertmanager的实践录CONTENTS告警的选型告警需求方案选型告警的对接告警的收敛告警的可用性告警需求多样的告警源多样的告警目标告警需求-告警的对接告警短信多关联告警多运维期间不希望收到告警告警需求-告警的收敛告警系统的高可用隔离的故障域告警需求-告警的可用性告警需求方案选型告警的选型PrometheusZabbix Open-falcon方案选型-备选方案告警的对接告警源告警目标Zabbix多通道多通道Open-falcon多通道多通道Prometheus多通道多通道方案选型-

2、方案对比告警的收敛收敛通知次数Zabbix无支持Open-falcon简单收敛支持Prometheus灵活规则不支持方案选型-方案对比告警的可用性故障域HAZabbix大单点Open-falcon小单点Prometheus小HA方案选型-方案对比其他配置语言Zabbix基于模版C+Open-falcon基于模版Go/PythonPrometheus树形结构Go方案选型-方案对比告警选型的背景-方案选型zabbixopen-falconprometheus监控对象主要监控集群主要监控集群主要监控集群可扩展性分层设计,可扩展分层设计,可扩展分层设计,可扩展告警支持告警支持告警支持(监控告警项目分离

3、)监控数据存储MySQLPGMySQL+Redis+OpentsdbOpentsdb监控节点规模1000+1000+1000+编程语言C+Go+PythonGo优点1.成熟稳定,应用广泛2.部署简单,运维方便3.图形化配置1.架构无单点2.微服务设计思路3.时序存储4.支持grafana等多种展示方 式1.客户端丰富 2.google系,社区热度大3.容器监控方案4.支持grafana等多种展示方 式缺点1.关系型存储,集群大容易 卡慢2.没有告警收敛1.项目时间短,社区稳定性 考验2.架构复杂,运维成本大1.文档相对缺位2.监控数据保留时间短场景中型规模,私有云中大型规模,私有云中大型规模,

4、私有云、容器一.告警的选型二.Alertmanager的实现 三.Alertmanager的实践录CONTENTSAlertmanager的实现架构对接收敛配置可 用 性Alertmanager的实现-架构Alertmanager的实现-架构Alertmanager的实现-架构Alertmanager的实现架构对接收敛配置可 用 性Alertmanager的实现-对接告警对接时需要满足什么要求?接收不同告警源发送的告警将不同的告警发往不同的接收者PrometheusAlert generatorAlertmanagersmtpwechatAPIwebhookAlertmanager的实现-对接

5、接收HTTP API(/api/v1/alerts)发送# The unique name of the receiver. name: # Configurations for several notification integrations. - , . - , . - , . email_configs: webhook_configs: wechat_configs:Alertmanager的实现架构对接收敛配置可 用 性Alertmanager的实现-收敛分组抑制静默延时Alertmanager的实现-分组减少告警消息的数量同类告警的聚合帮助运维排查问题一堆关于MySQL的告警实例

6、1的告警实例2的告警邮件1邮件2Alertmanager的实现-分组alertname=mysql_cpu_high id=mysql-A alertname=mysql_uptime id=mysql-B alertname=mysql_slave_sql_thread_downid=mysql-Balertname=mysql_slave_io_thread_down id=mysql-Balertname=mysql_cpu_high id=mysql-A alertname=mysql_uptime id=mysql-B alertname=mysql_slave_sql_thread

7、_downid=mysql-Balertname=mysql_slave_io_thread_down id=mysql-Bgroup_by: idAlertmanager的实现-收敛分组抑制静默延时消除了冗余的告警Alertmanager的实现-抑制主机1挂掉主机1的MySQL服务挂掉主机1挂掉alertname=mysql_uptime server=server-A alertname=server_uptime server=server-A alertname=server_uptime server=server-A server_uptime 抑制mysql_uptimeAler

8、tmanager的实现-抑制Alertmanager的实现-收敛分组抑制静默延时Alertmanager的实现-静默阻止发送可预期的告警一堆的告警(实例1,实例2,实例3)静默实例1一堆的告警(实例2,实例3)alertname=qps_more_than_3000 id=mysql-A alertname=tps_more_than_2000 id=mysql-A alertname=thread_running_more_than_200 id=mysql-A alertname=thread_running_more_than_200 id=mysql-B”静默mysql-A的告警ale

9、rtname=thread_running_more_than_20 id=mysql- B”Alertmanager的实现-静默Alertmanager的实现-收敛分组抑制静默延时Alertmanager的实现-延时不希望频繁的收到重复的告警消息怎么办?Repeat interval需要及时发送告警消息?Group interval故障刚发生时,接连收到几个告警消息怎么办?Group waitAlertmanager的实现架构对接收敛配置可 用 性分组A:a1,a2,a3 分组B:b1,b2a1a2a1a2Group wait:5sGroup interval:5mRepeat interv

10、al:60ma1a2a1a25s5m55mb1b2b1b2b1b2Alertmanager的实现-告警收敛5sa1a2 a1a25mb1b260mb1b25ma1a2 a35sa1a2a1a2 a3a1a2 a355ma1a2a3使用树形的路由配置,每个节点都定义了路 由规则,匹配路由规则的告警都发往同一个 接收者匹配条件接收者id=.+默认负责人id=mongo-a-zA-z0-9+MongoDB运维id=mysql-a-zA-Z0-9+MySQL运维group=group1业务1负责人group=group2业务2负责人Alertmanager的实现-配置route:receiver: d

11、efault-receiver group_wait: 5s group_interval: 5mrepeat_interval: 1h group_by: db_type routes:receiver: mongo_ops_receiver group_wait: 10smatch_re:service: mongo-a-zA-Z0-9+receiver: mysql_ops_receiver group_by: mysql_idmatch:group:group1Alertmanager的实现-配置Alertmanager的实现架构对接收敛配置可 用 性microservice1micr

12、oservice2microservice3microservice1microservice2microservice3prometheusprometheusalertmanageralertmanagerGossipAlertmanager的实现-可用性一.告警的选型二.Alertmanager的实现 三.Alertmanager的实践录CONTENTSAlertmanager的实践架构调度层级SREalertmanagerWechatEmail管理界面分组/抑制/收敛显示核心区HAagentagent采集采集MySQLMySQLMongo受管区APIprometheusAlertmanager的实践-架构Alertmanager的实践架构调度层级SREAlertmanager的实践-调度层级监控管理端监控客户端受管服务opsAlertmanagerPrometheuseAlertmanager的实践架构调度层级SREAlertmanager的实践-SREGoogle SRE 对监控系统的建议报警信息应由系统自动解决,仅当需要的时候才通知用户收到报警的用户需要立即执行某种操作,以解决已发生的 问题或避免即将发生的问题A

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论