前言:运维监控对于企业来说是必不可少的,以确保必要的系统启动并运行。如果没有使用正确的工具进行正确的监控,反而会增加运维人员的工作。 不管你是小型还是企业级的配置,都不能忽视运维监控工具。即使您拥有个人网站,也需要正常运行时间监控。 有许多软件从开源到商业级别,可帮助您监控基础架构运行情况并发送告警通知。考虑到各种因素,要找到一个与您IT环境匹配的运维监控工具是非常难的。 目前国内大部分公司已经采用开源的监控软件,以下介绍下常见的十款开源监控软件,看看哪些对您有用。 Nagios Nagios成立于1999年,是提供从小型到企业级基础设施的监控解决方案的行业领导者之一。 Nagios能够监控几乎所有类型的组件,如网络协议、操作系统、系统指标、应用程序、服务、Web服务器、网站、中间件等。 Nagios在Core4监控引擎上运行,该引擎通过消耗更少的服务器资源来提供高水平的性能。 你可以利用Nagios来监控WebLogic、WebSphere、JBoss、Tomcat、Apache、URL、Nginx等。 特征可以展示整个IT建构视图事件处理程序能够自动重启失败的应用程序多用户访问选择性监控客所关心的指标拥有超过100万用户的活跃社区可扩展架构 Zabbix Zabbix是一款出色的企业级软件,旨在监控从服务器、网络设备到Web应用程序和数据库的性能和可用性的一切。 Zabbix被全球数千家公司使用,包括DELL、Salesforce、ICANN、Orange等。 Zabbix是一种服务器代理系统架构,您必须在服务器(客户端)上安装代理,以由Zabbix服务器监控。但是,您不需要为FTP、SSH、HTTP、DNS等服务安装代理。 您可以在Linux、AIX、Windows、Solaris、MacOSX、FreeBSD、OpenBSD等上安装它。 特征通过JMX直接监控Java应用服务器VM监控允许VMWare、vCenter和vSpehere前端具有针对暴力攻击的自我保护自动化可以通过各种语言的脚本来完成,例如Ruby、Python、Perl、PHP、Java或shell脚本与Puppet、cfengine、Chef、bcfg2等其他系统管理工具集成 Checkmk Checkmk是一个高度可扩展的工具,可监控服务器、网络、云资产、数据库、容器、物联网等。它有两种模式可用。基础版完全开源并提供免费和无限制的监控。企业版附带附加功能。 特征几分钟内可以部署,自动化:高度自动化可实现非常广泛的监控范围并减少手动配置灵活的监控:开箱即用提供了超过1,900个官方集成。通过Checkmk代理、供应商API、SNMP或其他方式监控状态、指标、事件和日志可以监控Docker、Kubernetes、AWS和Azure适合监控具有完全可扩展的分布式监控功能的大型环境 PrometheusGrafana 开源解决方案Prometheus和Grafana,使用Prometheus从服务器、操作系统、应用程序中抓取指标,并使用Grafana将它们可视化。 有很多Prometheus导出器可以从Linux、Windows、数据库、路由器、消息系统、存储、API、Web应用程序、Kubernetes等获取指标。 Cacti Cacti是另一个可以安装在Linux或Windows操作系统上的开源网络监控工具。它连接到RRDTool,它可以生成与相关网络数据的图表。 特征可选择使用CDEF或Cacti内部的数据源图形的自动生成支持具有多个数据源的RRD(RoundRobinDatabase)文件,也可以使用存储在本地文件系统任意位置的RRD文件基于用户的管理和安全自定义数据收集脚本 OpeNMS OpenNMS可以使用JMX、WMI、SNMP、NRPE、XMLHTTP、JDBC、XML、JSON等收集系统指标。 可以发现网络中的第二层网络拓扑。它建立在事件驱动的架构之上,并支持Grafana。 OpenNMS内置了报表,这意味着您可以在漂亮的仪表板和图表中查看报告。总的来说,OpenNMS有一个出色的用户界面。 也可以在Docker中安装它。 特征:它专为Linux设计,但也支持Windows、Solaris和OSX。支持ipmi可定制的管理仪表板IPv4和IPv6支持事件可以通过电子邮件、SMS、XMPP和各种其他方法生成通知。使用OpenStreetMap、GoogleMaps或Mapquest显示节点和服务中断的地理节点地图 Lcinga Icinga始于2009年的NagiosFork,它更快、更易于配置、更舒适地扩展。 特征:监控网络服务、主机服务和服务器组件它使用Icinga2插件执行监控。支持事件处理程序和通知电话、短信、电话和电子邮件支持跨平台支持各种操作系统您可以在2个用户界面、经典UI和Icingaweb之间进行选择基于模板的报告 Netdata Netdata为系统和应用程序提供实时健康监控和性能故障排除。 Netdata快速高效,旨在在所有系统上运行而不会中断。通过数以千计的指标、交互式可视化和富有洞察力的健康警报,即时诊断基础架构中的异常情况。 Netdata是免费的开源软件,目前在物理系统、虚拟机、容器和物联网边缘设备上运行。 特征:监控指标多而广,每秒数据收集,同时并发监控数万个指标快速安装,需要资源少。一个自定义数据库引擎,可将最近的指标保存到RAM并将历史指标溢出到磁盘以进行长期存储。 MMonit 它可以在任何POSIX系统上运行,并使用大约1015MB的RAM,具体取决于您监控的主机数量。它适用于以下数据库系统:MySQL5。x或更高版本PostgreSQL8。4或更高版本SQLite3。x 如果进程终止,MMonit可以执行自动重启。因此,在有异常的情况下,它可以自动维修和维护。因此,系统将能够获得最大的正常运行时间。 特征在安装和设置方面既简单又节省时间。从受监控的主机收集关键数据,并通过分析收集的数据创建美观且易于理解的图表。它的用户界面简单、干净、响应迅速。它的UI可以重新排列以适应设备屏幕。管理和监控后台或守护进程。它可以自动处理错误情况,无需人工干预。监控进程、服务器、磁盘、文件、文件夹和云活动。远程控制服务。用于查询MMonit数据的HTTPRESTAPI。基于现有数据,我们可以使用其趋势预测功能来推断未来值。 LibreNMS LibreNMS是一个功能齐全的网络监控系统。它基于PHPMySQLSNMP。LibreMNS涵盖了广泛的操作系统和网络硬件。 它可以根据接口进行接口分组。使用SNMP、CDP、ARP、FDP、OSPF、LLDP、BGP可以自动发现整个网络。 特征这里使用了一个高度灵活和可靠的警报系统。因此,即时通知将通过电子邮件、IRC、Slack等弹出。另一个非常重要的功能是它能够根据使用情况在网络上生成带宽账单。可扩展。它为NfSen、collected、SmokePing、RANCID、Oxidized提供集成支持。它支持MySQL、HTTP、LDAP、Radius、ActiveDirectory的多种身份验证方法。支持以及适合移动设备的WebUI。