网络监控linux
‘壹’ 如何监控linux服务器上的数据
linux服务器性能监测是很重要的工作,服务器运行应该提供最有效的系统性能。当服务器系统性能突然低于平均应有的情况,问题可能来自在执行的进程、内存的使用率、磁盘的性能、网络流量和cpu
的压力。在预算短缺的今天,理解如何优化系统性能比以往任何时候都重要。
要实现它的前提是,你必须充分了解自己的计算机和网络,从而找到真正的瓶颈所在。本文提供一些基础的工具来辨别和处理一些性能问题。使用的linux
发行版本是red
hat
enterprise
linux
4,工作过程是:首先查看整个系统的状态,然后是检查特定的子系统。
linux服务器进行性能监控有几种方法,每种方法都各有其优缺点。
使用snmp等标准工具
标准及非标准工具能执行一个或多个收集、合并及传输阶段,如rstatd或snmp工具,然而标准的rstat后台程序提供的信息是有限的,速度慢而且效率低。
内核模块
几个系统监控工程利用内核模块来存取监控数据。一般情况下,这是很有效的收集系统数据的方法。然而这种方法存在的问题是,当主内核源内有其它改变时,必须保持代码一致性。一个内核模块可能与用户想使用的其它内核模块相冲突。此外,在使用监控系统之前,用户必须获得或申请模块。
/proc虚拟文件系统
/proc虚拟文件系统是一个较快的、高效率执行系统监控的方法。使用/proc的主要缺点是必须保持代码分析与/proc
文件格式改变的同步。事实表明,linux内核的改变比/proc
文件格式的改变要更频繁,所以,用/proc虚拟文件系统比用内核模块存在的问题要少。本文介绍的方法即基于/proc虚拟文件系统。
一、
/proc文件系统特点
linux
系统向管理员提供了非常好的方法,使他们可以在系统运行时更改内核,而不需要重新引导内核系统。这是通过
/proc
虚拟文件系统实现的。/proc
文件虚拟系统是一种内核和内核模块用来向进程
(process)
发送信息的机制
(所以叫做
/proc)。这个伪文件系统让你可以和内核内部数据结构进行交互,获取
有关进程的有用信息,在运行中
(on
the
fly)
改变设置
(通过改变内核参数)。
与其他文件系统不同,/proc
存在于内存之中而不是硬盘上。不用重新启动而去看
cmos
,就可以知道系统信息。这就是
/proc
的妙处之一。
小提示:
每个linux系统根据软硬件不同/proc
虚拟文件系统的内容也有些差异。/proc
虚拟文件系统有三个很重要的目录:net,scsi和sys。sys目录是可写的,可以通过它来访问或修改内核的参数,而net和scsi则依赖于内核配置。
‘贰’ 如何监控linux服务器
一般监控服务器,你可以
首先:你可以用iostat命令,显示存储子系统的详细信息,可以用来监控磁盘I/O的情况,如果%iowait的值过大,那么就是就说明很多IO在等待了,性能当然就有影响了,当然,用free也可以查看大概的情况,如下:
其次;就是windows下面都有的工具,wireshark,前身是ethereal,是一个网络协议检测程序,可以抓去网站运行的相关咨询,包括每一封包流向及其内容,监控TCP session动态等等。
当然有些服务商是有自己的服务器监控系统,监控软件的,我用的是小鸟云的!他们有专门的与"云监控”云管家等监控软件!我是觉得很好!这样就免得麻烦!
‘叁’ linux怎么监控网络运行情况
介绍Linux环境下网络工具的使用,netstat从内部查看网络的状况,显示网络连接、路由表、接口等信息,我们使用netstat –lntup,l是监听,n是用数字格式显示,如用ip地址、端口号都用数字表示,t是tcp信息,u是udp信息,p是端口。
端口扫描工具nmap,是一款黑客使用的工具,建议大家不要用来扫描公网ip,以避免有法律纠纷争议,我们用nmap常用参数nmap –sT 172.1.1.1来扫描内网一台服务器,该台服务器开放的端口有22、23、443.
我们还可以对操作系统信息进行扫描,用命令nmap –sS -O 172.1.1.1来扫描该台设备的版本信息进行扫描,通过扫描不仅知道端口开放的情况,也知道扫描的设备是什么型号。
我们介绍tcpmp的使用,从管理的网络里面获取流量,对获取的包进行分析,我们通过命令tcpmp -i eth0 对网卡eth0的流量进行抓取,参数-i是接口的意思。当前我们获取了信息包括CDP的一些信息,可以通过cdp信息查看到核心交换机的信息,还可以看到一些生成树的信息。
下面我们介绍一款在Linux环境下更为直观的抓包软件wireshark,首先需要对该软件进行安装,我们通过yum install wireshark安装软件,按照系统提示一步步安装,直至安装全部完成。
我们同时还可以安装图形化的wireshark软件,通过命令yum list wire*看可以显示可以安装的首字母是wire所有软件,这里的*是通配符,匹配任意字符,这里的wireshark-gnome.x86_64是图形化的软件,我们通过yum install wireshark-gnome.x86_64,安装成功后的使用在windows下面使用是相同的,可以选择一块网卡进行抓包并对抓的包进行过滤分析。
‘肆’ linux性能监控工具有哪些
1、顶部-Linux进程监控
Linux Top命令是性能监视程序,很多系统管理员经常用它监视Linux性能,可以再许多Linux/Unix操作系统下使用,可以显示CPU使用情况、内存使用情况、交换内存、缓存大小、缓冲区大小、进程PID、用户、 命令等等,它还显示高内存和CPU运行流程的利用。
2、VmStat-虚拟内存统计
Linux VmStat命令用于显示虚拟内存,kernerl线程,磁盘,系统进程,I/O块,中断,CPU活动等的统计信息。默认情况下,vmstat命令在Linux系统下不可用,您需要安装名为sysstat的软件包 ,其中包含vmstat程序。
3、Lsof-列出打开的文件
许多Linux/Unix系统中使用的Lsof命令,用于显示所有打开文件和进程的列表。包含的开放文件是磁盘文件、网络套接字、管道、设备和进程。使用此命令的主要原因之一是无法卸载磁盘并显示正在使用或打开文件的错误。使用此命令,您可以轻松识别哪些文件正在使用中。
4、Tcpmp-网络分组分析器
Tcpmp是使用最广泛的命令行、网络数据包分析器或数据包嗅探器程序之一,用于捕获或过滤通过网络在特定接口上接收或传输的TCP/ IP数据包。它还提供了一个选项,可以将捕获的包保存在文件中供以后分析。tcpmp几乎可用于所有主要的Linux发行版。
5、Netstat-网络统计
Netstat是一个命令行工具,用于监视传入和传出网络数据包统计信息以及接口统计信息,对于每个系统管理员来说,监视网络性能并排除网络相关问题是非常有用的工具。
6、Htop-Linux进程监控
Htop是一款非常先进的交互式和实时Linux过程监控工具。这与Linux top命令非常相似,但它具有一些丰富的功能,如用户友好的界面来管理进程、快捷键、进程的垂直和水平视图等等。
‘伍’ 开源的linux运维监控工具有哪些
企业里的IT设备复杂,且管理人员较少,用开源的很难满足需求。大型的商业化监控软件很容易超出企业的预算。可以用些专业的运维设备如蚁巡运维平台来方便、统一的监控机房里的设备的运行状况。
‘陆’ 如何监控LINUX网络状态
下面是按功能划分的命令名称。
监控总体带宽使用――nload、bmon、slurm、bwm-ng、cbm、speedometer和netload
监控总体带宽使用(批量式输出)――vnstat、ifstat、dstat和collectl
每个套接字连接的带宽使用――iftop、iptraf、tcptrack、pktstat、netwatch和trafshow
每个进程的带宽使用――nethogs
1. nload
nload是一个命令行工具,让用户可以分开来监控入站流量和出站流量。它还可以绘制图表以显示入站流量和出站流量,视图比例可以调整。用起来很简单,不支持许多选项。
所以,如果你只需要快速查看总带宽使用情况,无需每个进程的详细情况,那么nload用起来很方便。
$ nload
安装nload:Fedora和Ubuntu在默认软件库里面就有nload。CentOS用户则需要从Epel软件库获得nload。
# fedora或centos $ yum install nload -y # ubuntu/debian $ sudo apt-get install nload
2. iftop
iftop可测量通过每一个套接字连接传输的数据;它采用的工作方式有别于nload。iftop使用pcap库来捕获进出网络适配器的数据包,然后汇总数据包大小和数量,搞清楚总的带宽使用情况。
虽然iftop报告每个连接所使用的带宽,但它无法报告参与某个套按字连接的进程名称/编号(ID)。不过由于基于pcap库,iftop能够过滤流量,并报告由过滤器指定的所选定主机连接的带宽使用情况。
$ sudo iftop -n
n选项可以防止iftop将IP地址解析成主机名,解析本身就会带来额外的网络流量。
安装iftop:Ubuntu/Debian/Fedora用户可以从默认软件库获得它。CentOS用户可以从Epel获得它。
# fedora或centos yum install iftop -y # ubuntu或 debian $ sudo apt-get install iftop
3. iptraf
iptraf是一款交互式、色彩鲜艳的IP局域网监控工具。它可以显示每个连接以及主机之间传输的数据量。下面是屏幕截图。
$ sudo iptraf
安装iptraf:
# Centos(基本软件库) $ yum install iptraf # fedora或centos(带epel) $ yum install iptraf-ng -y # ubuntu或debian $ sudo apt-get install iptraf iptraf-ng
4. nethogs
nethogs是一款小巧的"net top"工具,可以显示每个进程所使用的带宽,并对列表排序,将耗用带宽最多的进程排在最上面。万一出现带宽使用突然激增的情况,用户迅速打开nethogs,就可以找到导致带宽使用激增的进程。nethogs可以报告程序的进程编号(PID)、用户和路径。
$ sudo nethogs
安装nethogs:Ubuntu、Debian和Fedora用户可以从默认软件库获得。CentOS用户则需要Epel。
# ubuntu或debian(默认软件库) $ sudo apt-get install nethogs # fedora或centos(来自epel) $ sudo yum install nethogs -y
5. bmon
bmon(带宽监控器)是一款类似nload的工具,它可以显示系统上所有网络接口的流量负载。输出结果还含有图表和剖面,附有数据包层面的详细信息。
安装bmon:Ubuntu、Debian和Fedora用户可以从默认软件库来安装。CentOS用户则需要安装repoforge,因为Epel里面没有bmon。
# ubuntu或debian $ sudo apt-get install bmon # fedora或centos(来自repoforge) $ sudo yum install bmon
bmon支持许多选项,能够制作HTML格式的报告。欲知更多信息,请参阅参考手册页。
6. slurm
slurm是另一款网络负载监控器,可以显示设备的统计信息,还能显示ASCII图形。它支持三种不同类型的图形,使用c键、s键和l键即可激活每种图形。slurm功能简单,无法显示关于网络负载的任何更进一步的详细信息。
$ slurm -s -i eth0
安装slurm
# debian或ubuntu $ sudo apt-get install slurm # fedora或centos $ sudo yum install slurm -y
7. tcptrack
tcptrack类似iftop,使用pcap库来捕获数据包,并计算各种统计信息,比如每个连接所使用的带宽。它还支持标准的pcap过滤器,这些过滤器可用来监控特定的连接。
安装tcptrack:Ubuntu、Debian和Fedora在默认软件库里面就有它。CentOS用户则需要从RepoForge获得它,因为Epel里面没有它。
# ubuntu, debian $ sudo apt-get install tcptrack # fedora, centos(来自repoforge软件库) $ sudo yum install tcptrack
8. vnstat
vnstat与另外大多数工具有点不一样。它实际上运行后台服务/守护进程,始终不停地记录所传输数据的大小。之外,它可以用来制作显示网络使用历史情况的报告。
$ service vnstat status * vnStat daemon is running
运行没有任何选项的vnstat,只会显示自守护进程运行以来所传输的数据总量。
$ vnstat Database updated: Mon Mar 17 15:26:59 2014 eth0 since 06/12/13 rx: 135.14 GiB tx: 35.76 GiB total: 170.90 GiB monthly rx | tx | total | avg. rate ------------------------+-------------+-------------+------------- Feb '14 8.19 GiB | 2.08 GiB | 10.27 GiB | 35.60 kbit/s Mar '14 4.98 GiB | 1.52 GiB | 6.50 GiB | 37.93 kbit/s ------------------------+-------------+-------------+------------- estimated 9.28 GiB | 2.83 GiB | 12.11 GiB | daily rx | tx | total | avg. rate ------------------------+-------------+-------------+------------- yesterday 236.11 MiB | 98.61 MiB | 334.72 MiB | 31.74 kbit/s today 128.55 MiB | 41.00 MiB | 169.56 MiB | 24.97 kbit/s ------------------------+-------------+-------------+------------- estimated 199 MiB | 63 MiB | 262 MiB |
想实时监控带宽使用情况,请使用"-l"选项(实时模式)。然后,它会显示入站数据和出站数据所使用的总带宽量,但非常精确地显示,没有关于主机连接或进程的任何内部详细信息。
$ vnstat -l -i eth0 Monitoring eth0... (press CTRL-C to stop) rx: 12 kbit/s 10 p/s tx: 12 kbit/s 11 p/s
vnstat更像是一款制作历史报告的工具,显示每天或过去一个月使用了多少带宽。它并不是严格意义上的实时监控网络的工具。
vnstat支持许多选项,支持哪些选项方面的详细信息请参阅参考手册页。
安装vnstat
# ubuntu或debian $ sudo apt-get install vnstat # fedora或 centos(来自epel) $ sudo yum install vnstat
9. bwm-ng
bwm-ng(下一代带宽监控器)是另一款非常简单的实时网络负载监控工具,可以报告摘要信息,显示进出系统上所有可用网络接口的不同数据的传输速度。
$ bwm-ng bwm-ng v0.6 (probing every 0.500s), press 'h' for help input: /proc/net/dev type: rate / iface Rx Tx T ot================================================================= == eth0: 0.53 KB/s 1.31 KB/s 1.84 KB lo: 0.00 KB/s 0.00 KB/s 0.00 KB------------------------------------------------------------------------------------------------------------- total: 0.53 KB/s 1.31 KB/s 1.84 KB/s
如果控制台足够大,bwm-ng还能使用curses2输出模式,为流量绘制条形图。
$ bwm-ng -o curses2
安装bwm-ng:在CentOS上,可以从Epel来安装bwm-ng。
# ubuntu或debian $ sudo apt-get install bwm-ng # fedora或centos(来自epel) $ sudo apt-get install bwm-ng
10. cbm:Color Bandwidth Meter
这是一款小巧简单的带宽监控工具,可以显示通过诸网络接口的流量大小。没有进一步的选项,仅仅实时显示和更新流量的统计信息。
$ sudo apt-get install cbm
11. speedometer
这是另一款小巧而简单的工具,仅仅绘制外观漂亮的图形,显示通过某个接口传输的入站流量和出站流量。
$ speedometer -r eth0 -t eth0
安装speedometer
# ubuntu或debian用户 $ sudo apt-get install speedometer
12. pktstat
pktstat可以实时显示所有活动连接,并显示哪些数据通过这些活动连接传输的速度。它还可以显示连接类型,比如TCP连接或UDP连接;如果涉及HTTP连接,还会显示关于HTTP请求的详细信息。
$ sudo pktstat -i eth0 -nt $ sudo apt-get install pktstat
13. netwatch
netwatch是netdiag工具库的一部分,它也可以显示本地主机与其他远程主机之间的连接,并显示哪些数据在每个连接上所传输的速度。
$ sudo netwatch -e eth0 -nt $ sudo apt-get install netdiag
14. trafshow
与netwatch和pktstat一样,trafshow也可以报告当前活动连接、它们使用的协议以及每条连接上的数据传输速度。它能使用pcap类型过滤器,对连接进行过滤。
只监控TCP连接
$ sudo trafshow -i eth0 tcp $ sudo apt-get install netdiag
15. netload
netload命令只显示关于当前流量负载的一份简短报告,并显示自程序启动以来所传输的总字节量。没有更多的功能特性。它是netdiag的一部分。
$ netload eth0 $ sudo apt-get install netdiag
16. ifstat
ifstat能够以批处理式模式显示网络带宽。输出采用的一种格式便于用户使用其他程序或实用工具来记入日志和分析。
$ ifstat -t -i eth0 0.5 Time eth0 HH:MM:SS KB/s in KB/s out 09:59:21 2.62 2.80 09:59:22 2.10 1.78 09:59:22 2.67 1.84 09:59:23 2.06 1.98 09:59:23 1.73 1.79
安装ifstat:Ubuntu、Debian和Fedora用户在默认软件库里面就有它。CentOS用户则需要从Repoforge获得它,因为Epel里面没有它。
# ubuntu, debian $ sudo apt-get install ifstat # fedora, centos(Repoforge) $ sudo yum install ifstat
17. dstat
dstat是一款用途广泛的工具(用python语言编写),它可以监控系统的不同统计信息,并使用批处理模式来报告,或者将相关数据记入到CSV或类似的文件。这个例子显示了如何使用dstat来报告网络带宽。
安装dstat
$ dstat -nt -net/total- ----system---- recv send| time 0 0 |23-03 10:27:13 1738B 1810B|23-03 10:27:14 2937B 2610B|23-03 10:27:15 2319B 2232B|23-03 10:27:16 2738B 2508B|23-03 10:27:17
18. collectl
collectl以一种类似dstat的格式报告系统的统计信息;与dstat一样,它也收集关于系统不同资源(如处理器、内存和网络等)的统计信息。这里给出的一个简单例子显示了如何使用collectl来报告网络使用/带宽。
$ collectl -sn -oT -i0.5 waiting for 0.5 second sample... # <----------Network----------> #Time KBIn PktIn KBOut PktOut 10:32:01 40 58 43 66 10:32:01 27 58 3 32 10:32:02 3 28 9 44 10:32:02 5 42 96 96 10:32:03 5 48 3 28
安装collectl
# Ubuntu/Debian用户 $ sudo apt-get install collectl #Fedora $ sudo yum install collectl
‘柒’ linux 除了zabbix还有什么监控软件
除了zabbix,还有Nagios,ganglia等。
当然还有一些关注某一方面监控的软件,太多了我就不一一列举了。
‘捌’ 有什么监控Linux服务器的工具吗
1. zabbix:是一个基于Web界面的提供分布式系统监视以及网络监视功能的企业级开源解决方案。Zabbix能监视各种网络参数,保证服务器系统的安全运营,并提供灵活的通知机制以让系统管理员快速定位,解决存在的各种问题。
2. Nagios:是一款开源的免费网络监视工具,能有效监控Windows、Linux和Unix的状态,交换机路由器等网络设备,打印机等。在系统或服务状态异常时发出邮件或短信报警时间通知运维人员,在状态恢复后发出正常的邮件或短信通知。
3. Anturis:是一个基于云平台的Saas平台,可监控Windows、Linux服务器,网站和IT基础架构,通过全面的监控解决方案列表,让管理员快速了解整体主机或者服务器瓶颈与风险。
4. SeaLion:是一个基于云的Linux服务器监控工具,也是通过统一的仪表盘监控所有服务器指标,它只需几分钟即可完成设置,具有即时报警功能。
5. lcinga:是一个免费的开源监控系统,可以检查服务器资源的可用性,它会记录服务器问题并在停机的时候通知您。
6. Munin:是一个网络和系统监控工具,可帮助您分析服务器资源趋势,旨在成为一个即插即用的解决方案,安装后无需太多额外工作即可收集关键信息。
7. Monit:是一个用于管理和监控Unix系统的开源工具。可以进行自动维护和维修,如果出现错误情况,还可以自动触发保护行为。
8. Pingdom:可以对互联网上很多地方的服务器以及网站进行监控,以保证他们可以有效的运行;通过Pingdom,可以对电子邮件的服务器、FTP服务器、受密码保护的那些网站进行监控。
‘玖’ linux下有没有比较好的网络监控软件
OpManager的linux network monitor主动监控linux服务器和机器的运行状况、性能和可用性。您可以使用OpManager预定义的Linux监控设备模板,并通过选项监控Linux设备的特定参数,从而深入到基本内容。OpManager的linux网络监控功能还可以跟踪cpu利用率和资源,以帮助进行网络容量规划。https://www.manageengine.cn/network-monitoring/linux-network-monitoring.html
‘拾’ linux 下网络监控的命令有哪些
监控总体带宽使用――nload、bmon、slurm、bwm-ng、cbm、speedometer和netload
监控总体带宽使用(批量式输出)――vnstat、ifstat、dstat和collectl
每个套接字连接的带宽使用――iftop、iptraf、tcptrack、pktstat、netwatch和trafshow
每个进程的带宽使用――nethogs
还有netstat、iostat、ping等常用命令