想要更清晰的了解你的网络吗?没有比这几个免费的工具更好用的了。
网络和系统监控是一个很宽的范畴。有监控服务器、网络设备、应用正常工作的方案,也有跟踪这些系统和设备性能,提供趋势性能分析的解决方案。有些工具像个闹钟一样,当发现问题的时候就会报警,而另外的一些工具甚至可以在警报响起的时候触发一些动作。这里,收集了一些开源的工具,旨在解决上述的一些甚至大部分问题。
Cacti
Cacti是一个性能广泛的图表和趋势分析工具,可以用来跟踪并几乎可以绘制出任何可监测指标,描绘出图表。从硬盘的利用率到风扇的转速,在一个电脑管理系统中,只要是可以被监测的指标,Cacti都可以监测,并快速的转换成可视化的图表。
--------------------------------------分割线 --------------------------------------
RHEL6.4中使用Cacti+Spine监控主机实现发送邮件报警 http://www.linuxidc.com/Linux/2013-11/92795.htm
RHEL6.4中使用Cacti+Spine监控远程主机 http://www.linuxidc.com/Linux/2013-11/92796.htm
CentOS 5.5完整安装Cacti+Spine http://www.linuxidc.com/Linux/2011-12/49701.htm
CentOS 6下Cacti搭建文档 http://www.linuxidc.com/Linux/2013-06/86595.htm
RHEL5.9下Cacti监控部署详解 http://www.linuxidc.com/Linux/2013-06/85427.htm
CentOS 6.3 下Cacti 安装详解 http://www.linuxidc.com/Linux/2013-05/84279.htm
CentOS Linux下快速安装配置Cacti中文版 http://www.linuxidc.com/Linux/2013-03/81627.htm
--------------------------------------分割线 --------------------------------------
Nagios
Nagios是一个经典的老牌系统和网络监测工具。运行速度快,可靠,需要针对应用定制。Nagios对于初学者是一个挑战。但是它的极其复杂的配置正好也反应出它的强大,因为它几乎可以适用于任何监控任务。要说缺点的话就是不怎么耐看,但是其强劲的功能和可靠性弥补了这个缺点。
网络监控器Nagios全攻略 http://www.linuxidc.com/Linux/2013-07/87067.htm
Nagios搭建与配置详解 http://www.linuxidc.com/Linux/2013-05/84848.htm
Nginx环境下构建Nagios监控平台 http://www.linuxidc.com/Linux/2011-07/38112.htm
在RHEL5.3上配置基本的Nagios系统(使用Nagios-3.1.2) http://www.linuxidc.com/Linux/2011-07/38129.htm
CentOS 5.5+Nginx+Nagios监控端和被控端安装配置指南 http://www.linuxidc.com/Linux/2011-09/44018.htm
Ubuntu 13.10 Server 安装 Nagios Core 网络监控运用 http://www.linuxidc.com/Linux/2013-11/93047.htm
Icinga
Icinga 是一个正在重建的Nagios的分支,它提供了一个全面的监控和警报的框架,致力于设计一个像Nagios一样的开放和可扩展性的平台。但是和Nagios拥有不一样的Web界面。Icinga 1 和 Nagios非常的相近,不过Icinga 2就重写了。两个版本都能很好的兼容,而且,Nagios用户可以很轻松的转到Icinga 1平台。
NeDi
NeDi可能不如其他的工具一样闻名全世界,但它确是一个跟踪网络接入的一个强大的解决方案。它可以很流畅的运行网络基础设施和设备目录,保持对任何事件的跟踪。并且可以提供任意设备的当前地点,也包括历史地点。
NeDi可以被用于定位被偷的,或者是丢失掉的设备,只要设备出现在网络上。它甚至可以在地图上显示所有已发现的节点。并且很清晰的告诉人们网络是怎么互联的到物理设备端口的。
Observium
Observium 综合了系统和网路监控,在性能趋势监测上有很好的表现,它支持静态和动态发现来确认服务器和网络设备,利用多种监测方法,可以监测任何可用的指标。Web界面非常的整洁,易用。
就如我们看到的,Observium也可以在地图上显示任何被监测节点的实际地点。需要注意的是面板上关于活跃设备和警报的计数。
Zabbix
Zabbix 利用一系列的工具监测服务器和网络。Zabbix的监控代理支持大多数的操作系统,你可以被动的或者是使用外部检查,包括SNMP来监控主机和网络设备。你也会发现很多提醒和通知设施,和一个非常人性化的Web界面,适用于不同的面板,此外,Zabbix还拥有一些特殊的管理工具来监测Web应用和虚拟化的管理程序。
Zabbix 还可以提供详细的互联图,以便于我们了解某些对象是怎么连接的。这些图是可以定制的,并且,图也可以以被监测的服务器和主机的分组形式被创建。
一些Zabbix相关教程集合:
安装部署分布式监控系统Zabbix 2.06 http://www.linuxidc.com/Linux/2013-07/86942.htm
《安装部署分布式监控系统Zabbix 2.06》 http://www.linuxidc.com/Linux/2013-07/86942.htm
CentOS 6.3下Zabbix安装部署 http://www.linuxidc.com/Linux/2013-05/83786.htm
Zabbix分布式监控系统实践 http://www.linuxidc.com/Linux/2013-06/85758.htm
CentOS 6.3下Zabbix监控apache server-status http://www.linuxidc.com/Linux/2013-05/84740.htm
CentOS 6.3下Zabbix监控MySQL数据库参数 http://www.linuxidc.com/Linux/2013-05/84800.htm
Ntop
Ntop是一个数据包嗅探工具。有一个整洁的Web界面,用来显示被监测网络的实时数据。即时的网络数据通过一个高级的绘图工具可以可视化。主机数据流和与之对应的主机通信信息可以被实时的进行可视化显示。
在Red Hat Enterprise Linux 5.3安装NTOP http://www.linuxidc.com/Linux/2011-07/38130.htm
本文分别介绍了6款实用的开源监控工具,不仅可以对你的网络资源进行监控,还可以监控服务器、用户请求、网站性能等,给您网站提供全面的,一站式的指导。
1. Munin
Munin是一款开源网络资源监控工具,可以分析资源趋势、“刚刚是什么让性能死掉”方面的问题。可监控核心系统资源,包括内存、磁盘、CPU 占用、服务器应用如MySQL、Apache和Squid等。它使用起来非常方便,是一款即插即用型工具,并且提供了许多丰富的图表。
Munin是一款通过客户端——服务器架构收集数据并将其图形化的工具。Munin允许你跟踪主机的运行记录,就是所谓的节点,然后将它们发送到中央服务器,随后就能以图像形式展示它们。
目前,Munin的最新版本是Munin 2.0.11.1,大家可以从GitHub或SourceForge上下载该版本。
2.Pingdom
Pingdom是一家知名的监控服务提供公司,由Sam Nurmi创立,而Sam Nurmi曾是瑞典最大的网络托管公司Loopia的CEO。
使用Pingdom可以监控互联网上多个地方的网站和服务器,确保它们运行正常。除了提供网页加载速度、DNS、Ping和路由、FTP服务器、电子邮件等检查,也提供在线时间监控。Pingdom的检查和监控有收费也有免费的。只要注册就可以享受免费版监控,其缺点是只能监测1个站。
3.Graphite
Graphite是一个企业级的监控工具,使用Python编写,采用django框架。最初由Chris Davis在Orbitz工作时,作为一个辅助项目开发的,最终成一个基本的监控工具。
Graphite可用来收集服务器所有的及时状态、用户请求信息、Memcached命中率、RabbitMQ消息服务器的状态、Unix操作系统的负载状态。Graphite服务器大约每分钟需要有4800次更新操作,简单的文本协议和强大的绘图功能可以方便地扩展到任何需要监控的系统上。
Graphite将数据以图形的形式展现出来。它主要做两件事:存储时间序列数据、根据需要呈现数据的图形。目前,Graphite的最新版本是0.9.10,源码托管在launchpad.net上。
4.Ganglia
Ganglia是UC(University of California)Berkeley发起的一个开源集群监视项目,Ganglia是一个跨平台可扩展的,高性能计算系统下的分布式监控系统。它已被广泛地移植到各种操作系统和处理器架构上,目前在世界各地成千上万的集群中应用。
Ganglia Web 3.5.7版已经发布,托管在Sourceforge上。Ganglia的核心包含了gmond、gmetad以及一个Web前端。
Ganglia主要是用来监控系统性能,如:CPU、内存、硬盘利用率、I/O负载、网络流量情况等,通过曲线很容易见到每个节点的工作状态,对合理调整、分配系统资源,提高系统整体性能起到重要作用。
5.Nagios
Nagios原名为NetSaint,由Ethan Galstad开发并维护至今。Nagios是企业级的监控系统,能有效监控Windows、Linux和Unix的主机状态以及交换机路由器等网络设置,打印机等。
Nagios最大的特点就是能在系统或服务状态异常时发出邮件或短信报警,第一时间通知网站运维人员,在状态恢复后发出正常的邮件或短信通知。
6.collectd
collectd是一款用C语言开发的开源的性能监测工具,无需系统cron支持、简单易用。collectd是插件式架构,主要分为输入、输出类型插件。
当系统运行和存储信息的时候,collectd会周期性地统计系统相关信息。那些信息可以用来找到当前系统性能瓶颈。与其他监测工具相比,collectd它完全是由C语言编写,性能很高、可移植性好,它允许运行在系统没有脚本语言支持或者cron daemon的系统上,比如嵌入式系统。同时,它包含优化以及处理成百上千种数据集的新特性。
collectd包含有超过70多种插件,同时,collectd提供强大的网络联网特性,它能以多种方式来扩充。
而collectd不足之处则是不能直接生成图片。虽然它能写RRD文件,但是它不能从这些文件生成图形。目前collectd的最新版本为5.2.1,源码托管在GitHub上。
以上这些产品大部分是开源的,对于中小型公司来说,利用开源产品能大大提高团队的开发效率。而且这些产品都拥有非常活跃的社区,遇到问题后能得到很好的解决。