欢迎光临殡葬网
详情描述

这是一份关于AIX中rootvg镜像的制作、取消与更换硬盘的详细操作指南。内容基于IBM AIX(主要适用于AIX 5L、6.1、7.x版本)的最佳实践。

核心概念

  • rootvg: 存放操作系统内核、关键命令和配置文件的卷组。
  • 镜像: 将逻辑卷(LV)的数据同步复制到不同物理卷(PV)上的不同物理分区(PP)上,提供高可用性。
  • 关键命令mirrorvg, unmirrorvg, reducevg, migratepv, chpv, lspv

第一部分:为rootvg制作镜像

这是最常用的操作,将rootvg扩展到第二块硬盘并实现数据镜像。

前提条件 有一块大小足够的空白或可用的物理磁盘(磁盘大小应不小于rootvg当前使用的空间)。 确认磁盘状态:lspv
  • 新磁盘应显示为None,如:hdisk1 none
确保有足够的引导记录槽位(非常重要!)。 操作步骤

方法A:使用 mirrorvg 命令(标准方法)

# 1. 扩展rootvg,将新磁盘(如hdisk1)加入rootvg
extendvg rootvg hdisk1

# 2. 为rootvg创建镜像(此命令会自动镜像所有逻辑卷,包括root卷)
# -c 表示创建两个副本(即镜像),-S 表示同步执行
mirrorvg -c 2 rootvg

# 3. (关键!)在备用磁盘上创建引导映像
bosboot -ad /dev/hdisk1
bootlist -m normal hdisk0 hdisk1
bootlist -m normal -o

# 4. 同步引导信息(适用于AIX 6.1/7.x,如果使用旧版,上一步已足够)
# 此步骤确保每个磁盘都有完整的BLV(引导逻辑卷)信息
mkboot -d /dev/hdisk1

方法B:手动镜像(更可控)

# 1. 扩展rootvg
extendvg rootvg hdisk1

# 2. 仅为关键逻辑卷镜像(例如:hd5, hd6, hd8, hd4, hd2, hd9var, hd10opt等)
mklvcopy hd5 2 hdisk1
mklvcopy hd6 2 hdisk1
mklvcopy hd8 2 hdisk1
# ... 为其他需要镜像的LV执行mklvcopy

# 3. 在备用磁盘上创建引导信息(至关重要!)
bosboot -ad /dev/hdisk1
bootlist -m normal hdisk0 hdisk1

# 4. 同步数据(后台执行,可观察进度)
syncvg -v rootvg

# 5. 设置镜像的写调度策略(可选,推荐用于rootvg)
mirrorvg -c 2 rootvg # 如果之前没做,可以现在做来统一调度策略
# 或者
chlv -c 2 <lvname>
验证镜像
# 查看卷组镜像状态
lsvg -l rootvg
# 查看每个逻辑卷的LP/PP分布,应有“2个”副本
lsvg -M rootvg
# 或查看具体LV
lslv hd5
# 查看引导列表
bootlist -m normal -o

第二部分:取消rootvg镜像

当需要移除一块磁盘(例如磁盘故障或计划维护)时,需要先取消镜像。

步骤
# 1. 从引导列表中移除要取下的磁盘(例如hdisk1)
bootlist -m normal hdisk0
bootlist -m normal -o

# 2. 取消镜像,将指定磁盘上的副本移除
# 此命令会将hdisk1上所有rootvg的逻辑卷副本删除,数据保留在其他磁盘上
unmirrorvg rootvg hdisk1

# 3. 将磁盘从rootvg中移除
reducevg rootvg hdisk1

# 4. 清除磁盘上的引导记录和PVID(如果磁盘要取出或重用)
chpv -c hdisk1     # 清除引导记录
rmdev -dl hdisk1   # 从ODM中删除磁盘定义,如果是永久移除

注意: 如果磁盘已经故障无法访问,需要使用强制选项:

unmirrorvg -f rootvg hdisk1
reducevg -f rootvg hdisk1

然后从系统中rmdev掉这块盘。

第三部分:更换rootvg中的故障硬盘

这是最常见的维护场景。假设镜像对中的一块盘(hdisk1)故障。

在线更换步骤

识别故障盘

lspv
# 故障盘可能显示为`missing`或状态异常
diag -> 功能选择 -> 诊断 -> 高级诊断 -> SCSI/磁盘管理 -> 识别故障

取消故障盘的镜像(如果系统仍可运行):

unmirrorvg rootvg hdisk1
reducevg rootvg hdisk1
rmdev -dl hdisk1

物理更换硬盘(热插拔或关机更换)。

重新扫描磁盘

cfgmgr
lspv
# 确认新磁盘被识别,例如新的hdisk1

将新磁盘加入rootvg并重建镜像

extendvg rootvg hdisk1
mirrorvg -c 2 rootvg
bosboot -ad /dev/hdisk1
bootlist -m normal hdisk0 hdisk1
syncvg -v rootvg

验证

lsvg -l rootvg
lsvg -M rootvg | grep stale  # 确保没有“stale”分区

第四部分:更换rootvg的启动盘(如hdisk0故障)

这种情况更复杂,因为故障盘是当前系统的启动盘。

最佳情况:系统仍在运行(hdisk0故障但通过hdisk1启动了)

系统会告警,但可能已自动从hdisk1启动。
# 确认当前启动盘
bootinfo -b
# 如果已经是hdisk1,则操作如下:
# a. 将故障盘hdisk0取消镜像并移除
unmirrorvg rootvg hdisk0
reducevg rootvg hdisk0
rmdev -dl hdisk0
# b. 物理更换磁盘
# c. 扫描新盘
cfgmgr
# d. 将新盘加入并重建镜像到新盘(现在它可能叫hdisk2)
extendvg rootvg hdisk2
mirrorvg rootvg
bosboot -ad /dev/hdisk2
bootlist -m normal hdisk1 hdisk2
syncvg -v rootvg

最坏情况:系统无法启动(两块盘都故障或镜像断裂)

AIX安装介质或备份磁带启动。 选择诊断模式维护模式。 导入原有的rootvg(如果数据可读):importvg -y rootvg hdiskX 尝试修复文件系统:fsck /dev/fslvXX 重建引导映像:bosboot -ad /dev/hdiskX 重新设置引导列表并重启。

关键注意事项与故障排除

引导记录是重中之重: 每次镜像结构改变(增/删磁盘),都必须用bosbootbootlist更新引导信息。 同步状态: 使用syncvg后,用lsvg -l rootvg检查是否有stale分区。Stale状态表示副本不同步,需要重新同步或修复。 磁盘大小: 新磁盘必须不小于原rootvg已使用的空间,否则extendvgmirrorvg会失败。 quorum: 默认mirrorvg会关闭卷组的quorum(-Q选项),防止一块盘离线导致整个vg冻结。这是AIX rootvg镜像的推荐设置。可以使用lsvg rootvg查看quorum状态。 更换启动盘后: 如果系统启动顺序改变,务必在HMC/ASMI或系统BIOS中确认物理启动顺序。 备份: 在进行任何镜像操作前,如果可能,确保有可用的系统备份(mksysb)查看详细错误: 操作失败时,查看/var/adm/ras/下的日志文件,特别是errlog

通过遵循上述步骤,您可以安全地管理AIX rootvg的镜像,确保系统的高可用性和可维护性。对于生产系统,务必在测试环境演练或在有经验人员指导下进行