网络监控神器!这7大免费开源工具可别错过

简介:

编者按,在房地产市场,真正一锤定音的是地段,但在网络和服务器管理领域,可视性才是一切。如果你不了解自家的网络和服务器每天都在“密谋”着什么,早晚都得碰上大灾难。

幸运的是,市场上有大量工具(有收费的也有开源的)可以点亮我们的网络环境,保我们不受黑暗侵扰。

对普通用户来说,免费总比收费好,因此今天编辑决定把自己压箱底的开源工具分享出来,希望它们能守护好各位的网络。这 7 大免费工具可以满足用户从网络到服务器监控的各种需求,里面甚至还有交换机和路由器的备份。

网络监控神器!这 7 大免费开源工具可别错过

Cacti

此前如果要监控网络链路流量负载,大家一般会用到 MRTG 这个工具。上世纪 90 年代,Tobi Oetiker 抓住时机以轮询数据库为基础写了一个简单的绘图工具,这个工具监控起路由器流量非常好用,它就是 MRTG。经过一段时间的发展,Cacti 出现了,它扛起了 MRTG 的大旗,将流量监控能力提高到了一个新的高度。

Cacti 是一款 LAMP 应用,它能为各类数据绘制出一个完整的图形框架。在最新版本中,Cacti 采集数据的能力几乎无人可及,从数据中心冷却单元回液温度、滤波器体积再到 FLEXlm 许可证的应用都不在话下。如果设备或服务可以反馈数值型数据,它就能与 Cacti 融为一体。对于如何监控使用了 SNMP 协议的设备(Linux 和 Windows 服务器、路由器、交换机等),Cacti 已经有了模版,而针对其他硬件和软件的模板也在不断完善中。

虽然 Cacti 默认主攻 SNMP 协议设备,但本地 Perl 或 PHP 脚本照样可以使用。Cacti 的图形框架可以熟练的分离采集到的数据并将其绘制成离散实例图,方便重组现有数据并反馈到监视器中。除此之外,你还能通过点击和拖曳在图中观察特定的时间点和区域。

网络监控神器!这 7 大免费开源工具可别错过
只要能监控到的数据,Cacti 都能追踪到

只要用上 PHP Network Weathermap 插件,你就能创建自己的实时网络地图,实时掌握网络设备的链路使用率。当你的鼠标悬停在网络链接的描述上时,就会有完整的图像出现。听说,许多地方都可以用到Cacti,比如,把一台 42 寸的 LCD 显示器挂在墙上,让员工一眼就能看到网络的利用情况和连接的状态。

Cacti 绝对是一款性能强悍且用途广泛的绘图和趋势工具,它除了能追踪一切,还有近乎无限的可定制能力,因此到底能不能挖掘出 Cacti 的最大潜力还得看你自己。

Nagios

Nagios 是一款成熟的网络监控工具,它已经诞生多年且处在不断开发中。用 C 语言编写的 Nagios 只要搭配监控套件使用,就能满足大多数网络和系统监控人员的需求。Nagios 后端稳固且拥有流畅直观的 Web 图形用户界面。

与 Cacti 一样,Nagios 背后有一个活跃的社群,它能用到的插件资源也相当丰富。配合 WebInject 使用,你就能完成对服务器、网络服务和连接等的实时监控。笔者主要用 Nagios 监控服务器磁盘空间、RAM、CPU 和 FLEXlm 许可证利用率、服务器温度、WAN 和网络连接延迟等。此外,它还能保证 Web 服务器不但能回答 HTTP 查询,还能反馈期望页面。

没有通知提醒的网络和服务器监控无疑是不完整的,Nagios 就有一套 email/短信通知引擎,同时还能通过升级来获取智能通知能力(在对的时间通知对的人),如果使用得当绝对是超级杀手锏。除此之外,笔者还将 Nagios 与 Jabber(即时通讯服务器)进行了整合,有了即时通讯、email 和短信三种方案,再也不怕错过通知了。借助流畅的 Web 图形用户界面,用户还能快速暂停通知或发现问题,同时它还能记录管理员留下的便条。

网络监控神器!这 7 大免费开源工具可别错过
Nagios 对初学者来说有些困难,但复杂的配置也是它的力量来源

如果以上这些还不够你用,Nagios 还有映射功能,它能按网络上的位置将被监控设备有逻辑的呈现在监视器上,同时用彩色编码标出存在的问题。

不过 Nagios 也有缺点,它配置起来实在太复杂了,至少对初学者来说是挺费时间的。不过,如果你掌握了标准的 Linux/Unix 配置文档,就会觉得一切都挺简单。与其他工具一样,Nagios 功能繁多,但想用好这些功能也得有相对应的能力。

在这里我想说的是,别因为 Nagios 的复杂性而气馁,玩转了它之后能省下的时间简直不可限量。此外,Nagios 上的预警系统绝对值得一用,所以花点时间好好学学吧。

Icinga

Icinga 起初是 Nagios 的一个分支,但最近被重新编写成了 Icinga 2。眼下,两个版本都还处在不断开发中,Icinga 1.x 可以直接反向兼容 Nagios 插件和配置。Icinga 2 则是做减法得来的,它还能提供分布式监控和多线程框架,这是 Nagios 或 Icinga 1 所不具备的。你可以从 Nagios 迁移到 Icinga 1,然后再迁移到 Icinga 2。

与 Nagios 一样,Icinga 几乎也能通吃所有设备,搭配 SNMP、定制插件和扩展使用效果更佳。

网络监控神器!这 7 大免费开源工具可别错过
Icinga 提供全局监控和警告框架,只是在 Web UI 上与 Nagios 有所不同

Icinga 有多款 Web UI,它与 Nagios 的不同主要是配置,用户通过 Web UI 就能搞定,省去了麻烦的配置文档。对于那些在命令行之外管理配置的人来说,这是个重大利好。

Icinga 融入了多款绘图和监控套件(如 PNP4Nagios、inGraph 和 Graphite),可视化性能绝对可靠。此外,Icinga 还拥有扩展报告功能。

NeDi

如果你搜寻网络上的设备时还需要远程登录交换机并进行 MAC 地址查询,或者说你希望知道某台设备身处何方,那么 NeDi 绝对是个好选择。

NeDi 是一款 LAMP 应用,它会对网络交换机上的 MAC 地址和 APR 映射表进行筛查,在本地数据库给发现的每个设备编目。虽然这款工具不太有名,但对于那些设备一直处在移动中的公司网络来说,它用起来确实非常方便。

你可以直接登陆 NeDi 的 Web 图形用户界面并通过 MAC 地址、IP 地址或 DNS 域名来搜索交换机、交换机端口或任何设备的无线 AP。NeDi 会尽可能多的从它遇到的网络设备上采集信息,并把序列号、硬件和软件版本号、当前的温度、模块配置等给记录下来。你甚至可以用 NeDi 标示出被盗或丢失设备的 MAC 地址。如果这些设备重新在网络上露面,NeDi 会自动通知用户。

网络监控神器!这 7 大免费开源工具可别错过
NeDi 会一直游走在网络中并给设备编目

发现设备是定时任务,而配置则更加直截了当,它自带一个配置文档,用户可以根据需求进行定制,包括使用正规则表达式或网络边界定义跳过某个设备。如果你使用的是 MPLS 网络或由原先的界限分隔的网络,甚至可以直接插入设备的种子列表来查询。NeDi 通常会使用 CDP 协定或链路层发现协定,在网络中穿梭时它会顺带发现新的交换机和路由器,随后连上这些设备手机信息。一旦搞定了初始设置,运行发现任务就会变的相当快。

其实 NeDi 与 Cacti 已经实现了一定程度的融合,如果给 Cacti 提供可用的增速,还能直接调用 Cacti 的图形框架。

Ntop

Ntop 计划,也就是传说中的 Ntopng,已经陆陆续续开发了十年。它是一款顶尖的网络流量监控工具,Web 图形用户界面简洁且顺滑。它使用 C 语言编写且完全独立,你只需要运行配置,就能监控某个特定网络接口的单一进程,就这么简单。

Ntop 提供了简单易懂的图形和表格来显示当前和过去的网络流量,包括协议、源、目的地以及特定交易的历史,甚至两端的主机。此外,你还会发现广泛的网络利用率图表、实时地图和趋势,以及针对各种附加件(例如NetFlow和sFlow)的插件框架。这里甚至还有专门嵌入到 Ntop 的硬件监控器 Nbox。

Ntop 甚至用上了轻量级 Lua API 框架,通过脚本语言就能支持扩展。Ntop 还可以将主机数据存储在 RRD 文件中,以支持持久的数据采集。

网络监控神器!这 7 大免费开源工具可别错过
Ntop 是一款数据包嗅探工具

Ntop 最便捷的用途就是现场流量检查。当你发现自己的某个 Cacti PHP Weathermap 突然显示红色的网络链接集时,就意味着这些链接的利用率超过了 85%,但原因却不得而知。只要切换到 Ntopng 程序来监控该网络段,就可以查看最高流量消耗者每分钟的报表,并立即获知到底哪个主机在占用流量。

这种可视性算得上是无价之宝了,而且唾手可得。从本质上来讲,你可以在被配置成交换机级别的任何端口运行 Ntopng,以便监控任何端口或者 VLAN。

Zabbix

Zabbix 是一款全面的网络和系统监控工具,它将多个功能集成到了一个基于 Web 的控制台。它可以配置为监控和采集来自各种服务器和网络设备的数据,为每个目标提供服务和性能监控。

Zabbix 可与运行在监控系统上的代理协同工作,它也可以使用 SNMP 或其他监控方法(如对开放服务 SMTP 和 HTTP 的远程检查),这样无需代理就能运行。它支持 VMware 和其他虚拟化管理程序,并可生成关于管理程序性能和活动的深度数据。此外,Zabbix 还可以监控 Java 应用程序服务器、Web 服务和数据库等。

用户可以手动或通过自动发现过程添加主机。一组广泛的默认模版集适用于最常见的用例,例如 Linux、FreeBSD 和 Windows 服务器。一些知名服务(如 SMTP 和 HTTP),以及 ICMP 和 IPMI 设备也可进行详细的硬件监控。此外,使用 Perl、Python 或几乎任何语言编写的自定义检查也可以整合进 Zabbix。

网络监控神器!这 7 大免费开源工具可别错过
监控服务器和网络时,Zabbix 用到了一个巨大的工具集

Zabbix 还能提供可定制的仪表盘及 Web 用户图形界面来突显最关键的组件。通知和升级可以作为自定义操作添加到主机或主机组。你还可以将操作配置为触发远程命令,当观察到某个事件达到一定标准,就会自动在被监控的主机运行脚本。

Zabbix 会以图形形式显示性能数据,如网络数据吞吐量和 CPU 使用率,用户还可以用定制的显示方式收集它们。此外,Zabbix 支持用定制地图、屏幕及幻灯片来显示被监控设备的当前状态。

开始阶段 Zabbix 用起来很复杂,但谨慎使用模版和自动发现功能可以缓解整合时的麻烦。此外,除了可安装的工具包,Zabbix 还可以充当几种流行管理程序的虚拟设备。

Observium

Observium 是一个网络和主机监控器,它可以为系统扫描位置范围并使用通用 SNMP 登录凭证来监控系统。作为一款 LAMP 应用,Observium 设置和配置起来比较容易,只需安装常见的 Apache、PHP、MySQL、数据库创建和 Apache 配置等。安装完成后,它就成了自己的服务器,自带专用 URL,而不是隶属于更大的 Web 树。

随后,你可以登录图形用户界面并开始添加主机和网络、自动发现范围和 SNMP 数据等。下一步就是让 Observium 在整个网络穿行,并采集每个系统的数据。Observium 还可以通过 CDP、LLDP 或 FDP 发现网络设备,主机代理则可以部署到 Linux 系统来帮助完成数据的采集。

网络监控神器!这 7 大免费开源工具可别错过
Observium 结合了系统网络监控与性能趋势分析

所有这些数据都会呈现在易用的用户界面上,它能提供大量统计数据、图表和图形,其中包括 ping 和 SNMP 响应时间,以及 IP 输出、分片、数据包数量等。根据设备的不同,这些数据可以用于每个端口,也包括模块化设备。

对服务器来说,Observium 会显示 CPU、RAM、存储、swap、温度和事件日志状态。你还可以将数据收集和服务的性能图表进行整合,包括 Apache、MySQL、BIND、Memcached 和 Postfix等。

Observium 是一款超棒的 VM 工具,因此它也可以迅速成为监控服务器和网络状态信息的常用工具,该工具可以给各种规模的网络带来自动发现和图表功能。

DIY

通常来说,IT 管理员认为他们不能越线,无论我们面对的是定制应用或“不受支持”的硬件,我们很多人都认为,如果监控工具无法立即处理它,也就意味着它无法处理了。但事实并非如此,只要多付出点努力,没有什么不能监控、登记,而且我们还能让它们更具可视性。

典型例子就是具有数据库后端的自定义应用,如 Web 商店或公司内部财务应用。管理层希望通过漂亮的图形和图表来描述数据的使用情况。举例来说,如果你已经在使用 Cacti,就有几种方法可以构建这种图表,比如构建简单的 Perl 或者 PHP 脚本在数据库运行查询功能,并将数据传输到 Cacti,或者使用私有 MIB(管理信息库)调用 SNMP 数据库服务器。这完全可以做到,并且很容易就能完成。

如果是不受支持的硬件,只要它使用 SNMP,就很容易获取你需要的数据,但可能需要费点劲。只要你有正确的 MIB 来查询,随后就可以使用这些信息来编写或修改插件来采集这些数据。在很多情况下,你甚至可以使用标准 SNMP 整合你的云服务到这种监控中,当然也可以通过云供应商提供的 API。虽然你有云服务,但并不意味着你应该将所有监控交给云供应商。因为它们可能不像你一样了解你的应用和服务堆栈。

对普通技术人员来说,让这些工具运行起来并不困难,因为这些工具通常有针对 Linux 的数据包可供下载。在某些情况下,它们还可被预先配置为虚拟服务器。配置和调整这些工具可能需要一些时间,但最初并不难。无论怎么说,这些工具绝对值得尝试。

无论你最终会用到哪款工具,至少都能获得一个全年无休搞监控的好工具。虽然有些工具用起来稍显困难,但相信我,前期投入的时间绝对亏不了。此外,记得在另一个服务器上运行一组小型监控工具来盯着主监控服务器。


本文作者:大壮旅

来源:51CTO

目录
相关文章
|
21天前
|
数据采集 人工智能 自然语言处理
FireCrawl:开源 AI 网络爬虫工具,自动爬取网站及子页面内容,预处理为结构化数据
FireCrawl 是一款开源的 AI 网络爬虫工具,专为处理动态网页内容、自动爬取网站及子页面而设计,支持多种数据提取和输出格式。
130 18
FireCrawl:开源 AI 网络爬虫工具,自动爬取网站及子页面内容,预处理为结构化数据
|
29天前
|
存储 安全 物联网
浅析Kismet:无线网络监测与分析工具
Kismet是一款开源的无线网络监测和入侵检测系统(IDS),支持Wi-Fi、Bluetooth、ZigBee等协议,具备被动监听、实时数据分析、地理定位等功能。广泛应用于安全审计、网络优化和频谱管理。本文介绍其安装配置、基本操作及高级应用技巧,帮助用户掌握这一强大的无线网络安全工具。
65 9
浅析Kismet:无线网络监测与分析工具
|
15天前
|
网络协议 安全 测试技术
Nping工具详解:网络工程师的瑞士军刀
### Nping工具详解:网络工程师的瑞士军刀 Nping是Nmap项目的一部分,支持TCP、UDP、ICMP和ARP等多种协议,用于生成和分析网络数据包。它提供灵活的命令行界面,适用于网络探测、安全测试和故障排除。本文介绍Nping的基础与高级用法,包括发送不同类型的网络请求、自定义TCP标志位、路由跟踪等,并通过实战案例展示其应用。掌握Nping有助于更好地理解和管理网络环境。 (239字符)
49 8
|
2月前
|
安全 Windows
【Azure Cloud Service】在Windows系统中抓取网络包 ( 不需要另外安全抓包工具)
通常,在生产环境中,为了保证系统环境的安全和纯粹,是不建议安装其它软件或排查工具(如果可以安装,也是需要走审批流程)。 本文将介绍一种,不用安装Wireshark / tcpdump 等工具,使用Windows系统自带的 netsh trace 命令来获取网络包的步骤
93 32
|
2月前
|
机器学习/深度学习
NeurIPS 2024:标签噪声下图神经网络有了首个综合基准库,还开源
NoisyGL是首个针对标签噪声下图神经网络(GLN)的综合基准库,由浙江大学和阿里巴巴集团的研究人员开发。该基准库旨在解决现有GLN研究中因数据集选择、划分及预处理技术差异导致的缺乏统一标准问题,提供了一个公平、用户友好的平台,支持多维分析,有助于深入理解GLN方法在处理标签噪声时的表现。通过17种代表性方法在8个常用数据集上的广泛实验,NoisyGL揭示了多个关键发现,推动了GLN领域的进步。尽管如此,NoisyGL目前主要适用于同质图,对异质图的支持有限。
50 7
|
2月前
|
安全 网络安全 数据安全/隐私保护
访问控制列表(ACL)是网络安全管理的重要工具,用于定义和管理网络资源的访问权限。
访问控制列表(ACL)是网络安全管理的重要工具,用于定义和管理网络资源的访问权限。ACL 可应用于路由器、防火墙等设备,通过设定规则控制访问。其类型包括标准、扩展、基于时间和基于用户的ACL,广泛用于企业网络和互联网安全中,以增强安全性、实现精细管理和灵活调整。然而,ACL 也存在管理复杂和可能影响性能的局限性。未来,ACL 将趋向智能化和自动化,与其他安全技术结合,提供更全面的安全保障。
163 4
|
2月前
|
存储 网络协议 定位技术
OSPF路由汇总:优化网络的强大工具
OSPF路由汇总:优化网络的强大工具
83 1
|
2月前
|
安全 Linux 网络安全
nmap 是一款强大的开源网络扫描工具,能检测目标的开放端口、服务类型和操作系统等信息
nmap 是一款强大的开源网络扫描工具,能检测目标的开放端口、服务类型和操作系统等信息。本文分三部分介绍 nmap:基本原理、使用方法及技巧、实际应用及案例分析。通过学习 nmap,您可以更好地了解网络拓扑和安全状况,提升网络安全管理和渗透测试能力。
233 5
|
3月前
|
网络协议 物联网 虚拟化

热门文章

最新文章