分布式监控开发 01 需求

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了分布式监控开发 01 需求相关的知识,希望对你有一定的参考价值。

为什么要做监控? 

zabbix已经这么强大了,为什么要写一个监控

–熟悉IT监控系统的设计原理。
     自己写的时候肯定有很多事更zabbix相匹配的。
 
–开发一个简版的类Zabbix监控系统。为以后团队写监控做准备
     zabbix在2K以上数量机器的时候,明显会吃力。小米也正是由于这个自己写了open-falcon。那么如果以后我们遇到大数量的服务器的时候,完全也会基于公司的业务去写一个监控。
那么现在练练手也是完全OK的。
 
–掌握自动化开发项目的程序设计思路及架构解藕原则。
    
 

监控系统需求讨论

1.可监控常用系统服务、应用、网络设备等
2.一台主机上可监控多个不同服务、不同服务的监控间隔可不同
3.同一个服务在不同主机上的监控间隔、报警阈值可不同
4.可以批量的给一批主机添加、删除、修改要监控的服务
5.告警级别:
  • 不同的服务 因为业务重要程度不同,如果出了问题可以设置不同的报警级别
  • 可以指定特定的服务或告警级别的事件通知给特定的用户
  • 告警的升级设定

 

6.历史数据 的存储和优化
  • 实现用最少的空间占用量存储最多的有效数据
  • 做到1s中之内取出一台主机上所有服务的5年的监控数据(采用redis存取模糊点的方式)

7. 数据可视化,做出简洁美观的用户界面

8.实现单机支持5000+机器监控需求
 
9.实现主动以及被动监控方式
 
10.实现监控服务器的水平扩展
 
 

采用什么架构?

  1. mysql存储主机配置项对应关系
  2. redis存储历史数据
  3. 支持服务端主动的监控方式(SNMP/PING)以及客户端被动的发送数据
  4. 采用HTPP的通信方式
 

采用HTTP好处

1.接口设计简单

2.容易水平扩展做分布式

3.Socket稳定成熟,省去较多的通信维护精力。不用自己从socket底层写起

 

Http特性:

1.短连接

2.无状态

3.安全认证

4.被动通信

以上是关于分布式监控开发 01 需求的主要内容,如果未能解决你的问题,请参考以下文章

分布式监控开发 00 目录

Python之路,Day20 - 分布式监控系统开发

zabbix分布式监控与SNMP监控

Centos7 zabbix 分布式监控

wwwhj8828com系统安装简单,配置简单19908836661

如何通过 Scrapyd + ScrapydWeb 简单高效地部署和监控分布式爬虫项目