AIX下rootvg镜像硬盘更换步骤

AIX下rootvg镜像硬盘更换步骤

**

第1节为lv迁移的一些介绍,需要更换步骤的可直接跳至第2节

**

1 LV迁移相关概念及模拟

在IBM pSeries小型机日常维护过程中,经常会遇到AIX操作系统所在rootvg故障盘的情况。系统换盘对于硬件维护人员来说是极为普通的一件事,但就在这常见的换盘流程里也隐藏许多让你一时不知所措的情况。

rootvg是AIX操作系统所存在的VG,在生产环境中rootvg的硬盘都做了冗余保护措施,它可以通过硬件raid卡来实现,但绝大多数情况却是通过LVM逻辑卷镜像的方式来做保护,本文我们就主要讨论通过LVM操作逻辑卷镜像硬盘更换时所遇到的各种情况。

一、定义报错故障硬盘的两种状态。

第一种,硬盘频繁报错,lsvg –p rootvg硬盘状态为active,但可以进行读写。

第二种,硬盘彻底损坏,lsvg –p rootvg硬盘状态为missing或者removed。
常见的rootvg大多有两个PV组成

AIX下rootvg镜像硬盘更换步骤_第1张图片
rootvg中的lv通过mirrorvg 做了镜像关系。
AIX下rootvg镜像硬盘更换步骤_第2张图片
如果硬盘出现故障,应该能看到lv status状态变为了stale,通过lslv -m hd2 查看lv的stale的状态。
AIX下rootvg镜像硬盘更换步骤_第3张图片

二、开始模拟场景

场景一

部分lv未镜像,在unmirrorvg后,故障硬盘上仍然存在某些lv,导致无法reducevg 这块硬盘。

这时需要查看报错硬盘上lv的状态是否正常,如果可读写,可以通过migratepv 将lv从故障盘迁移到好盘。

AIX下rootvg镜像硬盘更换步骤_第4张图片
通过lspv确认hdisk0上有足够的free pp,既可以执行迁移命令“migratepv -l sapsoftlv hdisk1 hdisk0”。

AIX下rootvg镜像硬盘更换步骤_第5张图片

如果硬盘彻底损坏,就需要从系统中删除lv定义,建议直接删除文件系统,当删除文件系统的同时,对应的lv将自动被删除。如果只删除lv,文件系统的定义将依然存在于系统ODM库中和配置文件中。

删除故障盘上lv定义后,继续走更换流程,待更换完毕后再重建删除掉的lv及文件系统并恢复数据。这里可以看到平时对数据备份和lv进行镜像是非常重要的。

场景二

在unmirrorvg后发现有lv同时在两个pv上存在,即为lv跨pv的情况,这种情况和上面的处理方式一致。

1.如果故障盘还可以读写,尝试将故障盘上部分lv迁移至好的pv上。
AIX下rootvg镜像硬盘更换步骤_第6张图片

此项操作的前提是好盘上存在足够的free pp可以使用,如果好盘上没有空间了,就无法进行操作了。如果主机本地还有空槽位,可以先增加一块盘到rootvg中,使用迁移命令将lv迁移到新硬盘 中,然后在踢出故障硬盘。这里除了migratepv命令,可能还会用到migratelp命令,我们将会在最后一个场景中介绍。

2.如果故障硬盘彻底损坏,删除lv对应的文件系统,尽管好盘上的部分lv还是好的。

场景三

在unmirrorvg后发现故障盘上还存在lg_dumplv的lv,好盘上却没有。

1.如果故障盘还能读写,通过migratepv将lg_dumplv迁移到好盘上即可。

2.如果故障盘彻底损坏,按以下方式操作。

1)        sysdumplv -l查看当前的primary dump设备;

2)        在好盘上建立一个lv,取名dumplv,type设置为sysdump类型;

3)        sysdumplv-P-p/dev/dumplv

4)        sysdumplv -l 确认primary dump device已经改到新dump设备上;

5)        删除lg_dumplv。

AIX下rootvg镜像硬盘更换步骤_第7张图片

此时要使用原来lg_dumplv的名字,按照上述步骤在好盘上再建立一个lg_dumplv,再将primary dump设备指向回来。这部分修改完成就可以按照正常换盘流程进行了

AIX下rootvg镜像硬盘更换步骤_第8张图片

场景四

当发现Paging space空间除了hd6还有paging00并同时分布在两个盘且没有镜像,在Unmirrorvg后,报错硬盘上还是有paging00。这时候需要删除paging00,在镜像完成后确认是否再次创建paging space。

完成后将hdisk1上的paging00删除,走正常更换流程,更换完毕后,重新创建一个paging space

在这里插入图片描述

场景五

前面所说的都是rootvg中含有hdisk0和hdisk1两块硬盘的情况,如果rootvg包含超过两块硬盘,可按照以下方法操作。

多数情况下,硬盘过多是由于空间不足而进行扩容所导致的,并且硬盘大小也可能不一致,这种情况下就很可能造成lv跨卷,使lv的镜像分布在多块硬盘上。

这时需要活用lsvg,lspv,lslv等命令准确的分辨出每块硬盘上lv及其他lv在不同硬盘上的镜像情况和分布情况。往往此时unmirrorvg 不能达到理想的目的,所以最好使用rmlvcopy、mklvcopy等命令来精准调整lv在不同pv上的镜像情况。如果一个lv跨多个卷并且每一个pv 上的free pp都不能满足这个lv,就需要使用migratelv、migratelp等命令来调整lv的分布,最终达到更换故障硬盘的目的。

下面看一个例子,rootvg中存在4个pv,并且有硬盘大小不一致的情况。

AIX下rootvg镜像硬盘更换步骤_第9张图片

首先通过rmlvcopy来解除lv的镜像关系

在这里插入图片描述

查看sapsoftlv的分布情况

AIX下rootvg镜像硬盘更换步骤_第10张图片

假设hdisk1出现频繁报错,要将hdisk1上sapsoftlv的lp迁移到hdisk0和hdisk2上,通过migratelp来精准迁移。

AIX下rootvg镜像硬盘更换步骤_第11张图片

将sapsoftlv分布在hdisk1上的lp分别迁移至hdisk0和hdisk2上后,使hdisk1上没有任何lv,就可以按照正常流程进行硬盘更换流程了。

2 更换步骤

如果已确认是HDISK0损坏,需要确认以下事项:

a、确认镜像盘在bootlist列表内:

bootlist -m normal -o

否则将镜像盘加入bootlist,例如:
在主机上执行bosboot –ad /dev/hdisk1
在主机上执行bootlist –m normal hdisk1

b、 确认hdisk0上/XXXX文件系统的重要性,如果重要先将数据备份出来

以下以rootvg中hdiskX故障为例:

1.列出物理卷,这里要对预报警硬盘hdiskX进行更换。

查看disk是否处于可用状态

#lsdev -Cc disk

查看disk属于哪个vg,硬盘是否有PVID

# lspv   


查看物理卷的物理分区的的分区范围,状态,在物理卷的位置,同时显示每一个逻辑卷的类型和文件系统的安装点

lspv hdiskX
  1. 列出rootvg卷组

查看VG STATE的状态

#lsvg rootvg

查看rootvg中含有那几块盘

#lsvg -p rootvg

在这里插入图片描述

查看LPs与PPs的数量对应关系,是否有未做镜像的LV,及LV STATE中是否有stale,若逻辑卷中的PPs是LPs的两倍,同时PV数是2,则说明该逻辑卷已经配置镜像

 `lsvg -l rootvg`

AIX下rootvg镜像硬盘更换步骤_第12张图片a. 对没有做镜像的LV做镜像

#mklvcopy -k lvname 2 hdisk1

b. 如果存在STALE的LV,做同步,

#syncvg -v rootvg 
#syncvg –p hdisk0 hdisk1 
#syncvg -l lvname

通过

lslv lvname

可查看stale的PPs数量,减少到0时表示同步完成
或通过

#lspv –l hdisk0
#lspv –l hdisk1

分别查看hdisk0和hdisk1上的LV数量是否相同,
if要更换的hdisk上的LV比另一个hdisk少,可直接更换;
if要更换的hdisk上的LV比另一个hdisk多,需先将缺失的LV做镜像,防止数据丢失

c. 特别地,对于多块硬盘组成的raid1 vg,且每块硬盘上有单独的lv的,需要做以下处理:

首先比对出硬盘(PV)之间未同步的lv,之后根据实际情况可以做如下操作:

解镜像前:

mklvcopy -k lvname 2 hdiskX(在硬盘hdiskX上做逻辑卷lvname的第二份备份)

以下命令三选一

#syncvg -v rootvg 
#syncvg –p hdisk0 hdisk1 
#syncvg -l lvname

如果已经解除镜像,就只能做如下操作:

smit migratepv

将需要迁移的LV分别移动到目标盘中
AIX下rootvg镜像硬盘更换步骤_第13张图片移动结束后,检查pv信息,hdisk0为空。
AIX下rootvg镜像硬盘更换步骤_第14张图片

3、 解磁盘镜像

# unmirrorvg rootvg hdiskX 

AIX下rootvg镜像硬盘更换步骤_第15张图片

4、 确认unmirror是否成功

# lsvg -l rootvg

5 dumplv处理
#查看lg_dumplv是否在更换的硬盘上(一般为hdisk0)

`lspv –l hdisk0`      

如果lg_dumplv存在 :

#把primary dump device 转移到空dump设备上

  sysdumpdev –Pp /dev/sysdumpnull 
  rmlv lg_dumplv

6、执行删除rootvg的物理卷hdiskX,可能会报0516-914错误,可以用smitty reducevg强制删除

# reducevg rootvg hdiskX

7.检查删除结果

lspv

hdisk0 0007f84c7ad7504c None
hdisk1 0007f84cd9f82d6c rootvg active

8.DIAG亮灯确定要换的盘的物理位置

1.登陆AIX,执行#diag
2.回车
3.选择“Task Selection”
4.按PgDn,选择“Hot Plug Task”
5.选择“SCSI and SCSI RAID Hot Plug Manager“
6.选择“Identify a Device Attached to aSCSI Hot Swap Enclosure Device”
7.选择想判定位置的目标DISK,比如:hdisk0
8.回车,这个时候去观察硬盘,你会发现硬盘的指示灯会显示“红色”,这个硬盘就是你需要判定的目标盘。
9.如果想把这个有故障的硬盘从SCSI剔除,返回上一级菜单选择“Replace/Remove a Device Attached to an SCSI Hot Swap Enclosure Device”
10.然后选择想剔除的硬盘即可。

9、删除坏硬盘或者用diag工具中Replace/Remove a Device Attached to an SCSI Hot Swap Enclosure Device 选项移除hdisk0

# rmdev -dl hdiskX

命令解释:*删除hdisk0,-l将状态改为defined,-d将hdisk的信息从ODM数据库中删除
AIX下rootvg镜像硬盘更换步骤_第16张图片 #lspv
AIX下rootvg镜像硬盘更换步骤_第17张图片

10、插入新硬盘,cfgmgr,lspv识别的新磁盘

  #cfgmgr -v
   #lspv

如果插上一块新硬盘hdisk0后PVID仍为none时,可用:
chdev -l hdisk0 -a pv=yes 即可有ID号了
AIX下rootvg镜像硬盘更换步骤_第18张图片
如果无PVID,执行

# chdev -l hdiskX -a pv=yes 

AIX下rootvg镜像硬盘更换步骤_第19张图片 #查看系统盘的分配情况,本例以hdisk0 hdisk1镜像为例.

lsdev -Cc disk  

AIX下rootvg镜像硬盘更换步骤_第20张图片

  lsvg –p rootvg

在这里插入图片描述

11、将更换后的硬盘添加如卷组当中做mirror

# extendvg rootvg hdiskX
特别地: #强制把hdisk0加入到rootvg中
extendvg -f rootvg hdisk0

AIX下rootvg镜像硬盘更换步骤_第21张图片

12、做mirrorvg镜像
12.1 smit模式
用smit工具做mirrorvg镜像,选择 rootvg和hdisk0,同步模式选择background后台同步

smit extendvg 将hdisk0加入rootvg

smit mirrorvg 做mirror

做mirror的时候最好选择后台进行(background),这样可以同时做其他操作

使用lsvg –l rootvg可以显示做mirror的进度,查看stale partion的进度是否递减,到0表示mirrorvg完毕。另外还可以通过查看topas里面的读写速率来判断镜像是否完成

12.2 命令行模式
(不建议用命令行)
镜像系统卷,-S后台运行(不后台运行很有可能hang)

# mirrorvg -S -c 2 rootvg hdiskX     //镜像rootvg

13 利用mirrorvg同步vg时,有些lv过大,可能会提示空间不足
AIX下rootvg镜像硬盘更换步骤_第22张图片
手动mklvcopy将之前在hdisk0上的lv建立好
再利用syncvg -v rootvg同步vg数据
AIX下rootvg镜像硬盘更换步骤_第23张图片AIX下rootvg镜像硬盘更换步骤_第24张图片

14、为hdiskX 建立引导信息
将引导信息加入新盘中

  # bosboot -ad /dev/hdiskX

15、重新设置引导顺序,使之都能够引导系统

# bootlist -m normal hdisk0 hdisk1(自己定)
# bootlist -m normal -o 

AIX下rootvg镜像硬盘更换步骤_第25张图片

16、如果是hdisk0,则需要重建dumplv

16.1命令行模式
其中16为dump lv的PP数量,可以根据具体环境更改

sysdumpdev –e     估算dump设备所需要的大小

AIX下rootvg镜像硬盘更换步骤_第26张图片

lsvg rootvg  

PP SIZE: 128 megabyte(s)
查看每个PP的大小,估算的dump大小/每个PP大小=新建dump所需的PPs个数

在hdisk0上创建12个PPs大小的lg_dumplv

mklv -t sysdump -y lg_dumplv rootvg 12 hdisk0  

3 重新把primary dump device 设置到lg_dumplv

sysdumpdev –Pp /dev/lg_dumplv

AIX下rootvg镜像硬盘更换步骤_第27张图片16.2 smit模式,需要之前先将dumplv迁移
#smit mklv->lg_dumplv (建立primary dump device)
#smit dump ->Change the Primary Dump Device
->Primary Dump Device [/dev/lg_dumplv]
#sysdumpdev –l 查看dump device
#migratepv –l lg_dumplv hdisk1 hdisk0

从物理卷hdisk1把lg_dumplv逻辑分区迁移到hdisk0



17、查看rootvg同步情况

    # lsvg -l rootvg




18 diag关闭告警灯
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200529011758603.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MjgwNDgxNA==,size_16,color_FFFFFF,t_70)![在这里插入图片描述](https://img-blog.csdnimg.cn/20200529011805308.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MjgwNDgxNA==,size_16,color_FFFFFF,t_70)![在这里插入图片描述](https://img-blog.csdnimg.cn/20200529011836469.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MjgwNDgxNA==,size_16,color_FFFFFF,t_70)

选第二个就可以,先Enter选中,再按F7 cmmit

你可能感兴趣的:(AIX,OS)