2020年十大开源Linux监控工具

前言

所有使用技术力量的组织都在努力的一个方面是能够交流计算机系统及其上运行的应用程序如何工作的能力。知道事情没有按预期进行,实际上可以提高性能并减少故障排除时间。您需要一些工具成为最好的朋友,以帮助您成功完成这一明智的任务。因此,有许多工具可用于收集和处理网络设备和服务器(物理或虚拟)中正在发生的事情。

为使基础结构保持最新,请考虑可用于基础结构的最佳开源监视工具。

1. LibreNMS

LibreNMS是基于PHP / MySQL / SNMP的自动发现网络监视器,它包括对广泛的网络硬件和操作系统的支持,包括Cisco,Linux,FreeBSD,Juniper,Brocade,Foundry和HP。网络设备和服务器的理想选择。

LibreNMS功能

libreNMS的优点在于可以自动检测到它。您无需告诉设备是基于Cisco,Juniper,Windows还是Linux的。它使用诸如CDP,FDP,LLDP,OSPF,BGP,SNMP或ARP之类的协议来自动收集此信息,例如超级按钮。

它走得更远,发现路由器或交换机接口。这是非常令人印象深刻的。它还尝试绘制网络连接详细信息,但需要用户帮助。

警报

像大多数监视工具一样,libreNMS也具有高度可定制的监视功能。

可扩展

随着网络的发展,其分布式轮询功能可实现系统的水平扩展。 LibreNMS具有计费系统。是的,此工具只有一个。这可以通过根据使用情况或流量为网络上的端口生成带宽账单来完成。

行动应用程式

LibreNMS具有Andriod和Apple Apps,可用于查看和管理网络。这是新鲜空气。支持RADIUS,LDAP,Active Directory等或各种身份验证机制。

计费系统

根据使用情况或转发为网络上的端口生成带宽发票。

API整合

可以通过API访问集成到其他系统中。这个工具是野兽,因此最好查看引擎内部发生了什么。在一篇文章中,有关安全性的说明还不止于此。

安装指南:

如何在CentOS 8 / RHEL 8上安装LibreNMS

如何使用Nginx在Ubuntu 18.04 LTS上安装和配置LibreNMS

使用Letsencrypt和Nginx在CentOS 7上安装LibreNMS监视工具

2,纳吉奥斯

在Nagios.org中,“ Nagios监视整个IT基础架构,以确保系统,应用程序,服务和业务流程正常运行。如果发生故障,Nagios将与技术人员联系。在出现故障影响您的业务流程,最终用户或客户之前,向您发出警报并允许您启动补救过程。

该工具始于1999年,现在已经发展到包括所有其他所有集中于监视的产品。让我们来看看它具有哪些功能供您查看。

监控大量设备

Nagios提供了使用单个工具监视应用程序,服务,操作系统,网络协议,系统指标和基础架构组件的功能。这使它成为千篇一律的杰作,如果您想用一个工具涵盖各种服务和设备,这将是非常有益的。

多租户

许多利益相关者可以同时登录界面,从而提高了效率并改善了业务,因为感兴趣的利益相关者可以实时查看基础结构的状态。此外,视图可以限于特定于用户的网络,因此单个平台可以容纳多个网络。仅显示您的财产。

检举

Nagios通过生成可由第三方供应商插件扩展的报告来确保满足服务水平协议。这使其非常灵活且可自定义。

能见度

使用可显示所有内容的集中式Web界面可以轻松检测到中断。

通知事项

Nagios具有警告功能。警报可以通过SMS和电子邮件发送,从而简化了基础架构管理。

Nagios有趣的功能之一是如何允许事件处理程序失败的应用程序和服务自动重启。

安装指南:

在RHEL 8 / CentOS上安装和配置Nagios 4

3. Zabbix

在该站点上,“ Zabbix是终极的企业级软件,旨在监视从成千上万的服务器,虚拟机和网络设备实时收集的数百万个指标。” Solaris,IBM AIX。它具有监视应用程序,服务,数据库等的能力。

Zabbix具有许多功能,将简要描述。

监控任何东西

适用于所有类型的IT基础架构,服务,应用程序和资源的解决方案-

下一代Zabbix代理

Zabbix 4.4引入了一种新型的代理zabbix_agent2。该代理提供了广泛的新功能和高级监视功能

指标收集

您可以通过多种方式收集所需的指标。

  • 多平台Zabbix代理(Zabbix代理可以在各种受支持的平台上运行,例如Linux,UNIX,Windows,并从CPU,内存,磁盘和网络接口使用情况等设备中收集数据),
  • SNMP和IPMI代理
  • 用户服务的无代理监视
  • 自定义方法
  • 计算和汇总以及最终用户Web监视

设置中的错误检测

Zabbix可以使用定义的智能阈值自动检测传入指标流中的问题条件

更好的可视化演示

根据Zabbix开发人员的说法,该界面提供了多种方式来向用户呈现基础结构和环境的可视化概述。这些可以采用基于窗口小部件的仪表板,图形,网络地图和幻灯片形式。

通知事项

服务器可以发送消息或邮件。就警报而言,您可以做更多的事情。例如,您可以基于收件人角色或使用运行时和清单信息来自定义消息。此外,可以将消息配置为使用Zabbix事件关联机制来关注发生问题的根本原因。
使用模板:此功能使您可以在最流行的平台上使用数千个即用型模板,并使用配置模板监视数千个类似的设备。

可扩展性

Zabbix使用代理发送在位于中央Zabbix服务器上的环境中收集的信息。使用Zabbix代理可以大大简化Zabbix监视的环境的维护,并可以提高中央Zabbix服务器的性能。这显示了如何以分布式方式扩展监视系统。 Zabbix具有API,因此可用于与基础架构中的任何系统集成。

TimescaleDB官方支持

安装指南:

如何在Debian 10 Buster上安装Zabbix服务器4

如何在CentOS 8 / RHEL 8上安装Zabbix服务器

如何在CentOS 7上安装Zabbix Server 4.0

如何在Ubuntu 18.04和Ubuntu 16.04 LTS上安装Zabbix Server 4.0

4.普罗米修斯

Prometheus GitHub页面Cloud Native Computing Foundation项目,用于监视系统和服务。您可以按指定的时间间隔从已配置的目标收集指标,评估规则表达式,查看结果,并在观察到任何条件为真时触发警报。它适用于以机器为中心的监视和高度动态的面向服务的体系结构的监视。对于图形可视化,Prometheus支持诸如Grafana之类的工具用于数据可视化和导出。

普罗米修斯的主要特点

  • 多维数据模型(由一组度量标准名称和键/值维定义的时间序列)
  • 灵活的查询语言可利用此维度
  • 不依赖于分布式存储。单服务器节点是自治的
  • 时间序列收集通过HTTP上的拉模型进行
  • 通过中间网关支持时间序列推送
  • 通过服务发现或静态配置发现目标
  • 多种图表和仪表板支持模式
  • 支持分层和水平协作

安装指南:

在Debian 10/9和Ubuntu 20.04 / 18.04上安装Prometheus服务器

在CentOS 7 / Ubuntu 18.04上安装Prometheus服务器

如何在Debian 10(Buster)上安装Prometheus和node_exporter

5.网络数据

从他们那里 GitHub页面,Netdata是系统和应用程序的分发,实时,性能和运行状况监视。高度优化的监视代理,可安装在所有系统和容器上。使用高度交互的Web仪表板可提供对所有正在运行的系统(包括Web服务器,数据库和应用程序)的无与伦比的实时洞察力。 Netdata的另一个重要功能是,它可以在没有第三方组件的情况下自动运行,也可以与现有的监视工具链(例如Prometheus,Graphite,OpenTSDB,Kafka和Grafana)集成。

Netdata是您在所有系统上安装的监视代理。它是:

  • 指标收集器-用于系统和应用程序指标(包括Web服务器,数据库,容器等)
  • 时间序列数据库-全部存储在内存中(运行时请勿触摸磁盘)
  • Metric Visualizer-超快速,交互式,最先进的异常检测优化
  • 警报通知引擎–用于检测性能和可用性问题的高级看门狗

Netdata功能

一般特征

  • 1秒粒度-所有指标中可能的最高分辨率。
  • 无限指标-收集所有可用指标可得到更好的结果。
  • 单核1%CPU利用率–超快速且令人难以置信的优化。
  • 数MB的RAM-默认情况下使用25 MB的RAM。确定大小。
  • 零磁盘I / O-在执行期间不加载或保存任何东西(错误和访问日志除外)。
  • 零配置-自动检测所有内容,每台服务器最多收集10,000个指标。
  • 无需维护-只需运行,其余的将运行。
  • 零依赖关系-您自己的Web服务器,用于静态Web文件和Web API。
  • 无限扩展-可安装在所有服务器,容器,VM和IoT上。
  • 多种操作模式–自主主机监视(默认),无头数据收集器,正向代理,存储转发代理,中央多主机监视

健康监控和警报

高级警报–包括数百个开箱即用的警报!通知:不论您使用电报,Twilio,电子邮件,kavenegar,messagebird等,都涵盖在内。

可视化

  • 令人惊叹的交互式仪表板-深白色主题,易于使用的鼠标,触摸板,触摸屏
  • 惊人的快速可视化–即使在低端硬件上,每个指标也可以在不到1毫秒的时间内响应所有查询。
  • 可自定义-使用简单的HTML(无需javascript)构建自定义仪表板。
  • 可嵌入–将图表嵌入到网页,Wiki和博客中。

受监控

Netdata数据收集是可扩展的。您可以监视任何可以获取指标的内容。 APM(应用程序性能监视),系统资源,磁盘,文件系统,网络,DNS服务器,虚拟专用网络,代理,平衡器,加速器。

安装指南:

如何在RHEL 8 / CentOS 8上安装Netdata

如何在FreeBSD 12上安装NetBSD

在CentOS 7上安装netdata

6,歌手2

Icinga是一个监视系统,用于检查网络资源的可用性,将故障通知用户并生成性能数据以进行报告。它具有可扩展性和可扩展性,可让您监视多个位置的大型复杂环境。

Icinga 2功能

检举

Icinga报告模块是为处理Icinga 2和其他数据提供者收集的数据而创建的框架和基础。直接在Icinga Web界面中查看数据或导出为PDF,JSON或CSV格式。预定的报告使您可以定期通过电子邮件接收准备好的数据。

图形和指标

Icinga使用石墨制作图形和度量。这是一个时间序列数据库,用于存储收集的指标并通过Restful API和Web界面使它们可用。

可视化

显示地图,业务流程,证书监视和仪表板。

日志监控

您可以在基础架构中使用Logstash或Graylog。

通知脚本和界面。

有各种资源可用,例如,各种通知脚本,例如:

  • 电邮
  • 简讯
  • 传呼机(XMPP等)
  • 推特
  • IRC
  • 票务系统

指南:

在CentOS 8上安装和配置Icinga 2和Icinga Web 2

如何在Ubuntu 18.04 LTS上安装Icinga2监视工具

7.仙人掌

该工具是Cacti网站上的完整网络图形解决方案,旨在利用RRDTool的数据存储和图形功能,包括快速轮询器,高级图形模板,多种数据采集方法,并提供开箱即用的用户管理功能,所有功能都包装在一个直观且易于使用的界面中,适用于LAN大小的安装,甚至到包含数千个设备的复杂网络。 (Cacti.net,2020)。

仙人掌利用RRDtool的功能,RRDtool是一种开放源码的行业标准数据记录和图形系统,用于时间序列数据。这个功能强大的工具RRDtool可以轻松无缝地集成到脚本语言中,例如shell脚本,perl,python,ruby,lua和tcl应用程序。

仙人掌的主要特点是:

范本

图表模板使您可以对通用图表进行模板化和分组。常规图表中的所有字段都可以按图表进行模板化或指定。

资料收集

仙人掌具有数据输入功能。这使用户可以自由开发自定义脚本以从目标设​​备收集数据。尽管如此,SNMP是捆绑在一起的,这是一种行业数据收集技术。此外,Cacti附带了一个基于PHP的轮询器,该轮询器具有运行脚本,获取SNMP数据以及更新RRD文件的优点。

用户管理

仙人掌具有此丰富功能,可让您使用帐户设置多个用户。管理员可以灵活地为特定用户分配特定特权。

显示图

有三种显示图形的方法:树形视图,列表视图和预览视图。这三种观点都有优势。例如,您可以使用树视图创建图的层次结构并将这些图排列在树中。通过这种方式可以管理许多图形。按名称列出的列表视图是可用图表的列表,单击这些链接可以链接到实际图表。在最终的预览视图中,所有图形都直观地显示在一个大列表中,因此您可以快速查看图形图形。

范本

模板共有三种类型:数据模板,图形模板和主机模板。它减轻了在不使用任何模板的情况下定义所有数据源和图表的负担。数据模板提供了实际数据源的框架。主机模板将所有图形模板和特定设备类型的数据查询分组。更令人兴奋的是,您不必自己创建每个模板。模板可以立即使用,并且有一个非常简单的功能,可让您将此类模板导入仙人掌平台。

警告机制

可以将Cacti配置为在超过或未达到预定义的变量或阈值时发送电子邮件警报。这使您的夜晚变得很棒,因为当这些电话打进来时,您不必开始寻找问题。标识特定服务已关闭或正面临特定异常。

检举

仙人掌可以根据您的配置生成报告。

8,格拉法纳

Graphana 是一种工具,无论您将度量存储在哪里,都可以通过它查询,可视化,警报和了解它们。有机会与您的团队一起创建,探索和共享仪表板,以促进数据驱动的文化。简而言之,Grafana是适用于所有数据库的开源分析和监视解决方案。

特色功能

可视化

快速灵活的客户端图,具有很多选项。面板插件提供了多种可视化指标和日志的方式。

动态仪表板

使用模板变量创建动态,可重复使用的仪表板,这些模板变量显示在仪表板顶部。

检查指标

通过临时查询和动态明细浏览数据。拆分视图,并排比较不同的时间范围,查询和数据源。

检查日志

体验从具有标签过滤器的指标切换到日志的魔力。快速查找所有日志或实时流式传输。

警报

可视地定义最重要指标的警报规则。 Grafana不断评估并向Slack,PagerDuty,VictorOps和OpsGenie等系统发送通知。

混合数据源

在同一张图中混合使用不同的数据源!您可以为每个查询指定一个数据源。这也适用于自定义数据源。

注解

使用来自各种数据源的丰富事件来注释图。将鼠标悬停在事件上可以查看完整的事件元数据和标签。

临时过滤器

使用临时过滤器,可以即时创建新的键/值过滤器,并将其自动应用于使用该数据源的所有查询。

9.概览–专注于系统

Glance是GitHub页面https://github.com/nicolargo/glances上的跨平台监视工具,旨在通过curses或基于Web的界面显示大量监视信息。该信息根据用户界面的大小动态调整。

概览功能

跨平台

用Python编写的Glance几乎可以在任何平台上运行,包括GNU / Linux,FreeBSD,OS X和Windows。

写出来

将所有系统统计信息导出到CSV,InfluxDB,Cassandra,OpenTSDB,StatsD,ElasticSearch或RabbitMQ。 Glance还提供了专用的Grafana仪表板。

使用curses或基于Web的界面在最小的空间中显示最大的信息。

显示的信息可以根据设备的大小进行动态调整。

10.感觉

从那个 GitHub页面, Sensu是一个用于临时基础结构和分布式应用程序的开源监视工具。它是具有内置自动发现功能的基于代理的监视系统,非常适合云环境。使用服务检查来监视服务状态并收集遥测数据。

  • 服务器监控
  • 集装箱监控
  • 实时库存
  • 健康检查和自定义指标
  • 警报和事件管理
  • 自动修复和自定义工作流程
  • 200多个社区插件
  • 命名空间和RBAC
  • 基本认证

仪表板功能

  • 实时事件仪表板
  • 实时库存仪表板
  • Grafana数据源
  • 多租户仪表板(单个站点)

扩展名

  • 支持自定义插件/脚本语言(C,C ++,Golang,Ruby,Javascript / NodeJS,Rust,C#,Perl,Bash等)
  • 发现,清单和配置管理API
  • 基于令牌的API身份验证(JWT)

服务与支持

  • 盆景(托管Sensu资产指数和CDN)
  • 社区支持(讨论,懈怠)

请注意,有一个企业版的Sensu包含更多功能。进一步了解 企业常识链接

结论

您可以选择使用哪种工具。检查他们,并在一年中进行出色的监控。离开之前,请查看下面的其他甜蜜指南。

Sidebar