分布式监控报警平台Centreon之:Centreon简介

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介:

一、Centreon概述

Centreon是一款功能强大的分布式IT监控系统,它通过第三方组件可以实现对网络、操作系统和应用程序的监控:首先,它是开源的,我们可以免费使用它;其次,它的底层采用nagios作为监控软件,同时nagios通过ndoutil模块将监控到的数据定时写入数据库中,而Centreon实时从数据库读取该数据并通过Web界面展现监控数据;,最后,我们可以通过Centreon管理和配置nagios,或者说Centreon就是nagios的一个管理配置工具,通过Centreon提供的Web配置界面,可以轻松完成nagios的各种繁琐配置。

此外,Centreon还支持NRPE、SNMP、NSClient等插件,可以通过这些插件构建分布式的监控报警系统。

二、 Centreon的特点

Centreon作为一款优秀的IT监控软件,具有如下显著特点和优点:

  1.    采用web方式配置nagios,通过web界面即可完全控制nagios,可以轻松添加和管理上千台主机和服务。

  2. 支持主机模板和服务模板,并且自动建立关联服务。

  3. 支持多节点的分布式监控,对于远程节点可采用NRPE、SNMP、NSClient等方式监控私有服务。

  4. 支持ACL权限管理,可以给不同用户设置不同的管理权限,多个用户可以管理不同主机和服务,互不影响。

  5. 详细的报表统计功能和日志管理功能,可以查看某个时间段某个服务或主机的运行状态、故障率等。

  6. 模块化管理,可根据需要定制自己的模块,同时支持第三方监控数据接入。

三、 Centreon的结构

一个典型的Centreon监控系统一般有四大部分组成,分别是nagios、centstorage、centcore和ndoutils,简单介绍如下:

  1. nagios是Centreon的底层监控引擎,主要完成监控报警系统所需的各项功能,是Centreon监控系统的核心。另外,Centreon还支持Centreon Engine、Icinga等监控引擎。本章采用nagios监控引擎进行介绍。

  2. centstorage是一个数据存储模块,它主要用于将日志数据及RRDtool生成的数据存储到数据库中,以供用户查询日志数据并快速生成曲线图,更主要的是nagios可以随时通过查看数据库中的记录更新监控状态。

  3. centcore主要用于cnetreon的分布式监控系统中,在系统中centcore是一个基于perl的守护进程,主要负责中心服务器(central server)和扩展节点(pollers)间的通信和数据同步等操作,例如centcore可以在中心服务器上执行对远程扩展节点上nagios服务的启动、关闭和重启操作,还可以运行、更新扩展节点上nagios的配置文件。

  4. ndoutils是将nagios与数据库进行连接的工具,它可以将nagios的实时状态写入数据库,以供其他程序去调用,最终可以实现在一个控制台上完成所有扩展节点的数据入库操作。


在介绍了Centreon监控系统的基本组成以后,下面重点看看每个组成部分是如何协调工作的,如下图1所示。

wKioL1RkRj6gypgDAAFhX4pdRuc772.jpg

图1 典型的Centreon监控系统的内部工作原理


图1主要展示了Centreon每个组成部分是如何工作的,在组织结构上,一般情况下,Centreon Web、Centrstorage、Centcore和Ndo2DB位于中心服务器上,而Nagios和Ndomod可以位于一台独立的扩展节点(pollers)上,也可以位于中心服务器上。在分布式监控环境中,Nagios和Ndomod都位于远程的一个扩展节点上,此图没有展示Centreon的分布式监控构架,这个将后面详细介绍。


为了能使大家快速了解Centreon的内部工作原理,我们将图1分为三条线来介绍,第一条线:Centreon Web--->Centcore---> Centstorage--->db---> Centreon Web,Centreon Web就是Centreon的Web配置管理界面,在Web配置管理界面中配置好主机和服务后,会生成相应的配置文件,然后Centcore会去读取这些配置文件并结合相关Nagios插件将数据发送到Nagios监控引擎,并生成相关日志文件和rrds文件,而Centstorage模块会及时收集这些日志信息及rrds数据并最终将这些数据存入数据库中,以供Centreon Web展示调用。


接着是第二条线:Nagios---> Centstorage--->db---> Centreon Web,在本地或远程的扩展节点中Nagios监控引擎会产生日志文件和rrds文件,这些文件定期被Centstorage读取并最终存储在数据库中,以供Centreon Web读取。


最后一条线:Nagios(Ndomod)---> Ndo2DB--->db---> Centreon Web,这一条线将Nagios实时监控状态写入数据库,首先由在本地或远程扩展节点上的Ndomod进程将Nagios监控状态通过Ndo2DB模块写入数据库,最后Centreon Web会定期调用此db库,这样监控系统中各个主机或服务的监控状态就被实时展示出来了。


通过对这三条线的描述,Centreon内部工作过程就变得非常清晰了!













本文转自南非蚂蚁51CTO博客,原文链接: http://blog.51cto.com/ixdba/1576028,如需转载请自行联系原作者






相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
15天前
|
存储 监控 固态存储
【vSAN分布式存储服务器数据恢复】VMware vSphere vSAN 分布式存储虚拟化平台VMDK文件1KB问题数据恢复案例
在一例vSAN分布式存储故障中,因替换故障闪存盘后磁盘组失效,一台采用RAID0策略且未使用置备的虚拟机VMDK文件受损,仅余1KB大小。经分析发现,该VMDK文件与内部虚拟对象关联失效导致。恢复方案包括定位虚拟对象及组件的具体物理位置,解析分配空间,并手动重组RAID0结构以恢复数据。此案例强调了深入理解vSAN分布式存储机制的重要性,以及定制化数据恢复方案的有效性。
40 5
|
2月前
|
机器学习/深度学习 人工智能 Shell
人工智能平台PAI操作报错合集之在分布式训练过程中遇到报错,是什么原因
阿里云人工智能平台PAI是一个功能强大、易于使用的AI开发平台,旨在降低AI开发门槛,加速创新,助力企业和开发者高效构建、部署和管理人工智能应用。其中包含了一系列相互协同的产品与服务,共同构成一个完整的人工智能开发与应用生态系统。以下是对PAI产品使用合集的概述,涵盖数据处理、模型开发、训练加速、模型部署及管理等多个环节。
|
6天前
|
数据库 C++ Ruby
为什么你应该选择分布式平台与微服务?
为什么你应该选择分布式平台与微服务?
|
21天前
|
消息中间件 Java Kafka
"Kafka快速上手:从环境搭建到Java Producer与Consumer实战,轻松掌握分布式流处理平台"
【8月更文挑战第10天】Apache Kafka作为分布式流处理平台的领头羊,凭借其高吞吐量、可扩展性和容错性,在大数据处理、实时日志收集及消息队列领域表现卓越。初学者需掌握Kafka基本概念与操作。Kafka的核心组件包括Producer(生产者)、Broker(服务器)和Consumer(消费者)。Producer发送消息到Topic,Broker负责存储与转发,Consumer则读取这些消息。首先确保已安装Java和Kafka,并启动服务。接着可通过命令行创建Topic,并使用提供的Java API实现Producer发送消息和Consumer读取消息的功能。
40 8
|
2月前
|
存储 缓存 分布式计算
高并发架构设计三大利器:缓存、限流和降级问题之缓存的应对策略问题如何解决
高并发架构设计三大利器:缓存、限流和降级问题之缓存的应对策略问题如何解决
|
24天前
|
SQL 监控 分布式数据库
【解锁数据库监控的神秘力量!】OceanBase社区版与Zabbix的完美邂逅 —— 揭秘分布式数据库监控的终极奥秘!
【8月更文挑战第7天】随着OceanBase社区版的普及,企业广泛采用这一高性能、高可用的分布式数据库。为保障系统稳定,使用成熟的Zabbix监控工具对其进行全方位监控至关重要。本文通过实例介绍如何在Zabbix中配置监控OceanBase的方法,包括创建监控模板、添加监控项(如TPS)、设置触发器及图形展示,并提供示例脚本帮助快速上手。通过这些步骤,可以有效监控OceanBase状态,确保业务连续性。
39 0
|
3月前
|
机器学习/深度学习 人工智能 自然语言处理
人工智能平台PAI产品使用合集之如何配置cluster系统自动生成分布式参数
阿里云人工智能平台PAI是一个功能强大、易于使用的AI开发平台,旨在降低AI开发门槛,加速创新,助力企业和开发者高效构建、部署和管理人工智能应用。其中包含了一系列相互协同的产品与服务,共同构成一个完整的人工智能开发与应用生态系统。以下是对PAI产品使用合集的概述,涵盖数据处理、模型开发、训练加速、模型部署及管理等多个环节。
|
2月前
|
机器学习/深度学习 存储 分布式计算
PAI机器学习平台如何进行分布式训练?
【7月更文挑战第1天】PAI机器学习平台如何进行分布式训练?
57 1
|
3月前
|
数据采集 JavaScript Java
一款分布式爬虫管理平台,支持多种语言和框架
项目介绍 Crawlab —— 一个基于 Golang 的分布式爬虫管理平台,支持Python、NodeJS、Go、Java、PHP 等多种编程语言以及多种爬虫框架。 主要功能:
|
3月前
|
存储 搜索推荐 Java
微服务SpringCloud ES分布式全文搜索引擎简介 下载安装及简单操作入门
微服务SpringCloud ES分布式全文搜索引擎简介 下载安装及简单操作入门
46 2
下一篇
云函数