|
AIX file
AIX 5L 上JFS和JFS2文件系统IO性能简单测试
http://www.dstfix.cn/article/200808/16-207.html
源文件所在文件系统类型
| 目标文件所在文件系统类型
| 源文件和目标文件是否在同一个文件系统
| LV是否镜像
| 所用时间(分)
| 平均速度(M/S
| JFS
| JFS
| 是
| 无
| 7
| 6
| JFS
| JFS
| 是
| 是
| 13
| 3.2
| JFS2
| JFS2
| 是
| 无
| 3
| 13.8
| JFS2
| JFS2
| 是
| 是
| 5
| 8.3
| JFS2
| JFS2
| 否
| 是
| 2
| 20.8
| JFS2
| JFS2
| 是
| 是
| 8
| 5.2
| 说明:用于进行测试拷贝的文件是一个2.5G的文件,以上测试在2台IBM p570上进行。
结论:
1、对于相同的镜像情况下,JFS2文件系统的读写性能是JFS文件系统的1.625----2.3倍;
2、对于相同的文件系统下,镜像后的文件系统读写性能是无镜像的文件的系统的0.53----0.6倍之间;
3、对于从不同文件系统间拷贝文件比在同一文件系统中拷贝要快,速度是2.5倍左右。
| JFS与JFS2的区别
JFS与JFS2的区别
http://www.loveunix.cn/html/79/41579-12580.html
jfs和jfs2文件系统都是文件和目录的集合,管理文件或目录在磁盘上的位置。除了文件和目录以外,jfs2类型的文件系统还包含一个超级块、分配位图和一个或多个分配组。分配组由磁盘i节点和片区(Extent)组成。一个jfs2类型的文件系统也占据一个逻辑卷。
在jfs中,超级块的大小是4096字节,偏移量是4096字节;而在jfs2中,超级块的大小仍是4096字节,但是超级块在逻辑卷中的偏移量是32768字节。
jfs2的新功能包括基于片区的(Extent)的分配、目录排序和文件系统对象的动态空间分配等。
1.基于片区(Extent)的寻址结构
片区是一个连续的可变长的文件系统块的序列,它是jfs2对象的分配单位。"大片区"可以跨越多个分配组。一般而言,jfs2的分配策略通过为每一个片区分配尽可能大和连续的区间来使文件系统中片区的数量达到最小,使逻辑块的分配更加连续。这样能够提供更大的i/o传输效率,达以改善性能的目的。但是在有些情况上并不能总是达到这种理想的效果。
片区是由逻辑块偏移量(logical offset)、长度(length)和物理地址(physical address)组成的三元组来描述。其中由逻辑块偏移量和长度可能计算出物理地址。基于片区的寻址结构是由片区描述、作为根的i节点和作为键值的文件内的逻辑偏移量而构成的一个子B+树。
2. 可变的逻辑块大小
JFS2把磁盘空间分割成块,JFS2支持512,1024,2048和4096字节块的大小。不同的文件系统可以使用不同的块的大小,从而达到优化空间的目的,减少目录或文件内部的残片(Fragmentation).
3.动态分配磁盘i节点。
JFS2给磁盘i节点动态地按需分配空间,当i节点不再需要时就会释放i节点所占用的空间。这个特点避免了在创建标准JFS时为磁盘i节点预留固定数量磁盘空间的缺点。因此,这样就不需要用户在创建文件系统时计算这个文件系统中要保存的文件和目录的最大数。
4.目录组织
JFS2提供了两种不同的目录组织.第1种目录组织适用于小目录和在一个目录的i节点中保存目录的内容.这种目录组织不需要单独的目录块i/o和单独的存储分配.
第2种目录组织适用于较大的目录,每一个目录就是一个以名字为键值的B+树.与传统的、线性的、未分级的目录组织相比,这种目录组织能够提供更块的目录查找、插入和删除的能力。
5.在线整理文件系统的空闲残片
JFS2支持已安装的文件系统(即使有进程访问这个文件系统)对残余在文件系统中的空闲空间的整理功能。一旦一个文件系统的空闲空间变成分散的残片,对这些残片的整理将会使得JFS2提供I/O效率更高的磁盘空间分配,从而避免出现一些因空闲空间不连续而不够分配的情况。
标准的JFS和JFS2的主要功能对照表:
功能
| JFS2
| JFS
| 块/碎片的大小 | 512~4096Byte的块 | 512~4096Byte的碎片 | 理论上的最大文件 | 1PB | 64GB | 理论上的最大文件系统 | 4PB | 16TB(64位内核)1TB(32位内核)
| 已测试过的最大文件 | 1TB | 64GB | 已测试过的最大文件系统 | 1TB | 1TB | i节点的数量 | 动态分配,受磁盘空间限制 | 固定,在创建文件系统时预先设定 | 目录的组织结构 | B+树结构 | 线性的结构 | 是否支持在线整理存储残片 | 支持 | 支持 | 是否支持压缩 | 不支持 | 支持 | 创建时的默认所有权属性 | root.system | sys.sys | 默认文件模式中的SGID | SGID=off | SGID=on | 是否支持配额(Quotas) | 不支持 | 支持 | 扩展的ACL | 支持 | 支持 | 是否支持Intel Itanium架构 | 支持 | 不支持 | 是否支持IBMPowerPC架构 | 支持 | 支持 |
在AIX系统中,所有的I/O单位都是4KB的块,但是在空间的分配上使用512字节的块作为单位,这样做仅仅是为了和其他unix系统保持一致。
AIX系统磁盘I/O性能评估
http://database.ctocio.com.cn/tips/473/8109973_1.shtml
内置硬盘有写cache吗?
http://bbs.chinaunix.net/viewthread.php?tid=1598792
关于570磁盘使用busy%值高的疑问
http://www.loveunix.net/viewthread.php?tid=99737
分析vmstat输出!
http://bbs.chinaunix.net/viewthread.php?tid=214266&extra=&page=1
P630莫名死机
http://bbs.chinaunix.net/viewthread.php?tid=1048376
来看看我们的P570是不是该扩内存了
http://bbs.chinaunix.net/viewthread.php?tid=1410190&extra=&page=2
请问AIX中如何看网络的速度,100M或1000M?
http://bbs.chinaunix.net/viewthread.php?tid=855508
aix磁盘管理
http://www.iteye.com/topic/324818
磁盘I/O占用100%,怎么解决-已找到问题所在:
终于找到问题了,我们做镜像盘的目的是做灾备,灾备盘是通过飞康的技术来同步镜像盘上的数据,同步过程中会读取镜像盘数据,因此镜像盘I/O会达到100%。由于该技术不通过小机,因此在小机上只能看到该镜像盘一直BUSY,I/O100%,但看不到R/W和tps的真实数据。
注:linux rsync 同步大量数据文件时,有时也会有磁盘繁忙,但不一定很高的事件
|
http://bbs.chinaunix.net/viewthread.php?tid=1314458&extra=&page=4
IBM P系列小型机日常维护/故障定位/故障排除
http://bbs.chinaunix.net/viewthread.php?tid=1726984&rpid=12734321&ordertype=0&page=1#pid12734321
[性能调优] topas时Disk Busy 100%问题及分析
http://www.aixchina.net/club/viewthread.php?tid=22858&extra=&page=1
[root:esaledb1]#/>topas
[root:esaledb1]#/>sar 1 5
[root:esaledb1]#/>iostat -d hdisk0 1 10
[root:esaledb1]#/>iostat -d hdisk1 1 10
[root:esaledb1]#/>iostat -d hdisk2 1 10
[root:esaledb1]#/>iostat -d hdisk3 1 10
[root:esaledb1]#/>iostat -d hdisk4 1 10
[root:esaledb1]#/>iostat -d hdisk5 1 10
[root:esaledb1]#/>filemon –o filemon1.out; sleep 30; trcstop
[root:esaledb1]#/>lspv
[root:esaledb1]#/>lsvg -l rootvg
[root:esaledb1]#/>lsvg -l xxvg
[root:esaledb1]#/>lsvg -l datavg
[root:esaledb1]#/>lsvg -l arcvg
fs 有的是???
[root:esaledb1]#/>ls -l /dev |grep '45, 3'
[root:esaledb1]#/>ls -l /dev |grep '44, 3'
hdisk2和hdisk5繁忙。分别属于datavg和arcvg。
lvmstat -v datavg
lvmstat -v arcvg
看哪个lv繁忙 , lslv lvname
看那个lv繁忙的mount point
ps -ef |grep mountpoint
看有哪些进程忙,没有显示相关进程
[root:esaledb1]#/>lvmstat -v data
[root:esaledb1]#/>lvmstat -v arcvg
[root:esaledb1]#/>lslv datalv1
[root:esaledb1]#/>lslv loglv00
[root:esaledb1]#/>lslv loglv01
[root:esaledb1]#/>lslv redolv
[root:esaledb1]#/>lslv arclv
[root:esaledb1]#/>ps -ef |grep /oracle/app/esaledb/oradata
[root:esaledb1]#/>ps -ef |grep /oracle/app/esaledb/oradata/redo
[root:esaledb1]#/>ps -ef | grep /oracle/app/esaledb/archivelog
检查下datavg 和 arcvg ,看看oracle数据库是不是 频繁读写数据库?
你的数据文件和日志文件的I/O非常的高,如果是ORACLE的话,你可以看看ORACLE的顾问视图,或是抓个AWR的报表看看,应该你的热点的数据文件都集中在HDISK2,HDISK5上。
日志文件非常的高,一种是多建几个LOGFILE或是扩大点LOGFILE SIZE,还是抓个AWR的报表来看看。
用filemon实施,看看哪个进程忙。
Oracle没有很好的把工作分摊给磁盘
aix磁盘管理
http://www.iteye.com/topic/324818
从问题说起,以前没有接触aix,linux也只是些皮毛的应用。在服务器上装完DB2后,接着要装was发现默认的安装目录空间不够,不知道怎么搞,只知道测试机上面是有4块硬盘,后面两个是刚插上去的,总的空间是肯定够的,只是不知道如何分区和挂载有效的利用起来。也不敢随便的瞎弄,决定还是从头彻底的弄个清楚了再继续。
1、硬盘种类、物理几何结构
硬盘的种类主要是SCSI 、IDE、以及现在流行的SATA等;任何一种硬盘的生产都要一定的标准;随着相应的标准的升级,硬盘生产技术也在升级;比如SCSI标准已经经历了SCSI-1 、SCSI-2、SCSI-3;其中目前咱们经常在服务器网站看到的Ultral-160就是基于SCSI-3标准的;IDE遵循的是ATA标准,而目前流行的SATA,是ATA标准的升级版本;IDE是并口设备,而SATA是串口,SATA的发展目的是替换IDE;
硬盘的物理几何结构是由盘、磁盘表面、柱面、扇区组成,一个张硬盘内部是由几张碟片叠加在一起,这样形成一个柱体面;每个碟片都有上下表面;磁头和磁盘表面接触从而能读取数据;
2、硬盘分区划分标准
硬盘的分区由主分区、扩展分区和逻辑分区组成;所以我们在对硬盘分区时要遵循这个标准;主分区(包括扩展分区)的最大个数是四个,主分区(包含扩展分区)的个数硬盘的主引导记录MBR(Master BootRecorder)决定的,MBR存放启动管理程序(GRUB,LILO,NTLOARDER等)和分区表记录。其中扩展分区也算一个主分区;扩展分区下可以包含更多的逻辑分区;所以主分区(包括扩展分区)范围是从1-4,逻辑分区是从5开始的;
MBR(Master BootRecord),即主引导记录,位于整个硬盘的0磁道0柱面1扇区。不过,在总共512字节的主引导扇区中,MBR只占用了其中的446个字节(偏移0--偏移1BDH),另外的64个字节(偏移1BEH--偏移1FDH)交给了DPT(Disk PartitionTable硬盘分区表),最后两个字节"55,AA"(偏移1FEH-偏移1FFH)是分区的结束标志。这个整体构成了硬盘的主引导扇区。大致的结构如图。
Main Root Record
主引导程序446字节
| 分区信息1(16字节) | 分区信息2(16字节) | 分区信息3(16字节) | 分区信息4(16字节) |
比如下面的例子:
QUOTE:
Device Boot Start End Blocks Id System
/dev/hda1 * 1 765 6144831 7 HPFS/NTFS
/dev/hda2 766 2805 16386300 c W95 FAT32 (LBA)
/dev/hda3 2806 9729 55617030 5 Extended
/dev/hda5 2806 3825 8193118+ 83 Linux
/dev/hda6 3826 5100 10241406 83 Linux
/dev/hda7 5101 5198 787153+ 82 Linux swap / Solaris
/dev/hda8 5199 6657 11719386 83 Linux
/dev/hda9 6658 7751 8787523+ 83 Linux
/dev/hda10 7752 9729 15888253+ 83 Linux
通过这个例子,我们可以看到主分区有3个,从 hda1-hda3 ,扩展分区由 hda5-hda10 ;此硬盘没有主分区4,所以也没有显示主分区hda4 ;但逻辑分区不可能从4开始,因为那是主分区的位置
3、硬盘设备(包括移动存储设备)在Linux或者其它类Unix系统的表示
IDE 硬盘在Linux或者其它类Unix系统的一般表示为 hd* ,比如hda、hdb ... ... ,我们可以通过fdisk -l 来查看;有时您可能只有一个硬盘,在操作系统中看到的却是 hdb ,这与硬盘的跳线有关;另外hdc大多表示是光驱设备;如果您有两块硬盘,大多是 hda和hdb。在这方面说的太多也无用,还是以fdisk -l 为准为好;
SCSI 和SATA 硬盘在Linux通常也是表示为 sd* ,比如 sda 、sdb ... ... 以fdisk -l 为准
移动存储设备在linux表示为 sd* ,比如 sda 、sdb ... ... 以fdisk -l 为准
4、aix磁盘系统
a、基本概念:
PV 物理卷:普通的直接访问的存储设备,有固定的和可移动的之分,代表性的就是硬盘。
vg 卷组:AIX中最大的存储单位,一个卷组由一组物理硬盘组成,也就是由一个或多个物理卷组成。
pp 物理分区:是把物理卷划分成连续的大小相等的存储单位,一个卷组中的物理分区大小都相等。
lp 逻辑分区:适映射物理分区的逻辑单位,一个逻辑分区可以对应一个也可以对应多个物理分区。
lv 逻辑卷:是指卷组中由多个逻辑分区组成的集合,逻辑卷中的逻辑分区是连续的,但是对应的物理分 区是不连续的,可以在一个磁盘上,也可以在不同的磁盘上。
fs 文件系统:是指在AIX系统中面向用户的存储空间。一个逻辑卷只能创建一个文件系统,也就是说一个 文件系统对应一个逻辑卷,如果删除逻辑卷也将删除文件系统。
b.存储结构:
逻辑卷lv 不能被直接访问,是生设备(裸设备),逻辑卷上建文件系统,文件系统可以被用户访问,市熟设备。文件系统里建目录,目录下建文件。
物理卷,卷组,物理分区,逻辑卷,逻辑分区,逻辑卷是面向操作系统的概念
文件系统,目录,文件是面向用户的概念。
c.LVM的配置数据
卷组描述区(VGDA):描述卷组中的所有物理卷和逻辑卷的对应关系
卷组状态区(VGSA):记录卷组中物理卷和物理分区的状态信息,在卷组激活时,确定哪些物理分区可用
逻辑卷控制块(LVCB):位于每个逻辑卷开头,包含逻辑卷的信息,占用数百个字节
LVM管理命令就是对VGDA内容的更新,当一块硬盘变成PV时,这个硬盘开始保留一部分空间存放VGDA信息,当把它加入卷组中时,开始将卷组信息写入VGDA区域,当把它从卷组删除时,也同时清除VGDA数据,这个数据还存在于AIX系统的ODM库中,当导入一个卷组时,把VGDA信息写入ODM,导出时删除。
d.磁盘Quorum
卷组的每一个物理卷至少包含着一份VGDA和VGSA。当一个卷组只有一块硬盘时,这块硬盘存有两份VGDA和VGSA,当这个卷组由两块硬盘时,其中一块存有两份,另一块存有一份,当卷组由三块以上硬盘时,每块硬盘存有一份。 如果磁盘Quorum存在,则必须保证卷组有51%以上的VGDA/VGSA可以正常访问。淡然也可以关闭磁盘Quorum。
e.逻辑存储管理的限制
VG数:每个系统最多255个VG
PV数:对于普通卷组,每个VG最多32个PV,对于大VG,每个卷组最多128个PV
PP数:每个PV最多有1016个PP
LV数:对于普通VG,每个卷组最多255个LV,对于大VG,每个VG最多512个LV
LP数:每个LV最多有32512个LP
PP和LP的大小:1M到1024M 必须是2的幂次方
LP映射PP的数量:一个LP可以映射1-3个PP
f.物理区域的分布
外边缘(Outer-Edge):存放很少访问的数据
外中间(Outer-Middle):创建逻辑卷时默认的位置
中间(Center):磁盘搜索时间最短,速度最快。
内中间(Inner-Middle):比中间稍慢一些
内边缘(Inner-Edge)存放很少访问的数据
5、vg空间足够的情况下调整文件系统大小
这个过程的做法一般如下:
1.首先确定你正使用的卷组
=============================================================================
# lsvg -o
rootvg
#
=============================================================================
因为我的机器上只设了一个rootvg卷组,所以我只需要对它进行操作就可以了,其它类似
。
2.查看卷组信息
=============================================================================
# lsvg rootvg
VOLUME GROUP: rootvg VG IDENTIFIER: 00098d9f00004c0000000
0f9b120700b
VG STATE: active PP SIZE: 64 megabyte(s)
VG PERMISSION: read/write TOTAL PPs: 542 (34688 megabytes)
MAX LVs: 256 FREE PPs: 390 (24960 megabytes)
LVs: 9 USED PPs: 152 (9728 megabytes)
OPEN LVs: 8 QUORUM: 2
TOTAL PVs: 1 VG DESCRIPTORS: 2
STALE PVs: 0 STALE PPs: 0
ACTIVE PVs: 1 AUTO ON: yes
MAX PPs per PV: 1016 MAX PVs: 32
LTG size: 128 kilobyte(s) AUTO SYNC: no
HOT SPARE: no
#
=============================================================================
TOTAL PPs: 542 (34688 megabytes)这一行表示你的机器现有的硬盘空间总量,或者
说系统能够识别出的物理空间大小,我的硬盘是一块36G的.
FREE PPs: 390 (24960 megabytes)这一行表示还有多少硬盘空间未使用,从这里你
可以增加空间到你的文件系统里,我还剩24G左右。
USED PPs: 152 (9728 megabytes)现有文件系统的物理使用量,我用了9G左右。
3.增加空间之前你可以查看以下现有文件系统的大小和使用情况
=============================================================================
# df -tk
Filesystem 1024-blocks Used Free %Used Mounted on
/dev/hd4 131072 17452 113620 14% /
/dev/hd2 3211264 1288216 1923048 41% /usr
/dev/hd9var 589824 23800 566024 5% /var
/dev/hd3 589824 18684 571140 4% /tmp
/dev/hd1 3145728 2023192 1122536 65% /home
/proc - - - - /proc
/dev/hd10opt 65536 9000 56536 14% /opt
/dev/cd0 638662 638662 0 100% /cdrom
#
=============================================================================
-k参数表示按1024byte/block来查看,因此我的/home目录大约有3G的空间。
4.增加我的/home文件系统空间,可以用smitty fs或者下面的命令来完成,但是增加的数
量是受到前面Free PPs的量的限制的。因为增加文件系统容量容易,但是要减小就难,因
此建议新建一个文件系统,这样当你用完了以后可以通过删除该文件系统来回收空间。
=============================================================================
# chfs -a size=+2000000 /home
Filesystem size changed to 8388608
#
=============================================================================
增加了2000000个块,每个块为512字节,因此也就是增加了1048576k,1G左右吧。
5.现在再次察看文件系统
=============================================================================
# df -tk
Filesystem 1024-blocks Used Free %Used Mounted on
/dev/hd4 131072 17452 113620 14% /
/dev/hd2 3211264 1288216 1923048 41% /usr
/dev/hd9var 589824 23800 566024 5% /var
/dev/hd3 589824 18684 571140 4% /tmp
/dev/hd1 4194304 2056608 2137696 50% /home
/proc - - - - /proc
/dev/hd10opt 65536 9000 56536 14% /opt
/dev/cd0 638662 638662 0 100% /cdrom
#
=============================================================================
ok,/home文件系统的容量已经变成了4G,增加文件系统容量成功。
顺带说一嘴,/usr相当于window的program files,安装软件的时候,发现不够了系统会自
动扩大。日常使用时,用不到/usr,除非用户将自己的文件放在/usr下,但这种习惯非常
不好
IBM Aix Disk Mount
fuser 指令
用途
使用文件或文件结构识别进程。
语法
fuser [ -c | -d | -f ] [ -k ] [ -u ] [ -x ] [ -V ]文件 ...
说明
此 fuser 命令列出了本地进程的进程号,那些本地进程使用File 参数指定的本地或远程文件。对于阻塞特别设备,此命令列出了使用该设备上任何文件的进程。
每个进程号后面都跟随一个字母,该字母指示进程如何使用文件。
c 将此文件作为当前目录使用。
e 将此文件作为程序的可执行对象使用。
r 将此文件作为根目录使用。
s 将此文件作为共享库(或其它可装载对象)使用。
进程号被写入标准输出(在进程号之间有空格的行中)。一个换行符被写入标准错误(在每个文件操作数的最后一个输出之后)。其他所有输出被写入标准错误。
此 fuser 命令不会检测有 mmap 区域的进程,其中相关的文件描述符已从此被关闭。
标记
-c 包含 File的文件系统中关于任何打开的文件的报告。
-d 暗示使用了 -c 和 -x 标志。关于任何与文件系统(自父目录删除的)无链接的打开文件的报告。当与 -V 标志一起使用时,它也会报告被删除文件的节点号和大小。
-f 仅对文件的打开实例报告。
-k 将 SIGKILL 信号发送到每个本地进程。仅有根用户能终止另一用户的进程。
-u 为进程号后圆括号中的本地进程提供登录名。
-V 提供详细输出。
-x 与 -c 或 -f 连用,报告除标准 fuser 输出以外的可执行的和可载入的对象。
示例
若要列出使用 /etc/passwd 文件的本地进程的进程号,请输入:
fuser /etc/passwd要列出使用 /etc/filesystems 文件的进程的进程号和用户登录名,请输入:
fuser -u /etc/filesystems要终止全部使用给定的文件系统的进程,请输入:
fuser -k -x -u /dev/hd1 -OR-
fuser -kxuc /home任一命令都列出了进程号和用户名,然后终止每个正在使用 /dev/hd1 (/home)文件系统的进程。仅有根用户能终止属于另一用户的进程。如果你正在试图卸下 /dev/hd1 文件系统,而一个正在访问 /dev/hd1文件系统的进程不允许这样,您可能希望使用此命令。
要列出正在使用文件(已从给定文件系统删除的文件)的全部进程,请输入:
fuser -d /usr文件
/dev/kmem 用于系统映象。
/dev/mem 也用于系统映象。
相关信息
killall 命令、mount 命令和 ps 命令。
end |
|