Linux服务器监测技巧有哪些?
当服务器系统性能突然低于平均应有的情况,问题可能来自在执行的进程、内存的使用率、磁盘的性能和CPU 的压力。在预算有限的时代,理解如何优化系统性能比以往任何时候都重要。要实现它的前提是,你必须充分了解自己的服务器,从而找到真正的瓶颈所在。本文提供一些基础的工具来辨别和处理一些性能问题。工作过程是:首先查看整个系统的状态(服务器整体)后是检查特定的子系统(内存、处理器、IO等)。
一、系统负载监测
1使用uptime命令
2使用cron命令进行定时监测系统负载:
二、Unix进程运行的监测
1使用ps命令
Unix系统提供了ps等察看进程信息的系统调用,通过结合使用这些系统调用,我们可以清晰地了解进程的运行状态以及存活情况,从而采取相应的措施,来确保Unix系统的性能。它们是目前在Unix下最常见的进程状况查看工具,是随 Unix版本发行的,安装好系统之后,用户就可以使用。 这里以ps命令为例,ps命令是最基本同时也是非常强大的进程查看命令。利用它可以确定有哪些进程正在运行及运行的状态、进程是否结束、进程有没有僵死、哪些进程占用了过多的资源等。ps命令可以监控后台进程的工作情况,因为后台进程是不和屏幕键盘这些标准输入/输出设备进行通信的
2使用进程监控工具
如果安装了CDE环境,可以使用图形界面进程等系统信息,使用方法是单击“前面板”上“工具”子面板上的“查找进程”控件。 显示“进程管理器”主窗口。它立即对工作站进行采样,并显示所有当前进程的采样。
三、内存使用情况监测
内存是Unix内核所管理的最重要的资源之一。内存管理系统是操作系统中最为重要的部分,因为系统的物理内存总是少于系统所需要的内存数量。虚拟内存就是为了克服这个矛盾而采用的策略。系统的虚拟内存通过在各个进程之间共享内存而使系统看起来有多于实际内存的内存容量。Unix支持虚拟内存, 就是使用磁盘作为RAM的扩展,使可用内存相应地有效扩大。核心把当前不用的内存块存到硬盘,腾出内存给其他目的。当原来的内容又要使用时,再读回内存。
1 Performance Co-Pilot
Performance Co-Pilot,简称 PCP,是一个系统性能和分析框架。它从多个主机整理数据并实时的分析,帮你识别不正常的表现模式。它也提供 API 让你设计自己的监控和报告解决方案。
2 Anturis
Anturis 是一个监控你的服务器、网站、IT基础设置的基于云计算的SaaS平台。它有一个全面的监控解决方案列表,非常值得一看。
3 SeaLion
SeaLion 是一个基于云计算的Linux服务器监控工具。它可以用一个面板简单的监控所有的服务器并且诊断问题。它只需要几分钟就可以安装好,具有及时提醒功能,当发生问题时你可以及时的收到提醒,还具有日常数据汇总等功能。
4 Icinga
Icinga 是一个免费开源的服务器监控工具,可以检测服务器资源的可用性。它可以记录服务器问题并且通知你。
5 Munin
Munin 是一个网路和系统监控工具,可以帮你分析服务器资源趋势。它是一个即插即用的解决方案。默认的安装方式提供了很多的报告。
SUM服务器集中监控与管理软件 (SUM, Server Unified Monitor & Management)是一款由上海哲涛科技自主研发的集服务器、网络设备、应用程序服务器、用户软件于一体的集中式、跨平台的集中监控与管理软件。本软件能够根据设置的阀值指标, 针对各种故障问题信息即时通过终端界面、颜色、声音、短信、 EMAIL等方式进行报警,还可以通过短信对服务器、服务器中的程序等进行重启以及可以执行服务器中授权的命令,方便维护人员日常维护管理。 实现了对服务器、网络设备监测的自动化和故障预警智能化管理,最大限度地保障服务器、网络设备的正常运行,减少运维部门的运维成本,确保企业服务器、网络设备365 × 24 的高效稳定运行!同时本软件能提供分析决策的报表系统,帮助网络管理人员及时预测、发现性能瓶颈,提高服务器、网络设备的整体性能,同时为企业网络系统的战略规划提供依据,起到优化整体服务器、网络设备资源的目的。
Windows服务器中自带的性能监控工具叫做Performance Monitor;
在开始-运行中输入‘perfmon’,然后回车即可运行。
Monitor本身也是一个进程,运行起来也要占用一定的系统资源。所以你看到的资源的使用量应该比实际的要稍微高一点。这个工具在帮助管理员判断系统性能瓶颈时非常有用;
举个列子来说,今天有个用户抱怨说他们项目组的服务器(这是一台虚拟机)运行起来非常慢,但也不知道具体问题出在什么地方。任务管理器里显示CPU和内存的使用量都不算高,但服务器的相应就是非常慢;
Monitor,让其运行一段时间后(因为参考平均值会比较准确),发现average disk queue的值比较高,这就说明物理服务器的硬盘负荷太重,I/O操作的速度跟不上系统的要求。关掉虚拟机,将其转移到另一台硬盘负载比较小的主机上,再打开虚拟机。
分析性能情况
1、内存泄露判断
虚拟内存字节数(VirtualBytes)应该远大于工作集字节数(Workingset),如果两者变化规律相反,比如说工作集增长较快,虚拟内存增长较少,则可能说明出现了内存泄露的情况。
对于Workingset、Private Bytes、Available bytes这些计数器,如果在测试期间内数值持续增长,而且测试停止后位置在高水平,则也说明存在内存泄露。
Windows资源监控中,如果Process\PrivateBytes计数器和Process\WorkingSet计数器的值在长时间内持续升高,同时Memory\Available
bytes计数器的值持续降低,则很可能存在内存泄漏。
2、CPU使用情况
一般平均不要超过70%,最大不要超过90%(好:70% 、坏:85%、 很差:90%)。
3、tps(每秒处理事务的数量,在SOAPUI中进行统计)
一般在10-100,不同应用程序具体值不同。
zabbix可以执行两种操作,一种是发送命令,一种是执行脚本,这两种都可以实现重启服务器的效果,如果要针对某一种情况,进行重启,这是trigger触发器,比如检测到cpu使用率超过90%,我发送reboot
1、Nagios是一款开源的免费网络监视工具,能有效监控Windows、Linux和Unix的主机状态,交换机路由器等网络设置,打印机等。在系统或服务状态异常时发出邮件或短信报警第一时间通知网站运维人员,在状态恢复后发出正常的邮件或短信通知。
2、
Cacti是通过 snmpget来获取数据,使用
RRDtool绘画图形,而且你完全可以不需要了解RRDtool复杂的参数。它提供了非常强大的数据和用户管理功能,可以指定每一个用户能查看树状结
构、host以及任何一张图,还可以与LDAP结合进行用户验证,同时也能自己增加模板,功能非常强大完善。界面友好。
Cacti 的发展是基于让 RRDTool 使用者更方便使用该软件,除了基本的 Snmp 流量跟系统资讯监控外,Cacti 也可外挂 Scripts 及加上 Templates 来作出各式各样的监控图。
网络带宽利用率是指:带宽每秒收到、发送信息的效率。带宽分配是为了在有限的带宽内保证实时业务的传输,不至于因为业务量太大而出现网络阻塞现象。
我们访问互联网的过程中存在着两种行为:一是上传数据,二是下载数据。上行带宽指的是上传的速度,而下行带宽指的是下载数据时的速度。
云帮手通过对服务器多网卡的上行带宽和下行带宽传输情况进行实时监控,使用户可以精准了解到各网卡的运行情况,做到合理带宽分配,保证网络畅通。
对服务器来说,硬盘因为其机械结构,是最容易出现故障的设备。但恰恰是这最容易出现故障的设备中,存储着对企业来说最至关重要的IT资源——数据。一旦硬盘出现故障,会给企业带来重大的损失。据统计,为了解决硬盘故障带来的损失,目前全球每年的数据恢复市场价值大约在千亿美元——而这仅仅是是企业损失的一小部分。近年来,为了解决这一问题衍生出了大量的技术如:Raid、双机热备等。但这些技术都是在基于增加磁盘的数量的方式来尝试解决问题,降低了数据丢失的概率,但同时大大增加了运维成本,提高了管理的难度。
为此,蚁巡运维平台尝试引入一种新的方式,通过远程实时监控服务器硬盘的健康状态,达到在不增加硬件成本和管理成本的基础上保障数据安全的做法。通过蚁巡运维平台,可以自动发现安装了SMART标准技术的硬盘并远程监控其磁盘的健康指标。
SMART的全称为“Self-Monitoring Analysis and Reporting Technology”,即“自我监测、分析及报告技术”。支持SMART技术的硬盘可以通过硬盘上的监测指令和主机上的监测软件对磁头、盘片、马达、电路的运行情况、历史记录及预设的安全值进行分析、比较。当出现安全值范围以外的情况时,就会自动向用户发出警告。几乎所有主流的硬盘,包括固态硬盘都支持这一技术。但该技术只适用于单机环境,且必须手工获取数据,使用该技术防止硬盘故障的管理成本很高。而在蚁巡中,可以批量的、远程的、实时的监控使用了该技术的硬盘,大大降低了管理成本。
同时,通过蚁巡还可以获得硬盘的使用时间、使用次数等基本指标数据。可以有效的评估硬盘的使用情况,从而进一步评估设备的使用率、寿命等信息。
据统计,通过这项技术,可以提前发现超过60%的硬盘故障,给企业带来的价值无可估量。
0条评论