分析UNIX(AIX) IO繁忙的方法 Analyse UNIX(AIX) IO busy
tomroom.cublog.cn 作者:环保男 tomroom
Environment应用环境:AIX OS 5.3 , Storage IBM DS4800, DBB2 , FILEMON
Main step排查主要步骤:
1. Use filemon to monitor period I/O , and create filemon outfile.使用 filemon 命令详细分析 I/O 生成结果,参考附录1FILEMON
2. Check Filemon outfile先查看Most Active Logical Volumes 快速定位 那个filesystem mount point最忙,最有可能有问题
3. Login AIX to check busiest mount point , hardware error,DISK (PV) and file system登录AIX检查最忙的LV 以及所有硬件,FILESYSTEM是否有报错,检查出问题原因DB CONFIG,建议用户修改DB2配置解决这个问题
situation现象: UNIX(AIX) NMON Performane monitor find one of PV(disk) hdisk0 100% busy. AIX I/O繁忙影响应用,NMON发现HDISK0 BUSY 业务高峰异常100%
Detail step 详细步骤
l Use filemon to monitor period I/O , and create filemon outfile.使用 filemon 命令详细分析 I/O 生成结果,参考附录1 FILEMON使用方法
l Check Filemon outfile first see Most Active Logical Volumes, second to see Most Active Physical Volumes and Most active file .I find /db2tempdb is the busyest ,it maybe have problem
Filemon 个人经验先查看Most Active Logical Volumes 快速定位 那个filesystem mount point最忙,最有可能有问题,下面例子里是/db2tempdb
此外供应商有其他建议(由于涉及修改系统值,个人认为不是最主要的原因没有修改)
paging也非常繁忙,也就是应用使用内存在频繁的换页,建议调整内存参数为:
#vmo -p -o minperm%=3
#vmo -p -o maxperm%=90
#vmo -p -o maxclient%=90
#vmo -p -o lru_file_repage=0
还有您的jfs2log设备繁忙,这是因为应用在频繁访问文件系统,是否这些文件系统都是用同一个日志设备?您可以尝试建新的日志设备供某些文件系统使用,建在其他磁盘上,减小压力。
Thu Jan 20 12:13:49 2011
System: AIX 5.3 Node: bidbs002 Machine:
Cpu utilization: 81.8%
Cpu allocation: 72.0%
45617967 events were lost. Reported data may have inconsistencies or errors.
Most Active Files
------------------------------------------------------------------------
#MBs #opns #rds #wrs file volume:inode
------------------------------------------------------------------------
26.9 1 1 493 S0000105.LOG /dev/db2tempdblv:24860
2.0 6 510 0 services /dev/hd4:1839
1.5 7 396 0 unix /dev/hd2:41182
0.2 63 63 0 global.reg /dev/hd9var:4105
0.2 25 50 0 profile.env /dev/hd1:8444
0.2 24 47 0 default.env /dev/db2dblv01:6814
……..
Most Active Logical Volumes
------------------------------------------------------------------------
util #rblk #wblk KB/s volume description
------------------------------------------------------------------------
1.00 64912 211800 1610.1 /dev/db2tempdblv /db2tempdb
1.00 1256 3480 27.6 /dev/hd6 paging
1.00 0 2048 11.9 /dev/hd8 jfs2log
0.55 0 408 2.4 /dev/hd1 /home
0.50 24 40 0.4 /dev/hd2 /usr
0.22 1000 8 5.9 /dev/db2dblv01 /db2db
0.21 40 48 0.5 /dev/hd9var /var
Most Active Physical Volumes
------------------------------------------------------------------------
util #rblk #wblk KB/s volume description
------------------------------------------------------------------------
1.00 62680 465699 3074.5 /dev/hdisk0 N/A
0.97 1000 0 5.8 /dev/hdisk2 N/A
0.96 1200 11411 73.4 /dev/hdisk1 N/A
0.00 0 8 0.0 /dev/hdisk5 N/A
------------------------------------------------------------------------
Detailed File Stats
------------------------------------------------------------------------
…………………..
附录2里有全部的filemon文件
l Login AIX to check busiest mount point , hardware error,DISK (PV) and file system
df check Filesystem used% 命令检查未发现文件系统使用率有异常,
# df -g
Filesystem GB blocks Free %Used Iused %Iused Mounted on
/dev/hd4 15.00 5.43 64% 5202 1% /
/dev/hd2 5.00 1.17 77% 66618 20% /usr
/dev/hd9var 1.00 0.76 24% 807 1% /var
/dev/hd3 5.00 0.97 81% 2666 2% /tmp
/dev/hd1 1.00 0.55 45% 922 1% /home
/proc - - - - - /proc
/dev/hd10opt 5.00 4.86 3% 4070 1% /opt
/dev/ibmsoft 8.00 3.77 53% 1183 1% /ibmsoft
/dev/db2tempdblv 50.00 24.72 51% 397 1% /db2tempdb
/dev/db2dblv01 1480.00 676.25 55% 4991 1% /db2db
/dev/inforlv 10.00 10.00 1% 4 1% /informatica
df command get /db2tempdb LV is db2tempdblv
上面获得之前filemon检查里最忙mount点db2tempdb的LV是db2tempdblv
Use command lslv -m check which disk db2tempdblv is in
lslv -m检查 filemon最忙的文件系统,分布在那个disk (PV)上
# lslv -m db2tempdblv
db2tempdblv:/db2tempdb
LP PP1 PV1 PP2 PV2 PP3 PV3
0001 0007 hdisk0
0002 0002 hdisk0
0003 0003 hdisk0
0004 0004 hdisk0
0005 0005 hdisk0
0006 0006 hdisk0
0007 0329 hdisk0
0008 0330 hdisk0
0009 0331 hdisk0
0010 0332 hdisk0
0011 0333 hdisk0
0012 0334 hdisk0
0013 0335 hdisk0
0014 0336 hdisk0
0015 0337 hdisk0
0016 0338 hdisk0
。。。。。。。。
Find DB2 TEMPDB db2tempdblv on local disk not on SAN Storage. This config has problem. Below other hardware and filesystem check, I am not find error. So this DB2 config is I/O busy reason.
发现DB2 TEMPDB db2tempdblv在rootvg的Local SAT disk不在存储上,后面再检查项目没有发现硬件或者FILESYSTEM异常,故这个不当配置主要导致TEMP DB I/O稍微一多 I/O瓶颈。
First errpt command check hardware ,I not find disk hardware Error检查AIX 没有发现硬件报错
# errpt
IDENTIFIER TIMESTAMP T C RESOURCE_NAME DESCRIPTION
D5385D18 1117114610 T H hdisk4 ARRAY OPERATION ERROR
D5385D18 1115062410 T H hdisk4 ARRAY OPERATION ERROR
Check disk(PV) lspv ,all pv is active 发现所有PV 状态都正常
# lspv
hdisk0 00c97c32ac4a406a rootvg active
hdisk1 00c97c22223fcd9c rootvg active
hdisk2 00c97c227d627d7b db2dbvg01 active
hdisk3 00c97c2272b3fd69 db2dbvg01 active
hdisk4 00c97c22d520f5e2 db2dbvg01 active
hdisk5 00c97c22d1aae9a8 db2dbvg01 active
hdisk6 00c97c2282cf49ca db2dbvg01 active
hdisk7 00c97c22f5a6932b db2dbvg01 active
Lsvg –l one by one check vg ‘s LV STATE 逐个检查VG没有发现异常,至此硬件检查结束未发现异常
# lsvg -l rootvg
rootvg:
LV NAME TYPE LPs PPs PVs LV STATE MOUNT POINT
hd5 boot 1 2 2 closed/syncd N/A
hd6 paging 200 400 2 open/syncd N/A
hd8 jfs2log 1 2 2 open/syncd N/A
hd4 jfs2 60 120 2 open/syncd /
hd2 jfs2 20 40 2 open/syncd /usr
hd9var jfs2 4 8 2 open/syncd /var
hd3 jfs2 20 40 2 open/syncd /tmp
hd1 jfs2 4 8 2 open/syncd /home
hd10opt jfs2 20 40 2 open/syncd /opt
lg_dumplv sysdump 12 12 1 open/syncd N/A
ibmsoft jfs2 32 32 1 open/syncd /ibmsoft
cdlv jfs 3 3 1 closed/syncd N/A
db2tempdblv jfs2 200 200 1 open/syncd /db2tempdb
inforlv jfs2 40 40 2 open/syncd /informatica
# lsvg -l db2dbvg01
db2dbvg01:
LV NAME TYPE LPs PPs PVs LV STATE MOUNT POINT
db2dblv01 jfs2 5920 5920 6 open/syncd /db2db
loglv00 jfs2log 1 1 1 open/syncd N/A
# lsvg db2dbvg01
VOLUME GROUP: db2dbvg01 VG IDENTIFIER:
附录超过限制 ,请下载PDF 附件 文档 附录超过限制 ,请下载PDF 附件 文档
Environment应用环境:AIX OS 5.3 , Storage IBM DS4800, DBB2 , FILEMON
Main step排查主要步骤:
1. Use filemon to monitor period I/O , and create filemon outfile.使用 filemon 命令详细分析 I/O 生成结果,参考附录1FILEMON
2. Check Filemon outfile先查看Most Active Logical Volumes 快速定位 那个filesystem mount point最忙,最有可能有问题
3. Login AIX to check busiest mount point , hardware error,DISK (PV) and file system登录AIX检查最忙的LV 以及所有硬件,FILESYSTEM是否有报错,检查出问题原因DB CONFIG,建议用户修改DB2配置解决这个问题
situation现象: UNIX(AIX) NMON Performane monitor find one of PV(disk) hdisk0 100% busy. AIX I/O繁忙影响应用,NMON发现HDISK0 BUSY 业务高峰异常100%
UNIX_NMON_IOBUSY.JPG (79.79 KB, 下载次数: 14)
NMON
Detail step 详细步骤
l Use filemon to monitor period I/O , and create filemon outfile.使用 filemon 命令详细分析 I/O 生成结果,参考附录1 FILEMON使用方法
l Check Filemon outfile first see Most Active Logical Volumes, second to see Most Active Physical Volumes and Most active file .I find /db2tempdb is the busyest ,it maybe have problem
Filemon 个人经验先查看Most Active Logical Volumes 快速定位 那个filesystem mount point最忙,最有可能有问题,下面例子里是/db2tempdb
此外供应商有其他建议(由于涉及修改系统值,个人认为不是最主要的原因没有修改)
paging也非常繁忙,也就是应用使用内存在频繁的换页,建议调整内存参数为:
#vmo -p -o minperm%=3
#vmo -p -o maxperm%=90
#vmo -p -o maxclient%=90
#vmo -p -o lru_file_repage=0
还有您的jfs2log设备繁忙,这是因为应用在频繁访问文件系统,是否这些文件系统都是用同一个日志设备?您可以尝试建新的日志设备供某些文件系统使用,建在其他磁盘上,减小压力。
Thu Jan 20 12:13:49 2011
System: AIX 5.3 Node: bidbs002 Machine:
Cpu utilization: 81.8%
Cpu allocation: 72.0%
45617967 events were lost. Reported data may have inconsistencies or errors.
Most Active Files
------------------------------------------------------------------------
#MBs #opns #rds #wrs file volume:inode
------------------------------------------------------------------------
26.9 1 1 493 S0000105.LOG /dev/db2tempdblv:24860
2.0 6 510 0 services /dev/hd4:1839
1.5 7 396 0 unix /dev/hd2:41182
0.2 63 63 0 global.reg /dev/hd9var:4105
0.2 25 50 0 profile.env /dev/hd1:8444
0.2 24 47 0 default.env /dev/db2dblv01:6814
……..
Most Active Logical Volumes
------------------------------------------------------------------------
util #rblk #wblk KB/s volume description
------------------------------------------------------------------------
1.00 64912 211800 1610.1 /dev/db2tempdblv /db2tempdb
1.00 1256 3480 27.6 /dev/hd6 paging
1.00 0 2048 11.9 /dev/hd8 jfs2log
0.55 0 408 2.4 /dev/hd1 /home
0.50 24 40 0.4 /dev/hd2 /usr
0.22 1000 8 5.9 /dev/db2dblv01 /db2db
0.21 40 48 0.5 /dev/hd9var /var
Most Active Physical Volumes
------------------------------------------------------------------------
util #rblk #wblk KB/s volume description
------------------------------------------------------------------------
1.00 62680 465699 3074.5 /dev/hdisk0 N/A
0.97 1000 0 5.8 /dev/hdisk2 N/A
0.96 1200 11411 73.4 /dev/hdisk1 N/A
0.00 0 8 0.0 /dev/hdisk5 N/A
------------------------------------------------------------------------
Detailed File Stats
------------------------------------------------------------------------
…………………..
附录2里有全部的filemon文件
l Login AIX to check busiest mount point , hardware error,DISK (PV) and file system
df check Filesystem used% 命令检查未发现文件系统使用率有异常,
# df -g
Filesystem GB blocks Free %Used Iused %Iused Mounted on
/dev/hd4 15.00 5.43 64% 5202 1% /
/dev/hd2 5.00 1.17 77% 66618 20% /usr
/dev/hd9var 1.00 0.76 24% 807 1% /var
/dev/hd3 5.00 0.97 81% 2666 2% /tmp
/dev/hd1 1.00 0.55 45% 922 1% /home
/proc - - - - - /proc
/dev/hd10opt 5.00 4.86 3% 4070 1% /opt
/dev/ibmsoft 8.00 3.77 53% 1183 1% /ibmsoft
/dev/db2tempdblv 50.00 24.72 51% 397 1% /db2tempdb
/dev/db2dblv01 1480.00 676.25 55% 4991 1% /db2db
/dev/inforlv 10.00 10.00 1% 4 1% /informatica
df command get /db2tempdb LV is db2tempdblv
上面获得之前filemon检查里最忙mount点db2tempdb的LV是db2tempdblv
Use command lslv -m check which disk db2tempdblv is in
lslv -m检查 filemon最忙的文件系统,分布在那个disk (PV)上
# lslv -m db2tempdblv
db2tempdblv:/db2tempdb
LP PP1 PV1 PP2 PV2 PP3 PV3
0001 0007 hdisk0
0002 0002 hdisk0
0003 0003 hdisk0
0004 0004 hdisk0
0005 0005 hdisk0
0006 0006 hdisk0
0007 0329 hdisk0
0008 0330 hdisk0
0009 0331 hdisk0
0010 0332 hdisk0
0011 0333 hdisk0
0012 0334 hdisk0
0013 0335 hdisk0
0014 0336 hdisk0
0015 0337 hdisk0
0016 0338 hdisk0
。。。。。。。。
Find DB2 TEMPDB db2tempdblv on local disk not on SAN Storage. This config has problem. Below other hardware and filesystem check, I am not find error. So this DB2 config is I/O busy reason.
发现DB2 TEMPDB db2tempdblv在rootvg的Local SAT disk不在存储上,后面再检查项目没有发现硬件或者FILESYSTEM异常,故这个不当配置主要导致TEMP DB I/O稍微一多 I/O瓶颈。
First errpt command check hardware ,I not find disk hardware Error检查AIX 没有发现硬件报错
# errpt
IDENTIFIER TIMESTAMP T C RESOURCE_NAME DESCRIPTION
D5385D18 1117114610 T H hdisk4 ARRAY OPERATION ERROR
D5385D18 1115062410 T H hdisk4 ARRAY OPERATION ERROR
Check disk(PV) lspv ,all pv is active 发现所有PV 状态都正常
# lspv
hdisk0 00c97c32ac4a406a rootvg active
hdisk1 00c97c22223fcd9c rootvg active
hdisk2 00c97c227d627d7b db2dbvg01 active
hdisk3 00c97c2272b3fd69 db2dbvg01 active
hdisk4 00c97c22d520f5e2 db2dbvg01 active
hdisk5 00c97c22d1aae9a8 db2dbvg01 active
hdisk6 00c97c2282cf49ca db2dbvg01 active
hdisk7 00c97c22f5a6932b db2dbvg01 active
Lsvg –l one by one check vg ‘s LV STATE 逐个检查VG没有发现异常,至此硬件检查结束未发现异常
# lsvg -l rootvg
rootvg:
LV NAME TYPE LPs PPs PVs LV STATE MOUNT POINT
hd5 boot 1 2 2 closed/syncd N/A
hd6 paging 200 400 2 open/syncd N/A
hd8 jfs2log 1 2 2 open/syncd N/A
hd4 jfs2 60 120 2 open/syncd /
hd2 jfs2 20 40 2 open/syncd /usr
hd9var jfs2 4 8 2 open/syncd /var
hd3 jfs2 20 40 2 open/syncd /tmp
hd1 jfs2 4 8 2 open/syncd /home
hd10opt jfs2 20 40 2 open/syncd /opt
lg_dumplv sysdump 12 12 1 open/syncd N/A
ibmsoft jfs2 32 32 1 open/syncd /ibmsoft
cdlv jfs 3 3 1 closed/syncd N/A
db2tempdblv jfs2 200 200 1 open/syncd /db2tempdb
inforlv jfs2 40 40 2 open/syncd /informatica
# lsvg -l db2dbvg01
db2dbvg01:
LV NAME TYPE LPs PPs PVs LV STATE MOUNT POINT
db2dblv01 jfs2 5920 5920 6 open/syncd /db2db
loglv00 jfs2log 1 1 1 open/syncd N/A
# lsvg db2dbvg01
VOLUME GROUP: db2dbvg01 VG IDENTIFIER:
附录超过限制 ,请下载PDF 附件 文档 附录超过限制 ,请下载PDF 附件 文档
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
这本是个好文章,可是好象没有写完..但是我发现你的BLOG....嘿嘿,有空一定去光顾...tomroom.cublog.cn
贴图有些费力 ,博客里的pdf 看起来更好
filemon比较耗资源,慎用
不错哦,看看