系统磁盘IO监控与评估.docx

上传人:b****6 文档编号:7073258 上传时间:2023-01-17 格式:DOCX 页数:14 大小:96.89KB
下载 相关 举报
系统磁盘IO监控与评估.docx_第1页
第1页 / 共14页
系统磁盘IO监控与评估.docx_第2页
第2页 / 共14页
系统磁盘IO监控与评估.docx_第3页
第3页 / 共14页
系统磁盘IO监控与评估.docx_第4页
第4页 / 共14页
系统磁盘IO监控与评估.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

系统磁盘IO监控与评估.docx

《系统磁盘IO监控与评估.docx》由会员分享,可在线阅读,更多相关《系统磁盘IO监控与评估.docx(14页珍藏版)》请在冰豆网上搜索。

系统磁盘IO监控与评估.docx

系统磁盘IO监控与评估

AIX系统磁盘IO性能评估2

一,对磁盘IO的性能考虑,裸设备优缺点分析2

1.1对磁盘IO的性能考虑2

1.2裸设备的优点2

1.3裸设备的缺点2

二,IOSTAT工具使用3

2.1参数与用法3

2.2iostat报告解析6

三,sar–d看7

四,使用lslv–llvname估逻辑卷的碎片情况8

五,使用vmstat命令评估调页空间10

六,使用filemon命令监控系统IO10

6.1filemon标记描述11

6.2filemon报告解析11

七,监视磁盘IO的小结12

AIX系统磁盘IO性能评估

一,对磁盘IO的性能考虑,裸设备优缺点分析

1.1对磁盘IO的性能考虑

1,将频繁访问的文件系统和裸设备尽可能放置在不同的磁盘上.

2,在建立逻辑卷时尽可能使用mklv的命令开关给不同的文件系统和裸设备赋予不同的内策略.

3,使用磁盘设备驱动器的功能属性构建合适的RAID方式,以获得更高的数据安全性和存取性能.一般考虑采用RAID5或者RAID10的方式,对于写要求比较高的系统,一般建议采用RAID10方式.

4,尽可能利用内存读写带宽远比直接磁盘IO操作性能优越的特点,使频繁访问的文件或数据置于内存中进行操作处理.

1.2裸设备的优点

由于忽略了文件系统缓冲器而直接读写,从而具有更好的性能.对磁盘的直接读写就意味着取消了磁盘与文件系统的同步要求.这一点对于纯OLTP系统非常有用,因为在这种系统中,读写的随机性非常大以至于一旦数据被读写之后,它们在以后的较长一段时间内不会得到再次使用.除了OLTP,raw设备还能够从以下几个方面改善DSS应用程序性能.

排序:

由于对临时表空间的写作数据更快,所以对排序也有一定的好处.

序列号访问:

比如对表,索引的完全扫描等序列化操作,这种速度会更快.

直接读写:

不需要经过OS级的缓存,节约了内存资源,在一定程度上避免了内存的争用.

避免了OS的cache预读功能,减少了IO.

采用裸设备避免了文件系统的开销.比如维护I-node,空闲块等.

1.3裸设备的缺点

1,裸设备的空间管理不灵活,需要预先规划好裸设备上的空间使用,还应当保留一部分裸设备以应付突发情况.这是对空间的浪费.

2,很多备份工具对裸设备的支持不足,导致备份的操作方式比较原始,麻烦.

二,IOSTAT工具使用

Iostat主要用来报告中央处理器(CPU)统计信息和整个系统,适配器,tty设备,磁盘和CD-ROM的输入输出统计信息.Iostat的一个缺点是它不能对某个进程进行深入分析.仅对系统的整体情况进行分析.

2.1参数与用法

iostat[-s][-a][-d|-t][-T][-m][PhysicalVolume...][Interval[Count]]

1.其中-s为显示系统信息.

#iostat-s

Systemconfiguration:

lcpu=4drives=11paths=2vdisks=0

tty:

tintoutavg-cpu:

%user%sys%idle%iowait

0.02.70.80.398.70.2

System:

i2db

KbpstpsKb_readKb_wrtn

200.74.615265583791603904240

Disks:

%tm_actKbpstpsKb_readKb_wrtn

hdisk00.33.00.62033231327206892

hdisk10.00.00.031570

dac00.0197.74.015062229091576697348

dac0utm0.00.00.000

hdisk20.00.00.000

hdisk30.00.00.000

hdisk40.00.00.000

hdisk50.7197.74.015062229091576697348

hdisk60.00.00.000

hdisk70.00.00.000

cd00.00.00.000

2,-d标志不能和-t标志合用,且仅仅显示磁盘使用率报告.

#iostat-d

Systemconfiguration:

lcpu=4drives=11paths=2vdisks=0

Disks:

%tm_actKbpstpsKb_readKb_wrtn

hdisk00.33.00.62033231727207032

hdisk10.00.00.031570

dac00.0197.74.015062229131576700356

dac0utm0.00.00.000

hdisk20.00.00.000

hdisk30.00.00.000

hdisk40.00.00.000

hdisk50.7197.74.015062229131576700356

hdisk60.00.00.000

hdisk70.00.00.000

cd00.00.00.000

3,-a显示适配器吞吐量报告

#iostat-a

Systemconfiguration:

lcpu=4drives=11paths=2vdisks=0

tty:

tintoutavg-cpu:

%user%sys%idle%iowait

0.02.70.80.398.70.2

Adapter:

KbpstpsKb_readKb_wrtn

sisscsia03.00.62033547827207108

Disks:

%tm_actKbpstpsKb_readKb_wrtn

hdisk00.33.00.62033232127207108

hdisk10.00.00.031570

Adapter:

KbpstpsKb_readKb_wrtn

fcs0197.74.015062229131576701580

Disks:

%tm_actKbpstpsKb_readKb_wrtn

dac00.0197.74.015062229131576701580

hdisk20.00.00.000

hdisk30.00.00.000

hdisk40.00.00.000

hdisk50.7197.74.015062229131576701580

hdisk60.00.00.000

hdisk70.00.00.000

Adapter:

KbpstpsKb_readKb_wrtn

vsa00.00.000

Disks:

%tm_actKbpstpsKb_readKb_wrtn

dac0utm0.00.00.000

Adapter:

KbpstpsKb_readKb_wrtn

ide00.00.000

Disks:

%tm_actKbpstpsKb_readKb_wrtn

cd00.00.00.000

4,-t标记排除了-d标记且仅显示tty和cpu的用法报告

#iostat-t

Systemconfiguration:

lcpu=4

tty:

tintoutavg-cpu:

%user%sys%idle%iowait

0.02.70.80.398.70.2

5,-T打印iostat输出的每一行边上的时间戳记,

#iostat-T

Systemconfiguration:

lcpu=4drives=11paths=2vdisks=0

tty:

tintoutavg-cpu:

%user%sys%idle%iowaittime

0.02.70.80.398.70.211:

44:

48

Disks:

%tm_actKbpstpsKb_readKb_wrtntime

hdisk00.33.00.6203323252720732811:

44:

48

hdisk10.00.00.03157011:

44:

48

dac00.0197.74.01506222925157670517611:

44:

48

dac0utm0.00.00.00011:

44:

48

hdisk20.00.00.00011:

44:

48

hdisk30.00.00.00011:

44:

48

hdisk40.00.00.00011:

44:

48

hdisk50.7197.74.01506222925157670517611:

44:

48

hdisk60.00.00.00011:

44:

48

hdisk70.00.00.00011:

44:

48

cd00.00.00.00011:

44:

48

2.2iostat报告解析

Iostat命令生成四种类型的报告,tty和cpu使用率报告,磁盘使用率报告,系统吞吐量报告和适配器吞吐量报告.

1,tty和cpu使用率报告

tty:

tintoutavg-cpu:

%user%sys%idle%iowaittime

0.02.70.80.398.70.211:

44:

48

对于多处理器系统,cpu值是所有处理器的总平均.同时,IO等待状态是系统级定义的,而不是每个处理器.

注释:

tty是teletype的缩写.通常使用tty来简称各种类型的终端设备

描述

Tin

系统为所有tty读取的字符总数

Tout

系统为所有tty写入的字符总数

%user

用户使用cpu的时间百分比

%sys

系统使用cpu的时间百分比

%idle

Cpu空闲且系统没有未完成的io请求的时间百分比

%iowait

Cpu空闲期间系统有未完成的磁盘io请求的时间百分比

每过一定的时间间隔,内核就更新这条信息(一般每秒六十次).Tty报告提供了从系统中所有终端收到的每秒字符数,以及每秒输出到系统所有终端的字符的总数.

2,磁盘使用率报告

这个报告提供了在每个物理磁盘上的统计信息.

描述

%tm_act

物理磁盘处于活动状态的时间百分比

Kbps

平均每秒传输(读或写)到驱动器的数据量

Tps

传输次数,也就是对物理磁盘的io请求次数

Kb_read

读取的kb总数

Kb_wrtn

写入的KB总数

3,系统吞吐量报告

这个报告提供了针对系统的统计信息.

描述

Kbps

平均每秒传输(读或写)到系统的数据量

Tps

传输次数,也就是对系统的io请求次数

Kb_read

读取的kb总数

Kb_wrtn

写入的KB总数

4,适配器吞吐量报告

这个报告提供了针对适配器的统计信息.

描述

Kbps

平均每秒传输(读或写)到适配器的数据量

Tps

传输次数,也就是对适配器的io请求次数

Kb_read

读取的kb总数

Kb_wrtn

写入的KB总数

三,sar–d看

搜集,报告,或者保存系统活动信息

#sar-d11

AIXi2db3500CC886E4C0007/10/09

Systemconfiguration:

lcpu=4drives=11

09:

42:

23device%busyavquer+w/sKbs/savwaitavserv

09:

42:

24hdisk000.0000.00.0

hdisk100.0000.00.0

dac000.0000.00.0

dac0utm00.0000.00.0

hdisk200.0000.00.0

hdisk300.0000.00.0

hdisk400.0000.00.0

hdisk500.0000.00.0

hdisk600.0000.00.0

hdisk700.0000.00.0

cd000.0000.00.0

描述

Device

设备名称

%busy

磁盘活动占时间百分比对应%tm_act

Avque

磁盘活动时间内未完成的请求的平均值,该值较高表明存在IO瓶颈

R+W/S

对应tps,报告从一个设备读和写数据的次数

Blks/s

以0.5KB为单位的传输数据量

Avwait

总是设置为0.0

Avserv

总是设置为0.0

四,使用lslv–llvname估逻辑卷的碎片情况

1,显示卷组列表:

#lsvg

rootvg

rootvg1

datavg

2,查看卷组的逻辑卷组成

#lsvg-ldatavg

datavg:

LVNAMETYPELPsPPsPVsLVSTATEMOUNTPOINT

loglv00jfs2log111open/syncdN/A

fslv03jfs27207201open/syncd/oradata

3,显示某个逻辑卷的信息

#lslvfslv03

LOGICALVOLUME:

fslv03VOLUMEGROUP:

datavg

LVIDENTIFIER:

00cc886e00004c00000001153b9e95c7.2PERMISSION:

read/write

VGSTATE:

active/completeLVSTATE:

opened/syncd

TYPE:

jfs2WRITEVERIFY:

off

MAXLPs:

720PPSIZE:

128megabyte(s)

COPIES:

1SCHEDPOLICY:

parallel

LPs:

720PPs:

720

STALEPPs:

0BBPOLICY:

relocatable

INTER-POLICY:

minimumRELOCATABLE:

yes

INTRA-POLICY:

middleUPPERBOUND:

32

MOUNTPOINT:

/oradataLABEL:

/oradata

MIRRORWRITECONSISTENCY:

on/ACTIVE

EACHLPCOPYONASEPARATEPV?

:

yes

SerializeIO?

:

NO

4,显示每个逻辑卷由哪些物理分区组成

#lslv-mfslv03|head

fslv03:

/oradata

LPPP1PV1PP2PV2PP3PV3

00010162hdisk5

00020163hdisk5

00030164hdisk5

00040165hdisk5

00050166hdisk5

00060167hdisk5

00070168hdisk5

00080169hdisk5

5,评估逻辑卷的碎片情况

#lslv-lfslv03

fslv03:

/oradata

PVCOPIESINBANDDISTRIBUTION

hdisk5720:

000:

00022%160:

159:

159:

160:

082

描述

PV

物理卷名称

Copies

三个字段分别代表

720:

在物理卷上至少包含一个物理分区的逻辑分区的数量

0:

在物理卷上至少包含两个物理分区(一个副本)的逻辑分区数量

0:

在物理卷上至少包含两个物理分区(两个副本)的逻辑分区数量

Inband

物理卷上物理分区的百分比.此物理卷属于逻辑卷,且分配在由物理内分配策略指定的物理卷中

Distribution

分配在物理卷每个区域内:

160:

159:

159:

160:

082

外部边缘(160),外部中间(159),中间(159),内部中心(160),内部边缘(182)的物理分区数目.

对于该例中的结果说明:

Copies显示逻辑卷fslv03只复制了一份.

InBand显示了内策略是如何遵循的.这个百分比越高,分配效率就越好.

Distribution显示,逻辑卷fslv03总共有720个逻辑分区,外部边缘(160),外部中间(159),中间(159),内部中心(160),内部边缘(182).Inband=159/720=22%.

6,查看卷组的物理卷组成

#lsvg-pdatavg

datavg:

PV_NAMEPVSTATETOTALPPsFREEPPsFREEDISTRIBUTION

hdisk5active7997800..00..00..00..78

五,使用vmstat命令评估调页空间

#vmstat-s

293967066totaladdresstrans.Faults:

地址翻译错误,每次发生地址转换页面故障时增加.

383887108pageins:

入页:

随虚拟内存管理器读入的每页增加.计数随调页空间和文件空间的入页增加.它和出页统计信息一起表示实际IO总量.

398373792pageouts

4197657pagingspacepageins:

调页空间入页,只随VMM启动的来自调页空间的入页而增加.

4351404pagingspacepageouts

0totalreclaims

237662205zerofilledpagesfaults

222070executablefilledpagesfaults

1399248325pagesexaminedbyclock

1487revolutionsoftheclockhand

518506491pagesfreedbytheclock

4249427backtracks

420362freeframewaits

0extendXPTwaits

16247685pendingI/Owaits

782289679startI/Os

69941471iodones

3375131147cpucontextswitches

381625154deviceinterrupts

814614929softwareinterrupts

2805794153decrementerinterrupts

410037mpc-sentinterrupts

410037mpc-receiveinterrupts

1677224phantominterrupts

0traps

24457805147syscalls

六,使用filemon命令监控系统IO

监视文件系统的性能,并且报告代表逻辑文件,虚拟内存段,逻辑卷和物理卷的IO活动.

filemon[-d][-iTrace_File-nGennames_File][-oFile][-OLevels][-P][-Tn][-u][-v]

6.1filemon标记描述

-I

-ofile写IO活动报告到指定的File,而不是到stdout文件.

-d启动filemon命令,但是一直推迟跟踪直到用户执行trcon命令.默认立刻启动.

-Tn设置内核的跟踪缓冲区大小为n字节.缺省值32000字节.

-Olevels只监控指定的文件系统级别.有效的级别标识是

Lf逻辑文件级别

Vm虚拟内存级别

Lv逻辑卷级别

Pv物理卷级别

Alllf,vm,lv,pv的简单表示

6.2filemon报告解析

1,最活动的文件报告

描述

#MBS

从文件中传输的数据总量,递减排序

#opns

在评估周期内,文件被打开的次数

#Rds

对文件的系统读取调用数目

#wrs

对文件的系统写入调用数目

File

文件名

Volume:

inode

2,最活动的段报告

描述

#MBS

从段中传输的数据总量,递减排序

#rpgs

从磁盘读入到段的那些4KB的页的数目

#wpgs

Segid

段的内部标识

Segtype

输入段:

工作段,持久段,客户机段,页面表段,系统段或者特殊的永久段

Volume:

inode

3,最活动的逻辑卷报告

描述

Util

卷的使用情况(忙的时间片)

#rblk

从卷中读入的512字节的块的数目

#wblk

Kb/sec

总共的传输吞吐量

Volume

卷的名称

3,最活动的物理卷报告

描述

Util

卷的使用情况(忙的时间片)

#rblk

从卷中读入的512字节的块的数目

#wblk

Kb/sec

总共的传输吞吐量

Volume

卷的名称

七,监视磁盘IO的小结

一般来说,高的%iowait表明系统存在一个应用程序问题,缺少内存问题或低效的IO子系统配置.例如,应用程序的问题可能是由于过多的IO请求而不是处理许多数据.理解IO瓶颈并且要清楚解决瓶颈问题的关键在于提高IO子系统的效率.一些典型的解决方案可能包括.

1,限制在特定的物理盘上活动逻辑卷和文件系统的数目.该方法是为了在所有的物理磁盘驱动器中平衡文件IO.

2,在多个物理磁盘间展开逻辑卷.该方法在当有一些不同的文件被存取时特别有用.

3,为一个卷组创建多个Journaled文件系统(JFS)日志并且把它们分配到特定的文件系统中(最好在快速写高速缓存驱动器中)。

这对应用程序创建、删除或者修改大量文件特别是临时文件来说十分有益。

4,如果iostat命令的输出结果表明您的负载的I/O活动没有被均衡地分配到系统磁盘驱动器中,并且一个或多个磁盘驱动器的使用率经常在70-80之间或更高,您就得考虑重组文件系统,例如备份和恢复文件系统以便减少碎片。

碎片将引起驱动器过多地搜索并且可能产生大部分响应时间过长。

5,如果很大,I/O增强的后台作业将涉及和相应时间交互,您可能希望激活I/O调步。

6,如果有迹象表明一小部分文件被一次又一次地读取,您可以考虑附加的实存是否允许那些文件更加有效地缓存。

7,如果负载的存取模式是随机占主导地位,您可能要考虑增加磁盘并把按那些随机存取的文件分布到更

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 面试

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1