对于AIX体系工程师来说,LVM是无论若何都无法避免的区域,VG镜像、存储迁徙、IO调优,存储故障处理各个方面都有LVM的影子。每当我们在这些方面碰到难题时,其实都是直接或借居的和LVM战斗。
以下是一些LVM常识、常见问题及其解决办法和留意事项,控制这些内容,必将进步你的LVM战斗力!
1. 根本概念
典范问题:
1. lvm里关于VG三种选项有何差别,在实际应用中有何种不合表现,优缺点在哪里?
2. chvg -t factor各个因子分别代表什么?
3. AIX上卷组里关于quorum这个值的感化和意义?
解答以上问题,须要具备下常识
LVM内置在AIX体系中,跟着AIX版本的更新而更新。不管是功能性照样扩大性都在慢慢成长。我们在日常的工作中,必定结合本身的实际情况做好筹划再应用,避免因为LVM本身的限制带来后期保护和扩大的艰苦。
AIX LVM支撑3种类型的VG,分别是normal VG,Big VG和Scalable VG,如下表所示:
这三种VG最重要的差别就是在扩大性上的支撑有很大年夜差别。
normal VG扩大性最小,Big VG次之、Scalable VG扩大性最好。
这三种类型的vg是跟着AIX版本的更新慢慢推出的。如不雅在早期的项目实施中应用了normal vg,后续还有陆续扩容的需求,可能就会超出normal vg的自身限制,造成扩容掉败的后不雅。此时又两个解决办法:
1. 进级到其他VG类型获取更高的扩大性:
Q:AIX PV 出现missing和remove的状况原因和响应的解决办法商量?
Chvg–B xxvg 进级到big vg,可以在线进级
两者都须要pv中有足够的空间来承载vgda信息的变革。
2. 更改factor因子。实际是经由过程更改pp限制来实现,由factor来指定。更改实际上是在pp数支撑和pv支撑数量上做一个均衡。如:
Chvg–t 2 xxvg
卷组的quorum 是由有效的VGDA(卷组描述区)构成的。一个卷组中至少有2个 VGDA 区,每个物理卷上都至少有一个VGDA。VGDA 中记录了卷组中所包含逻辑卷和物理卷的状况和描述信息。 当卷组中只有一个物理卷时,该物理卷上就会存在2个VGDA区; 当卷组中有两个物理卷上时,个一一块物理卷上有2个VGDA ,另一物理卷上有1个VGDA; 当卷组由在3个以上(>=3)的物理卷构成时,每个物理卷上都邑有1个VGDA。 当quorum的值设置为on时,quorum损掉会导致卷组封闭,防止进一步的操作造成数据损掉。
2.故障排错
在LVM的应用中,经常碰到各类故障。有的昵囗论常识不足,有的是细节有待完美。PVID、VGDA、VGSA、ODM、exportvg、recreatevg等等,我们须要梳理LVM的构造和相干术语,如许才能在故障排错中轻车熟路。
典范问题:
1. odmvgda纷乱时,该若何下手?
2. lg_dumplv报too small,增长后很快又空间不足,可否忽视该问题?
3. vg信息与ODM同步问题?
(1)LVM方法将磁盘做镜像,那么两个镜像副本的IO延时会有几个毫秒的差别,两个镜像的链路也会存在颤抖的风险,那么LVM层面有什么参数或者是策略能较少这方面的风险?
4. AIX PV 出现missing和remove的状况原因和响应的解决办法商量?
5. VG中添加PV掉败?
Chvg–G xxvg进级到scalable vg,须要先履行varyoffvg敕令才能进级
解答以上问题,须要具备下常识
AIX中LVM的信息同时存放在硬盘和ODM里,硬盘里的表示为VGDA、VGSA等。当磁盘指定为pv(如履行mkdev)时,vgda被分派。当pv参加vg时,vgda内被写入信息。Aix对磁盘的辨认以PVID为准。在正常情况下,硬盘上的信息和ODM里的信息应当是一致的。我们日常平凡所做的操作如lspv、lsvg等敕令,实际上是大年夜ODM攫取的信息。当履行exportvg敕令时,实际上是将odm里的对应信息删除掉落,履行importvg则是将vgda里的信息从新复制到odm中。以此为准,膳绫擎的问题就比较好解答了:
Q:odmvgda纷乱时,该若何下手?
A:我们知道,lvm信息由两份,一份在硬盘上,一份在odm上。如不雅odm的出了问题,最常见的处理方法就是应用exportvg敕令将vg导出后,从新importvg即可。但在一些间谍作况下如许做会不起感化,可以推敲应用以下几种方法:
Synclvodm,是大年夜VGDA同步ODM,前提是VG的定义还在,ODM里缺点的被修改,缺掉的会大年夜VGDA导入,但ODM里多的还会存在。
redefinevg也是大年夜VGDA同步ODM,前提是VG定义没了才用,要指定大年夜哪个PV导入,ODM里多的还会在
recreatevg,根据vgda信息重建vg,即使PVID损掉,只有原有的lv和fs等构造未破坏即可修复。
Q:lg_dumplv报too small,增长后很快又空间不足,可否忽视该问题?
A:用sysdumpdev -e看看生成的须要多大年夜空间,然后建个大年夜的dump device,指向新的dump device即可。Dump设备是用来在出故障时捕获内存等信息的,如不雅太小会dump掉败。天天的报错是由crontab里的dumpcheck条目触发的。只有空间不足,天天准时义务里的dumpcheck检查都邑导致出现报错。
A:
A:(1).链路异常,物理破坏,不正常操作会导致missing
对应:排查并确保hdisk到存储lun的物理路径正常,如不雅链路没问题,一般cfgmgr后会主动更正。然则对于aix下rdac的情况,须要额外留意,aixrdac设备如下:
darX:设备路由,可用懂得成全部一台存储,一台存储1个如:dar0
dacX:懂得成控制器,一台存储2个如:dac0 dac1
hdiskX:聚合后的硬盘
因为写入是个硬需求改不了,顶多优化一下读。如不雅写操作比例大年夜,照样建议两个存储的机能差别不要太大年夜
推荐阅读
1.模块的写法模块化编程一般都有这么几个过度过程,如下描述。原始办法function m1(){ //... } function m2(){ //... } 膳绫擎的函数m1()和m2(),构成一个模块。应用的时刻,直接调用就行>>>详细阅读
地址:http://www.17bianji.com/lsqh/35294.html
1/2 1