IT运维监控解决方案介绍

现状

?小公司/ 创业团队?< 500台服务器规模?

开源方案:Zabbix、Nagios、Cacti…?

云服务提供商:监控宝、oneAlert等

?BAT级别?> 10万台服务器?

投入大量的人力,内部自研,与业务严重耦合?没法作为产品推出

?中间阶层

无从可选

 

早期,选用Zabbix

?Zabbix是一款开源的企业级监控系统

?对其进行二次开发、封装、调优...

?为什么选择Zabbix

?Cacti

?Collectd

?RRDtool

?Nagios

?openTSDB

 

Zabbix实践思路

?测试ZabbixNode

?Zabbix代码优化

?使用模式优化

?独立部署多套Zabbix,通过API整合

 

Zabbix遇到的问题

?随着公司业务规模的快速发展

?用户“使用效率”低下,学习成本很高

?不具备水平扩展能力,无法支撑业务需求

?告警策略的维护、变更代价太大,导致运维人员深陷其中,无法自拔

?不利于自动化,不利于与运维平台等基础设施整合

------------------------------------------------------------------------------------------------

Open-Falcon

Open-Falcon是小米运维团队设计开发的一款互联网企业级监控系统

?提供最好用、最人性化的互联网企业级监控解决方案

?项目主页:http://open-falcon.com

?Github: https://github.com/xiaomi/open-falcon

?QQ讨论组:373249123

?微信公众号:OpenFalcon

 

社区贡献

?交换机监控

?https://github.com/gaochao1/swcollector

?Windows监控

https://github.com/freedomkk-qfeng/falcon-scripts/tree/master/windows_collect

?Agent宕机监控

https://github.com/freedomkk-qfeng/falcon-scripts/tree/master/agent_monitor

?Redis/memcached/rabbitmq监控

https://github.com/iambocai/falcon-monit-scripts

?MySQL 监控方案

https://github.com/open-falcon/mymon

 

典型案例

美团

?生产环境广泛应用,1万+agent

?集成服务树、支持ping监控、多机房架构支持、报警第二接收人支持

?正在开发openTSDB接口、query增加正则功能

赶集

?深度定制,用于大数据部门平台服务监控与自动运维,生产环境已上线

京东金融

?深度调研open-falcon

?正在开发测试drrs(一种分布式的time series data 存储组件)并适配falcon

 

内部 

agent
?负责机器数据采集
?自发现各项监控指标
?发送数据给transfer
?发送心跳信息给hbs
?执行自定义插件
?业务数据不要用插件采集!
?数据收集采用推还是拉的方式?

transfer
?对接收到的数据做合法性校验
?转发数据给graph和judge
?为什么要做这个统一的接入端?
?为什么要对数据做分片?
?数据分片方案,用一致性hash还是路由表?

judge
?对接收到的数据按照阈值进行判定
?达到阈值的数据产生相应的event
?触发式判定or 轮询?
?为什么要使用内存?

graph
?操作rrd文件,对数据进行存储和查询
?将多次操作合并后再flush磁盘
?将要flush到磁盘的数据,打散到每个时间片,降低IO消耗
?为什么用rrd而不是opentsdb之类的?

hbs
?提供接口给agent查询机器所需监控的端口、进程、要执行的插件列表等信息
?接收agent汇报的状态信息并写入数据库
?缓存用户配置的告警策略
?为什么要用hbs缓存策略列表?

query

?利用一致性hash算法,查询多个graph的数据并汇聚
?需要使用与transfer相同的hash算法及配置

各web端
?Dashboard负责绘图、展示、仪表盘等
?Uic负责管理组合人的对应关系
?Alarm-dashboard负责展示当前未恢复的告警
?用户在portal中配置告警策略
?Portal中的hostgroup一般是从CMDB中同步过来的!

Aggregator
目标:集群监控
?针对某个hostgroup的多个counter进行计算
?分子:$(c1) + $(c2) -$(c3)
?分母:可以是$# 或者数字或者$(d1) + $(d2) -$(d3)
计算结果
?封装成一个metricItem,再次push回open-falcon
为什么这么实现
?归一化的问题解决方案
?复用整个open-falcon的绘图展现、告警逻辑

Gateway——跨数据中心

接驳服务树(CMDB)
?开源服务器管理组件(服务树)
?监控对象通过服务树来管理
?服务器进出节点、监控自动变更

历史数据高可用
rrd-on-hbase
?绘图数据存储在hbase中,解决高可用的问题
?历史数据提供更详细粒度的查看
drrs(@京东金融)
?Distributed Round Robin Server
?面向中心公司,轻量级的历史数据存储方案,解决数据扩容的问题

智能告警
同比、环比
?Dashboard数据展示支持同比、环比
?告警判定引入同比、环比作为参考
动态阈值
?通过对历史数据的学习,生成动态的告警阈值
关联分析
?精准告警
?故障定位

SDK
七层
?Nginx
?统计cps、200、5xx、4xx、latency、availability、throughput
语言支持Java/C++/PHP/Python
?内置统计每个接口的cps、latency
?内置统计业务关注的指标的能力
框架支持
?resin、spring、flask…
统计类型
?Gauge/ Meter / Timer / Counter / Histogram

云监控
?服务端Host在公有云上
?无需客户安装、运维服务端
?支持namespace隔离、quota限额
?从根本上对不同用户的数据进行隔离
?优化监控的添加、管理、查看流程
?提升用户体验、提高用户使用效率

其他
?Callback功能增强,推进故障自动处理
?插件的管理支持多种方式(不仅限于git)
?Dashboard 增加用户登录认证
?告警排班/ 告警升级(@金山云)


Open-Falcon部署实践
?初始阶段
?所有的组件部署在一台物理机上即可
机器量级~ 500
?graph、judge、transfer三个组件拆分出来部署在1台服务器上
机器量级~ 1000
?graph、judge、transfer 增加到2~3个实例
?query拆分出来,部署2个实例
?dashboard 拆分出来部署
机器量级~ 10K
?graph、judge、transfer 增加到20个实例,graph尽量使用ssd磁盘
?query增加到5个实例
?dashboard 拆分出来,增加到3个实例

 

希望对您运维管理有帮助。



以上内容部分来自网络, 希望对您系统架构设计,软件研发有帮助。 其它您可能感兴趣的文章:

构建高效的研发与自动化运维
互联网数据库架构设计思路
移动开发一站式解决方案
某大型电商云平台实践
企业级应用架构模式N-Tier多层架构
某企业社交应用网络拓扑架构图
IT基础架构规划方案一(网络系统规划)
餐饮连锁公司IT信息化解决方案一

如有想了解更多软件研发 , 系统 IT集成 , 企业信息化,项目管理 等资讯,请关注我的微信订阅号:

 

作者:Petter Liu
出处:http://www.cnblogs.com/wintersun/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
该文章也同时发布在我的独立博客中-Petter Liu Blog

时间: 2024-08-02 02:37:16

IT运维监控解决方案介绍的相关文章

【解决方案】IDC、MA服务商IT运维监控解决方案

       文章摘自 pigoss 官网 http://www.netistate.com  如需转载,请标明出处! IDC与MA服务商现状 目前,大部分传统IDC服务商仍然处于卖场地.卖资源的阶段,通过租赁有限的场地和资源,同质化竞争和低价竞争愈演愈烈严重.如何为用户提供差异化增值IT运维服务成为新一代IDC的竞争目标. 同 样,大部分传统MA服务商的经营模式为提供维保服务,成熟.有经验的工程师便成为了众多MA服务商的重点争夺人才,人力成本不断攀升.技术人员巨大的人才 缺口,注定了专家级工程

生产性能运维监控之TOP介绍

****生产性能运维监控之TOP介绍**** TOP运维监控介绍:在日常性能测试或者生产运维工作中为了保证业务的准确性和及时性等各项业务与技术指标能满足日常操作与稳定运行,一般在工作工作会使用一些简易命令工具协助排查问题,例如排查CPU.内存.磁盘IO.网络.端口等性能故障,具体如下工具:我们习惯性的在linux操作系统中键入TOP命令来查看系统资源使用情况,如上图,通过top命令,可以看到对应现有环境资源使用情况,例如数据库压力大是select导致的还是update导致的,也可以看到对应哪台应

Storm流计算从入门到精通之技术篇(高并发策略、批处理事务、Trident精解、运维监控、企业场景)

对这个课程有兴趣的可以加我qq2059055336和我联系 Storm是什么? 为什么学习Storm? Storm是Twitter开源的分布式实时大数据处理框架,被业界称为实时版Hadoop. 随着越来越多的场景对Hadoop的MapReduce高延迟无法容忍,比如网站统计.推荐系统.预警系统.金融系统(高频交易.股票)等等, 大数据实时处理解决方案(流计算)的应用日趋广泛,目前已是分布式技术领域最新爆发点,而Storm更是流计算技术中的佼佼者和主流. 按照storm作者的说法,Storm对于实

企业运维监控平台架构设计与实现(ganglia篇)

一.Cacti/Nagios/Zabbix/centreon/Ganglia之抉择 1.cacti Cacti是一套基于PHP,MySQL,SNMP及RRDTool开发的网络流量监测图形分析工具. 简单的说Cacti 就是一个PHP 程序.它通过使用SNMP 协议获取远端网络设备和相关信息,(其实就是使用Net-SNMP 软件包的snmpget 和snmpwalk 命令获取)并通过RRDTOOL 工具绘图,通过PHP 程序展现出来.我们使用它可以展现出监控对象一段时间内的状态或者性能趋势图. 2

全新SaaS运维监控平台构建书

第一部分 引言 伴随的IT服务的发展,IT服务的概念也在发生着巨大的变化.IT运维服务已经由原来局限在用户自身环境下的IT服务,延伸到覆盖公用云.私有云.外包服务商等多纬度.全天候的SaaS运维模式, 从狭义理解,IT服务仅仅是为了解决信息系统出现的故障,在系统出现停顿的时候可以快速的恢复.而目前的IT服务已经包含了更多的内容,IT服务渗透在信息系统的整个生命周期之中.本文基于该理念,对IT服务系统的实现进行分析研究.文章基于网脊运维通SaaS(Software as aService)模式理念

Zabbix运维监控平台快速搭建实录

一.Zabbix运行架构 Zabbix是一个企业级的分布式开源监控解决方案.它能够监控各种服务器的健康型.网络的稳定性以及各种应用系统的可靠性.当监控出现异常时,Zabbix通过灵活i的告警策咯,可以为任何事件配置基于邮件.短信.微信等告警机制.而这所有的一切,都可以通过Zabbix提供的Web界面进行配置和操作,基于Web的前端页面还提供了出色的报告和数据可视化功能.这些功能和特性使运维人员可以非常轻松的搭建一套功能强大的运维监控管理平台. Zabbix的运行架构图如下: 从图中可以看出Zab

江西畅行高速IT运维监控平台--PIGOSS BSM

案例所属行业:高速公路行业 项目实施时间:2014年 1.1    项目背景     江西畅行高速工程(以下简称"畅行高速")与高速公路周边系统的建设基于用户的消费账户支付系统和结算系统.既包括高速公路的收费,也包括高速公路周边的连锁超市的消费,互联网业务为江西畅行高速周边服务. 目前,江西畅行高速进行网络建设和核心生产平台应用系统的建设.随着江西畅行高速信息化应用的不断推广,核心生产平台的稳定运行对项目的影响越来越大.随 着更多江西畅行高速业务系统上线运行和日常办公对业务系统的日益依

运维监控利器Nagios之:安装nagios

一.安装前准备 (1)创建nagios用户和用户组 [[email protected] ~]#useradd -s /sbin/nologin nagios [[email protected] ~]#mkdir /usr/local/nagios [[email protected] ~]#chown –R  nagios.nagios /usr/local/nagios (2)开启系统sendmail服务 在nagios监控服务器上开启sendmail服务的主要作用是让nagios在检测到

Open-falcon运维监控系统——微信接口二次开发

1.Open-falcon运维监控系统简介 OpenFalcon是一款由小米运维团队从互联网公司的需求出发, 根据多年的运维经验,结合市面上使用的一些运维监控系统的使用经验和反馈,开发的一套企业级.高可用.可扩展的开源监控解决方案.简单了使用一下Open-falcon运维监控,结合使用过的zabbix,cacti,nagios来说,觉得有以下几个优点: 支持用户主动push,可以结合一些业务需求采集数据,同时也支持用户自定义的插件. 支持策略模板,模板继承和覆盖,多种告警方式,支持callbac