Linux主机监控需求说明书.docx
- 文档编号:10767026
- 上传时间:2023-02-22
- 格式:DOCX
- 页数:33
- 大小:1.89MB
Linux主机监控需求说明书.docx
《Linux主机监控需求说明书.docx》由会员分享,可在线阅读,更多相关《Linux主机监控需求说明书.docx(33页珍藏版)》请在冰豆网上搜索。
Linux主机监控需求说明书
SAMP®Monitoring
Linux主机监控需求说明书
广州蓝科科技股分
2011年03月
修改记录
序号
修改日期
修改人员
修改摘要
1
2011-03-17
王玉中
创建文档
1引言
1.1范围与目的
本文档对Linux主机做了概要介绍,并重点分析了其在监控治理方面的需求,包括需要监控的内容、可能存在的问题隐患、趋势分析需求、问题应付方式和信息获取方式等内容,以作为进一步设计监控对象模型的依据。
1.2适用读者对象
本文档适用读者对象为:
监控对象模型设计、开发和测试人员,另外项目实施人员也可参考此文档以帮忙他们更有效地部署监控参数。
1.3参考资料
1.IBMdeveloperworks中UnixLinux系统自动化治理系列文章;
2.IBMTivoliMonitoringResourceModelReferenceGuide
2监控对象介绍
Linux是一类Unix多运算机操作系统的统称,目前主流的Linux发行版有 Ubuntu、openSUSE、CentOS和RedHat等。
能够运行在x8六、680x0、SPARC、Alpha等多种处置器的硬件平台上。
支持Linux操作系统的应用软件也超级丰硕,要紧用作效劳器用途(桌面目前仍是WINDOWS天下),如做为WWW、FTP、E-Mail、数据库效劳器。
在安装和利用Linux操作系统进程中,创建磁盘分区、成立文件系统和挂载文件系统是几个关键步骤,下面介绍下相关概念:
2.1磁盘及分区
在Linux中,每一个硬件设备都映射到一个系统的文件,例如各类IDE设备分派了一个由hd前缀组成的文件;而关于各类SCSI设备,那么分派了一个由sd前缀组成的文件。
要进行分区就必需针对每一个硬件设备进行操作,Linux可将硬盘分成多个分区,关于每一个硬盘(IDE或SCSI)设备,Linux分派了一个1到16的序列号码,这就代表了这块硬盘上面的分区号码。
例如,第一个IDE硬盘的第一个分区,在Linux下面映射的确实是hda1,第二个分区就称作是hda2。
关于SCSI硬盘那么是sda一、sdb1等。
在安装Linux时一样会将存储设备分成假设干分区,通常需要一个swap分区,一个/boot分区,一个/usr分区,一个/home分区,一个/var/log分区,这不是硬性规定,但至少也要有两个分区,一个swap分区,一个/分区。
2.2Linux文件系统
分区是组成支持一组文件和目录所必需的贮存区的一部份,要想分区能被利用,必需将分区挂载到文件系统中某一存在目录。
在Linux中将一个文件系统与一个存储设备关联起来的进程称为挂装(mount)。
利用mount命令将一个文件系统附着到当前文件系统层次结构中(根)。
在执行挂装时,要提供文件系统类型、文件系统和一个挂装点。
挂载分区使起始于那个指定目录(通称为挂载点mountpoint,如/)的贮存区能够被利用。
文件系统是对一个存储设备上的数据和元数据进行组织的机制。
Linux文件系统体系结构是一个对复杂系统进行抽象化的有趣例子,通过利用一组通用的API函数,Linux能够在许多种存储设备上支持许多种文件系统。
例如,read函数挪用能够从指定的文件描述符读取必然数量的字节。
read函数不了解文件系统的类型,比如ext3或NFS。
它也不了解文件系统所在的存储媒体,比如ATAttachmentPacketInterface(ATAPI)磁盘、Serial-AttachedSCSI(SAS)磁盘或SerialAdvancedTechnologyAttachment(SATA)磁盘。
Linux支持多种文件系统,如ext二、ext3、reiserfs等,在不同分区可成立不同文件系统。
Linux的文件结构是单个的树状结构,最上层是根目录,其他目录都是根目录的子目录,与Windows不同的是,不管Linux治理几个分区,如此的文件目录树只有一个。
以下图是一个Linux目录结构举例。
Linux继承了Unix操作系统结构清楚的特点。
在linux下的文件结构超级有层次,下面是一些常见目录结构,其中/proc目录与监控紧密相关:
⏹/
根目录,所有的目录、文件、设备都在/之下。
⏹/bin
那个目录中的文件都是可执行的、一般用户都能够利用的命令。
作为基础系统所需要的最基础的命令确实是放在那个地址。
⏹/boot
Linux的内核及引导系统程序所需要的文件目录,比如vmlinuz文件都位于那个目录中。
在一样情形下,GRUB或LILO系统引导治理器也位于那个目录。
⏹/dev
那个目录中包括了所有linux系统中利用的外部设备,它事实上是一个访问这些外部设备的端口。
咱们能够超级方便地去访问这些外部设备,和访问一个文件,一个目录没有任何区别。
⏹/etc
在那个目录下寄存了系统治理时要用到的各类配置文件和子目录。
⏹/home
若是咱们成立一个用户,用户名是"xx",那么在/home目录下就有一个对应的/home/xx途径,用来寄存用户的主目录。
⏹/lib
那个目录是用来寄存系统动态连接共享库的。
几乎所有的应用程序都会用到那个目录下的共享库。
⏹/opt
那个地址要紧寄存那些可选的程序。
⏹/proc
能够在那个目录下获取系统信息,操作系统运行时,进程信息及内核信息(比如cpu、硬盘分区、内存信息等)寄存在那个地址。
⏹/usr
用户的很多应用程序和文件都寄存在那个目录下。
⏹/var
那个目录的内容是常常变更的,/var下有/var/log这是用来寄存系统日记的目录。
/var/www目录是概念Apache效劳器站点寄存目录;/var/lib用来寄存一些库文件,比如MySQL的,和MySQL数据库的的寄存地。
Linux的文件种类要紧有下面这几种:
⏹一般文件(regularfile)
确实是一样咱们存取的文件,由ls-al显示出来的属性中,第一个属性为[-],例如[-rwxrwxrwx]。
另外,依照文件的内容,又大致能够分为:
纯文本文件、二进制文件、数据格式文件。
⏹目录(directory)
目录文件,第一个属性为[d],例如[drwxrwxrwx]。
⏹连接文件(link)
类似Windows下面的快捷方式。
第一个属性为[l],例如[lrwxrwxrwx]。
⏹设备与设备文件(device)
与系统外设及存储等相关的一些文件,通常都集中在/dev目录。
通常又分为两种:
块(block)设备文件:
确实是存储数据以供系统存取的接口设备,简单而言确实是硬盘。
例如一号硬盘的代码是/dev/hda1等文件。
第一个属性为[b]。
字符(character)设备文件:
即串行端口的接口设备,例如键盘、鼠标等等。
第一个属性为[c]。
⏹套接字(sockets)
这种文件通经常使用在网络数据连接。
咱们能够启动一个程序来监听客户端的要求,客户端就能够够通过套接字来进行数据通信。
第一个属性为[s]。
⏹管道(FIFO,pipe)
FIFO也是一种特殊的文件类型,它要紧的目的是,解决多个程序同时存取一个文件所造成的错误,第一个属性为[p]。
2.3监控治理接口
Linux提供大量系统监控治理工具,能够帮忙系统治理员获取系统相关信息和系统活动的气宇指标,具体如下:
⏹/proc文件系统
/proc文件系统提供系统硬件和内核的详细信息,如/proc/cpuinfo提供了处置器相关信息,/proc/net/dev提供网络接口相关信息。
⏹Top
top提供一个当前运行系统实时动态的视图,也确实是正在运行进程。
在默许情形下,显示系统中CPU利用率最高的任务,并每5秒钟刷新一次。
⏹vmstat
利用vmstat命令能够取得关于进程、内存、内存分页、堵塞IO、traps及CPU活动的信息。
⏹W(who)
w命令显示系统当前用户及其运行进程的信息。
⏹Uptime
uptime命令过去只显示系统运行多久。
此刻能够显示系统运行多久、当前有多少的用户登录、在过去的1,5,15分钟里平均负载时多少。
⏹ps
ps命令显示当前运行进程的快照。
利用-A或-e显示所有进程。
ps与top超级相似,但ps提供更多的信息。
⏹Free
free命令显示系统中空闲的、已用的物理内存及swap内存,及被内核利用的buffer。
⏹iostat
iostat命令可报告中央处置器(CPU)的统计信息,各类设备、分区及网络文件系统输入/输出的统计信息。
⏹sar
sar命令用来搜集、报告和贮存系统活动信息。
⏹mpstat
mpstat命令能够显示所有可用途理器的利用情形,处置器编号从0开始。
mpstat-PALL显示每一个处置器的平均利用率。
⏹pmap
pmap命令能够显示进程的内存映射,利用那个命令能够找出造成内存瓶颈的缘故。
⏹netstat
netstat能够显示网络链接、路由表信息、接口统计信息、假装链接和多播成员(multicastmemberships)。
⏹ss
ss命令用来显示网络套接字信息,它许诺显示类似netstat一样的信息。
⏹iptraf
iptraf是一个可交互式的IP网络监控工具。
它能够生成多种网络统计信息包括:
TCP信息、UDP数量、ICMP和OSPF信息、以太网负载信息、节点状态、IP校验错误等。
⏹tcpdump
tcpdump是一个简单网络流量转储工具,但是要利用好需要对TCP/IP协议超级熟悉。
⏹strace
追踪系统挪用和型号,这关于调试Web效劳器和其他效劳器超级有效。
了解如何追踪进程和他功能。
3监控需求分析
Linux主机监控的要紧目的是要及时发觉Linux主机在可用性、性能和平安方面的故障和问题隐患,除监测关键指标是不是超出阈值并告警之外,也需提供一些重要指标趋势转变分析,以探测可能即将发生的问题。
Linux具体监控内容包括主机在线状态、CPU、内存、文件系统、文件、网络接口、进程、会话和日记等方面监控。
在线状态
3.1.1搜集信息
除非是单机应用,不然主机一旦离线就不能对外提供效劳,因此对主机在线状态的检测是超级必要的。
主机在线检测提供如下信息:
序号
信息项
说明
1
在线状态
主机在线状态
2
响应时间
主机在线响应时间
建议搜集频率60秒。
3.1.2监控问题
⏹主机不在线
当主机不响应时报告本问题。
主机不在线缘故可能是网络中断也可能主机宕机。
⏹主机响应缓慢
当主机尽管响应但响应时刻超过设定阀值(如5秒)时报告本问题。
主机响应缓慢缘故可能是网络不靠得住或主机忙碌。
3.1.3分析内容
除基于阈值的监控诉警之外,还须对如下信息提供统计分析:
⏹在线状态
提供指按时刻内主机在线状态时刻占比统计,如可历时刻百分比、不可历时刻百分比等。
本指标须长期保留。
⏹响应时刻
提供最近一段时刻(如最近24小时)主机响应时刻转变趋势分析。
因本指标属于波动性指标,很少形成长期成心义趋势,因此不须长期保留。
3.1.4监控方式
主机在线监测应提供多种检测方式供用户选择,以确保能适应不同监控环境,如某些主机可能禁止ping。
下面是一些经常使用的检测主机是不是在线的方式:
Ping:
通过ping检测检测主机是不是在线。
telnet:
通过telnet检测检测主机是不是在线。
ftp:
通过ftp检测检测主机是不是在线。
sftp:
通过sftp检测检测主机是不是在线。
http:
通过http检测主机是不是在线。
代理:
通过与samp代理沟通检测主机是不是在线。
CPU
3.1.5搜集信息
CPU是运算机的核心资源,CPU处置能力是阻碍主机性能的关键因素之一,监控目的要紧判定CPU处置能力是不是存在瓶颈。
这一样可从监测CPU利用率、CPU负载情形来加以分析和判定。
为了帮忙分析问题全然缘故,需要监控CPU资源如下运行和配置信息:
序号
信息项
说明
1
系统模式占用CPU百分比
过高时说明系统内核消耗的CPU资源多
2
用户模式占用CPU百分比
过高时(如>50%)说明用户进程消耗的CPU时间多,可能需要优化应用程序算法
3
等待IO的CPU百分比
过高(如>25%)时说明IO等待比较严重,这可能由于磁盘大量作随机访问造成,也有可能磁盘出现瓶颈(块操作)
4
空闲进程占用CPU百分比
过低(如<20%)说明CPU利用率高,一般来说在CPU很少空闲并且系统时间(cpusy)是用户时间的两倍(cpuus)系统则面临着CPU资源的短缺
5
消耗最多进程ID
占用CPU资源最多的进程ID
6
消耗最多进程名称
占用CPU资源最多的进程名称
7
消耗最多进程CPU占用率
如过高,说明该进程可能是造成CPU利用率高的主要原因。
8
1分钟平均负载
最近1分钟平均负载,过高表明等待进程较多
9
5分钟平均负载
最近5分钟平均负载,过高表明等待进程较多
10
15分钟平均负载
最近15分钟平均负载,过高表明等待进程较多
11
CPU类型
CPU处理器类型,如CPU0:
奔腾133
建议搜集频率180秒。
3.1.6监控问题
⏹CPU利用率过高
当CPU利用率超过设定阈值(90%)时报告本问题。
CPU利用率指系统运行程序(非系统空闲进程)所占用的CPU时刻百分比。
CPU利用率越高说明CPU越忙碌,效劳器性能也会随之下降,如咱们常常会碰着在CPU利用率为100%时,运算机通常就变成不响应或响应异样缓慢。
在显现本问题以后,系统治理员第一需要了解CPU资源要紧消耗在哪些方面(用户模式、系统模式、等待IO),然后进一步了解是哪些进程耗用CPU资源较多,最后结合CPU处置器类型和个数来综合分析来确信是CPU本身瓶颈仍是其他资源不足或是程序问题致使的CPU利用率太高。
⏹CPU负载太高
当CPU负载(一样取5分钟或15分钟负载比较合理)超过设定阈值(如单核心CPU5分钟负载超过)时报告本问题。
CPU负载是指某段时刻内占用cpu时刻的进程和等待cpu时刻的进程数的统计信息,那个地址等待cpu时刻的进程是指等待被唤醒的进程,不包括处于wait状态进程。
CPU负载能够明白得为CPU利用队列的长度的统计信息。
为了容易明白得CPU负载的含义,能够将单核cpu的负载看成是一条单行的桥,数字1代表cpu恰好能够处置过来,即桥上能够顺利通过所有的车辆,桥外没有等待的车辆,桥是畅通的。
当超过1时表示有等待上桥的车辆,小于1时表示车辆能够快速的通过。
单核心cpu就表示该cpu能够处置的事务数是1,在多核cpu中cpu能够并行处置的事务的数量应该是cpu个数*cpu核数,而且负载数最好不要超过那个数值。
例如一个4核cpu,那么cpu_load最大值为4,不能长期超过4,不然会有任务没有取得及时的处置,而使系统的负载积存增高,致使系统运行缓慢。
通常情形下一样采取的法那么,如当为4核cpu的时候,cpu的整体负载超过4*=那么生成告警事件。
在显现本问题后,应结合CPU利用率、IO等待时刻来综合分析问题本源,若是CPU利用率本身不高,就有可能是IO硬件性能显现瓶颈,从而阻碍主机整体效率。
3.1.7分析内容
除基于阈值的监控诉警之外,还须对如下信息提供统计分析:
⏹CPU利用率
提供最近一段时刻内(如最近24小时)CPU利用率转变趋势分析。
本指标属于波动指标,不须长期保留。
⏹CPU负载
提供最近一段时刻内(如最近24小时)CPU负载转变趋势分析。
本指标属于波动指标,不须长期保留。
⏹CPUI/O等待
提供最近一段时刻内(如最近24小时)CPUI/O等待时刻占比转变趋势分析。
本指标属于波动指标,不须长期保留。
3.1.8监控方式
可利用如下Linux命令获取所需信息。
Cat/proc/cpuinfo:
获取CPU配置信息;
top:
能够了解到CPU消耗和进程信息显示。
内存
3.1.9搜集信息
Linux系统的内存分为物理内存和虚拟内存两种。
物理内存是真实的,也确实是物理内存条上的内存。
而虚拟内存(即Linux操作系统的swap分区)那么是采纳硬盘空间补充物理内存,将临时不利用的内存页写到硬盘上以腾出更多的物理内存让有需要的进程利用。
内存监控要紧提供如下信息:
序号
信息项
说明
1
内存利用率
总内存(包含物理内存和交换区空间)已使用比例,过高时说明内存资源不足有耗尽危险
2
交换空间利用率
过高时说明物理内存偏少或交换区空间大小设置不合理,可能需要增加物理内存或增大交换区空间
3
内存页面调进率
每秒调进页面的最大发生次数(按整个周期平均),过大时表明有大量的页面交换,主机性能会受到影响
4
内存页面调出率
每秒调出页面的最大发生次数(按整个周期平均),过大时表明有大量的页面交换,主机性能会受到影响
5
物理内存总量
服务器配置的物理内存大小
6
已使用物理内存
已经使用的物理内存大小
7
可用物理内存
剩余可用的物理内存大小
8
交换区空间总量
服务器配置的交换区空间大小
9
已使用交换区空间
已经使用的交换区空间大小
10
可用交换区空间
剩余可用的交换区空间大小
11
前N位耗用内存资源进程情况
列出前N位耗用内存资源进程供分析
建议搜集频率180秒。
3.1.10监控问题
⏹可用内存资源不足
当总内存(含物理内存和互换区空间)利用率太高(如超过80%)时报告本问题。
运算机中所有程序的运行都是在物理内存中进行的,当物理内存不够时,系统会将物理内存中不常利用的页面互换到磁盘上互换区空间,若是互换区空间也不够,那么内存资源有耗尽危险,可能会致使系统崩溃。
在显现此问题时,应检查进程耗用内存情形,并采取方法增加可用内存资源,如kill掉最耗内存资源的进程、增加物理内存和互换区空间等。
⏹互换区空间利用率高
在互换区空间利用率超过设定阈值(如60%)时报告本问题。
在物理内存不足的时候,系统会利用互换区空间,当互换区空间利用率太高时,系统性能也会下降。
在显现此问题时,应检查互换区空间大小,若是互换区过小,可考虑增加互换区空间,通常应该设置成物理内存2倍左右,不然应增加物理内存资源。
⏹内存调页频繁
当页面调进率或页面调出率太高如超过400KB/S时报告本问题。
Linux系统会将物理内存中不常利用的页面互换到磁盘上,常利用的页面保留在物理内存中供进程利用,当物理内存严峻不足时,系统会频繁进行调页和互换,增加了磁盘I/O负载,降低了系统性能。
在显现本问题以后,可增加物理内存,以使内存调页速度维持在一个适合水平。
3.1.11分析内容
除基于阈值的监控诉警之外,还须对如下信息提供统计分析:
⏹内存利用率
提供最近一段时刻内(如最近24小时)内存(含物理内存和互换区空间)利用率转变趋势分析。
本指标属于波动指标,不须长期保留。
⏹互换空间利用率
提供最近一段时刻内(如最近24小时)互换区空间利用率转变趋势分析。
本指标属于波动指标,不须长期保留。
⏹内存页面调进率
提供最近一段时刻内(如最近24小时)内存页面调进率转变趋势分析。
本指标属于波动指标,不须长期保留。
⏹内存页面调出率
提供最近一段时刻内(如最近24小时)内存页面调出率转变趋势分析。
本指标属于波动指标,不须长期保留。
3.1.12监控方式
Linux操作系统提供如下命令检查内存利用情形:
Free:
查看物理内存和互换空间的大小、利用情形,和统分派但未被利用的buffers和cache数量;
Vmstat:
查看已利用虚拟内存大小、可用内存大小、用作缓冲的内存大小、
用作缓存的内存大小、每秒从互换区写到内存的大小、每秒写入互换区的内存大小;
top:
可显示进程占用内存情形。
文件系统
3.1.13搜集信息
Linux以一组通用对象的角度看待所有文件系统,这些对象是超级块(superblock)、inode、dentry和文件。
超级块在每一个文件系统的根上,超级块描述和保护文件系统的状态。
文件系统中治理的每一个对象(文件或目录)在Linux中表示为一个inode。
inode包括治理文件系统中的对象所需的所有元数据(包括能够在对象上执行的操作)。
另一组结构称为dentry,它们用来实现名称和inode之间的映射,有一个目录缓存用来保留最近利用的dentry。
dentry还保护目录和文件之间的关系,从而支持在文件系统中移动。
一个文件系统许诺的inode节点数是有限的,若是文件数量太多,即便每一个文件都是0字节的空文件,系统最终也会因为节点空间耗尽而不能再创建文件。
文件系统监控要紧监控文件系统空间利用情形和inode节点可用率,须提供如下信息:
序号
信息项
说明
1
挂载点
文件系统的挂载点,如/
2
文件系统空间可用率
文件系统空闲空间占总空间百分比
3
文件系统索引节点(i-nodes)可用率
文件系统剩余空闲索引节点(i-nodes)数占总索引节点数百分比
4
文件系统总空间
操作系统分配给文件系统总的可用空间
5
文件系统已用空间
文件系统当前已使用空间
6
文件系统剩余空间
文件系统当前剩余可用空间
7
文件系统总节点数
文件系统总的索引节点(i-nodes)数
8
文件系统已用节点数
文件系统已使用索引节点(i-nodes)数
9
文件系统可用节点数
文件系统剩余可用索引节点(i-nodes)数
建议搜集频率180秒。
3.1.14监控问题
⏹文件系统剩余空间不足
当文件系统剩余空间不足(如300M)时或文件系统空间可用率过低(如15%)时报告本问题。
为了提高操作系统运行效率,文件系统应该维持必然空闲空间,依照体会当空闲空间小于总空间15%时,系统操作会明显变慢。
若是文件系统空间耗尽,就无法创建新文件,会致使程序运行错误。
在显现本问题时,应采取方法增加文件系统可用空间大小,如删除没必要要保留文件(如临时文件)和清除历史日记、紧缩不常利用文件等,严峻的乃至需要考虑重建文件系统以分派更多空间。
⏹文件系统可用索引节点不足
当文件系统空闲索引节点比例太低时(如<20%)报告本问题。
一个文件占用一个索引节点,当索引节点耗尽时将致使无法创建新文件。
索引节点耗尽的缘故是文件数量太多或创建文件系统对索引节点利用量估量不足。
在显现本问题时,可删除部份文件以释放索引节点,或将空闲分区软链接到本文件系统某个目录以利用其他分区的索引节点数,最后也可重建文件系统以创建适合的索引节点数量(这种方式需做好备份)。
3.1.15分析内容
除基于阈值的监控诉警之外,还须对如下信息提供统计分析:
⏹文件系统已用空间
提供指按时刻内文件系统已利用空间增加趋势分析,从中能分析出一段时刻空间增加量,给磁盘空间扩容能提供依据。
另外如能提供空间增加速度转变,也可发觉一些异样现象,如某月磁盘空间增加专门大。
本指标需要长期保留。
3.1.16监控方式
Linux操作系统提供如下命令检查文件系统利用情形:
Df:
查看文件系统利用情形,包括挂载点、块
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Linux 主机 监控 需求 说明书