Linux资源监控⽅式
1. 命令
2. 第三⽅⼯具(nmon)
3. LR(需要安装RPC相应服务包和开启服务)(略)
⼀、命令 ⽅式
1. top (系统资源管理器)
2. vmstat (查看虚拟内存状态)
3. free(查看未使⽤的和已使⽤的内存数⽬)
4. iostat (查看io磁盘信息)
5. sar ⽹络
1.1 命令 top(系统资源管理器)
说明:1). top命令类似与windows的任务管理器,查看内存、CPU、进程等操作信息2). 在Linux系统中常⽤top命令做资源性能分析⼯具核⼼:1). 前五⾏显示系统整体的统计信息;2). load average 代表负载队列到现在平均⻓度(三个时间段),1分钟、5分钟、15分钟 【重点关注】参数:1). 第⼀⾏ 任务列队基本信息 【关注系统负载】- 06:49:14 :系统当前时间- up 2:32 :系统运⾏时间 2⼩时32分钟- 3 users:当前登录⽤户数- load average:系统负载,即任务队列的平均⻓度-(1分钟、5分钟、15分钟)到现在的平均⻓度2). 第⼆⾏ 进程列队信息 【了解】- Tasks : 201 total 进程总数- 2 running 正在运⾏进程数- 199 sleeping 睡眠进程数3). 第三⾏ CPU信息- 0.3 %us:⽤户空间占⽤CPU百分⽐- 0.3 %sy: 内核空间占⽤CPU百分⽐- 99.2%id: 空闲CPU百分⽐ 【关注】4). 第四⾏ 内存信息- Mem : 3908524k ktotal 物理内存总量- 1294032k k used 使⽤的物理内存总量- 2614492k k free 空闲内存总量 【关注】- 74352k k buffers ⽤作内核缓存的内存量5). 第五⾏ 交换区内存 【了解】- Swap : 4046844 k total 交换分区总量- 0 k used 使⽤的交换区总量- 4046844 k free 空闲交换区总量- 297720 k cached 缓冲的交换区总量
1.2 命令 vmstat(查看内存明细)
1. Procs(进程)
r: 运⾏队列中进程数量,这个值也可以判断是否需要增加CPU。
2. Memory(内存)
swpd: 使⽤虚拟内存⼤⼩,如果swpd的值不为0,但是SI,SO的值⻓期为0,这种情况不会影响系统性能。
free: 空闲物理内存⼤⼩。
3. Swap
si: 每秒从交换区写到内存的⼤⼩,由磁盘调⼊内存。
so: 每秒写⼊交换区的内存⼤⼩,由内存调⼊磁盘。
4. IO(现在的Linux版本块的⼤⼩为1kb)
bi: 每秒读取的块数
bo: 每秒写⼊的块数
5. system(系统)
in: 每秒中断数,包括时钟中断。
cs: 每秒上下⽂切换数。
注意:上⾯2个值越⼤,会看到由内核消耗的CPU时间会越⼤。
6. CPU(以百分⽐表示)
us:⽤户进程执⾏时间百分⽐(user time)
sy:内核系统进程执⾏时间百分⽐(system time)
id: 空闲时间百分⽐
wa: IO等待时间百分⽐
1.3 命令 free(查看内存) 【推荐】
说明:显示当前系统未使⽤的和已使⽤的内存数⽬,还可以显示被内核使⽤的内存缓冲区。语法:free [options]常⽤:free -m (-m:以MB为单位显示内存使⽤情况)Mem⾏解释:total:内存总数;used:已经使⽤的内存数;free:空闲的内存数;shared:当前已经废弃不⽤;buffers Buffer:缓冲内存数;cached Page:缓存内存数。(-/+ buffers/cache)解释:(-buffers/cache) used内存数:第⼀部分Mem⾏中的 used – buffers – cached=程序占⽤内存数(+buffers/cache) free内存数: 第⼀部分Mem⾏中的 free + buffers + cached=可挪⽤内存数
1.4 命令 iostat(查看io磁盘)
说明:iostat是查看Linux系统io是否存在瓶颈很好⽤的⼀个命令;语法:Usage: iostat [ options ] [ [ ] ]options:选项 interval:间隔 count:计数常⽤:iostat -x 1 1(x:输出列,1:间隔1秒,1:采集1次)CPU:1.%user: 在⽤户级别运⾏所使⽤的CPU的百分⽐2.%sys: 在系统级别(kernel)运⾏所使⽤CPU的百分⽐3.%iowait: CPU等待硬件I/O时,所占⽤CPU百分⽐4.%idle: CPU空闲时间的百分⽐Device:【重点】1.tps: 每秒钟发送到的I/O请求数2.avgqu-sz: 是平均请求队列的⻓度,毫⽆疑问,队列⻓度越短越好3.await:每⼀个IO请求的处理的平均时间(单位是毫秒)4.rkB/s: 每秒读取数据量(单位kb)5.wkB/s: 每秒写⼊数据量(单位kb)6.%util: 磁盘的繁忙程度,如接近100%那说明磁盘已经到瓶颈
1.5 命令 sar (查看⽹络)
说明:sar命令可以通过参数单独查看系统某个局部的使⽤情况语法:sar [options] [-A] [-o file] t [n]1. 命令:sar -n DEV 1 2(-n:⽹络设备;DEV:磁盘设备)1). 1:表示⼀秒采集⼀次信息,可⾃⾏设定2). 2: 表示采集的次数,可⾃⾏设定2. 关注指标:1). rxkB/s: 每秒接收的数据⼤⼩,单位kb2). txkB/s: 每秒发送的数据⼤⼩,单位kb3. 使⽤场景:1). 查看当前⽹络数据包⼤⼩,是否存在⽹络瓶颈
⼆、⼯具 nmon
说明: nmon 是分析 AIX 和 Linux 性能的免费⼯具。(其主要是IBM为⾃⼰的AIX操作系统开发的,但是也可以应⽤在其他Linux操作系统上)
2.1 nmon使⽤步骤
1. 解压⽂件2. 复制移动对应系统的nmon⼯具3. 执⾏⼯具4. 使⽤Excel分析⼯具分析
1. 解压⽂件
解压:tar -zxvf nmon_linux_14i.tar.gz注意:1.nmon_linux_14i.tar.gz对应的gz包名2.z:gzip压缩包;x:解压、v:详细信息、f:⽂件(必须放参数最后,⽂件前⾯)
2. 移动/复制⽂件
说明:1). rm:移动命令2). /tmp:移动到/tmp临时⽬录 (建议:直接放到 /usr/local/bin⽬录下)3). nmon:移动过去后重名命名为nmon
3. 运⾏ nmon
说明:./nmon -s3 -c10 -f -m /mnt/hgfs/vmwareShare/result(3秒钟采集⼀次,共采集10次,保存到/mnt/hgfs/vmwareShare/result)1)./nmon:当前⽬录下执⾏nmon⽂件2). -s:时⻓-采集数据频率3). -c:采集次数4). -f:⽣成⽂件名包含⽂件创建时间5). -m:指定⽣成⽂件保存⽬录提示:1. nmon⼯具只是采集结果,结果⽂件为.nmon,不能直接打开使⽤,需要使⽤Excel分析⼯具提取数据;
4. Excel分析⼯具
说明:1). 点击 标1 浏览nmon⽂件2). 点击 标2 打开nmon⽂件(分析完成后会提示保存为excel⽂件,选取保存路径进⾏保存)提示:1). Excel需要开启宏设置;2). 如果提示加载⽂件类型错误,把电脑右下⻆的星期部分去掉(删除dddd);