引言
在 UNIX? 存储管理市场上,有两家主要的领先厂商:IBM 和 Veritas(现在的 Symantec)。两家公司都提供帮助 UNIX 系统管理员以非常灵活的方法管理存储设备的产品。Veritas 提供了 Veritas Volume Manager (VxVM),其产品打包为独立外接程序,或者作为更大软件包的组成部分,如 Veritas On-Line Storage Manager。VxVM 是一个存储管理子系统,使用该系统可将物理磁盘作为逻辑设备进行管理。(逻辑设备不存在物理磁盘的特定限制。)
Veritas Volume Manager
VxVM 是一个存储管理子系统,使用该系统可将物理磁盘作为一种称为卷 的逻辑设备进行管理。VxVM 卷在应用程序与操作系统看来,就是可以在上面配置文件系统、数据库以及其他托管数据对象的物理磁盘。VxVM 为计算环境和存储区域网络 (SAN) 环境提供简单易用的联机磁盘存储管理功能。VxVM 支持独立磁盘冗余阵列 (RAID) 模型,因此可以实施配置,预防磁盘与硬件故障并提升 I/O 吞吐量。
另外,VxVM 还提供可以提升容错和磁盘故障快速修复能力的功能。VxVM 通过提供逻辑卷管理层来允许卷跨越多个磁盘,从而克服了硬盘设备的物理局限性。VxVM 还提供可以提升性能并确保数据可用性与完整性的工具。您可以使用 VxVM 在系统处于活动状态时动态地配置磁盘存储。
VxVM 和操作系统
VxVM 充当操作系统与数据管理系统(如文件系统与数据库管理系统)之间的子系统。VxVM 与操作系统紧密结合在一起。要将磁盘置于 VxVM 控制之下,必须事先通过操作系统设备接口访问该磁盘。VxVM 位于操作系统接口服务的上层,与操作系统访问物理磁盘的方式密切相关。
VxVM 与操作系统有关的方面包括:
- 操作系统(磁盘)设备
- 设备句柄
- VxVM 动态多路径 (DMP) 元设备
VxVM 和数据存储
VxVM 使用以下两种对象进行存储管理:
物理对象物理磁盘,或其他具有用于存储数据的块和原始操作系统设备接口的硬件。 虚拟对象当有一个或多个物理磁盘被置于 VxVM 控制之下时,VxVM 将在这些物理磁盘上创建称为卷的虚拟对象。每个卷在一个或多个物理磁盘上记录和检索数据。文件系统、数据库或其他应用程序使用与访问物理磁盘相同的方法来访问卷。卷也由其他在更改卷配置中使用的虚拟对象(丛和子磁盘)组成。卷及其虚拟组件称为虚拟对象 或 VxVM 对象。
物理磁盘
物理磁盘是基本的存储设备(介质),即数据最终存储到的地方。可以使用设备名来定位物理磁盘,进而访问该磁盘上的数据。物理磁盘的设备名因所使用的计算机系统而异。并非所有系统都使用所有参数。典型设备名的形式为 hdisk(number),其中 (number) 指定唯一的磁盘编号(从 0 开始)。
磁盘阵列
在磁盘上执行 I/O 是一个速度相对较慢的过程,这是因为磁盘是一种物理设备,在读写之前需要时间来将磁头移到磁盘上正确的位置。如果对单个磁盘执行所有读写操作(一次执行一个操作),则读写时间会变得失控。而对多个磁盘执行这些操作则有助于减少这种问题的发生。
磁盘阵列 是物理磁盘的集合,VxVM 可将其作为一个或多个虚拟磁盘或卷提供给操作系统。对于操作系统而言,VxVM 所创建的卷在外观和行为上均与物理磁盘类似。应用程序与卷交互的方式应和与物理磁盘交互的方式相同。图 2 显示了 VxVM 如何将磁盘阵列中的磁盘以多个卷的形式提供给操作系统。
可以将数据分布在磁盘阵列中的多个磁盘上,以便在这些磁盘之间分配或平衡 I/O 操作。在多个磁盘上使用并行 I/O 可提高阵列的数据传输速度和总吞吐量,从而提高 I/O 性能。
多路径磁盘阵列
有些磁盘阵列提供用于访问其磁盘设备的多个端口。这些端口与主机总线适配器 (HBA) 控制器以及阵列的任何本地数据总线或 I/O 处理器相结合,组成了多个用于访问磁盘设备的硬件路径。这种磁盘阵列称为多路径 磁盘阵列,此类型的磁盘阵列可以通过许多不同的配置(如连接到单个主机上不同控制器的多个端口、通过主机上的单个控制器形成的端口链,或同时连接到不同主机的端口)连接到主机系统上。
设备发现
设备发现是发现挂接到主机上的磁盘的过程。此功能对于动态多路径 (DMP) 很重要,因为它需要支持越来越多的来自很多供应商的磁盘阵列。设备发现服务与发现主机挂接的设备的能力相结合,使您能够动态地向新磁盘阵列添加支持。此操作使用一种称为设备发现层 (DDL) 的功能,无需重新启动即可完成。
虚拟对象
VxVM 中的虚拟对象包括:
- 磁盘组
- 卷管理器 (VM) 磁盘
- 子磁盘
- 丛 (plex)
- 卷
将物理磁盘置于 VxVM 控制之下时,即在物理对象和 VxVM 对象之间建立了关系。在主机系统上安装 VxVM 之后,必须将物理磁盘的内容置于 VxVM 控制之下,方法是将 VM 磁盘组成磁盘组并分配磁盘组空间以创建逻辑卷。
若要将物理磁盘置于 VxVM 控制之下,磁盘一定不能受 LVM 控制。VxVM 必须控制物理磁盘,并且磁盘不能受其他存储管理器(如 LVM)的控制。清单 1 显示了使用 vxdisk 命令列出磁盘状态的示例。
清单 1. 使用 vxdisk 列出磁盘状态
# vxdisk -e list
DEVICE TYPE DISK GROUP STATUS OS_NATIVE_NAME
Disk_0 auto - - online hdisk51
Disk_1 auto - - online hdisk48
Disk_2 auto - - online hdisk47
Disk_3 auto - - online hdisk50
Disk_4 auto - - online hdisk49
Disk_5 auto - - online hdisk46
Disk_6 auto - - online hdisk44
Disk_7 auto - - online hdisk42
Disk_8 auto - - online hdisk45
Disk_9 auto - - offline hdisk43
Disk_10 auto - - online hdisk41
Disk_11 auto - - online hdisk40
Disk_12 auto - - online hdisk38
Disk_13 auto - - online hdisk37
Disk_14 auto - - online hdisk39
Disk_15 auto - - online hdisk36
Disk_16 auto - - online hdisk33
Disk_17 auto - - online hdisk34
Disk_18 auto - - online hdisk31
Disk_19 auto - - online hdisk35
Disk_20 auto - - online hdisk32
Disk_21 auto - - LVM hdisk27
VxVM 创建虚拟对象并在这些对象之间建立逻辑关系。然后,VxVM 将使用虚拟对象来执行存储管理任务。
磁盘组
磁盘组 是共享公共配置并由 VxVM 管理的一些磁盘的集合。磁盘组配置是包含相关 VxVM 对象及其属性和联系的详细信息的记录集。磁盘组名称最长为 31 个字符。
可以在需要时创建附加磁盘组。磁盘组允许将磁盘按逻辑集合分组。磁盘组及其组件可以作为一个单元从一台主机移到另一台主机。
VM 磁盘
将物理磁盘置于 VxVM 控制之下时,系统会为该物理磁盘分配一个 VM 磁盘。VM 磁盘受 VxVM 控制,通常位于某个磁盘组中。每个 VM 磁盘与一个物理磁盘对应。VxVM 从 VxVM 磁盘空间的连续区域分配存储空间。VM 磁盘通常包括一个公共区域(已分配存储区)和一个小的存储 VxVM 内部配置信息的专用区域。每个 VM 磁盘都有一个唯一的磁盘介质名,称为虚拟磁盘名。您可以定义最多包含 31 个字符的磁盘名,也可以让 VxVM 分配 diskgroup(number) 形式的缺省名称,其中 diskgroup 是磁盘所属的磁盘组的名称。图 3 显示了一个示例。
子磁盘
子磁盘是一组连续的磁盘块。块是磁盘上的空间单元。VxVM 使用子磁盘分配磁盘空间。一个 VM 磁盘可以分成一个或多个子磁盘。每个子磁盘代表一个 VM 磁盘的特定部分,而 VM 磁盘映射到物理磁盘的特定区域。VM 磁盘的缺省名称是 diskgroup(number)。子磁盘的缺省名称是 diskgroup(number-number),如图 4 所示,其中 diskgroup 是磁盘所属的磁盘组的名称。
一个 VM 磁盘可以包含多个子磁盘,但子磁盘不能互相重叠或共享 VM 磁盘的同一部分。图 5 显示了包含三个子磁盘的 VM 磁盘。VM 磁盘被分配到一个物理磁盘上。
丛(plexes)
VxVM 使用子磁盘构建称为丛(plexes) 的虚拟对象。丛由位于一个或多个物理磁盘上的一个或多个子磁盘组成。例如,图 6 显示了丛 vol01-01。
卷(volume )
卷(volume) 是一种虚拟的磁盘设备,就应用程序、数据库和文件系统而言,它与物理磁盘设备很相似,但没有物理磁盘设备的物理局限性。卷由一个或多个丛组成,每个丛都包含卷中所选数据的一个副本。由于卷的虚拟特性,卷并不局限在某个磁盘或磁盘中的特定区域之中。
使用 VxVM 用户界面可以更改卷的配置。而且不必中断正在使用卷的应用程序或文件系统即可完成配置更改。例如,可以在不同的磁盘上镜像卷,也可通过移动卷来使用不同的磁盘存储区。
VxVM 对卷使用缺省的命名约定 vol(number),对卷中的丛使用缺省的命名约定 vol(number-number)。为便于管理,您可以为所创建的卷选择更有意义的名称。
VxVM 5.0 安装
本部分介绍 VxVM 安装和配置命令,您可以使用这些命令在 AIX 5.3 和 6.10 版本上执行与 VxVM 对象相关的任务。VxVM 的运行依赖于下列持续运行的守护进程和内核线程: vxconfigd
VxVM 配置守护进程维护磁盘和磁盘组配置,将配置更改传递给内核,并修改磁盘上存储的配置信息。
vxiodVxVM I/O 内核线程提供扩展 I/O 操作,而不会阻止调用进程。缺省情况下,引导时会启动 16 个 I/O 线程,且至少有一个 I/O 线程将一直处于运行状态。 vxrelocd热重定位守护进程监视 VxVM 是否有影响冗余的事件,并执行热重定位以恢复冗余。在开始安装之前,请确保已正确设置了 PATH 变量,因为安装过程中使用的大多数命令都位于 /sbin 或 /usr/sbin 目录。将这些目录添加到您的 PATH 环境变量中,如清单 2 所示。
清单 2. PATH 信息
For a KSH Shell (or sh), use the command:
# PATH=/sbin:/usr/sbin:/etc/vx/bin:/opt/VRTS/bin:$PATH# export PATH
For a C Shell (csh or tcsh), use the command:
% setenv PATH /sbin:/usr/sbin:/etc/vx/bin:/opt/VRTS/bin:${PATH}
验证操作系统环境
Symantec 的 Veritas Storage Foundation 5.0 只能安装在运行 AIX 5.3 或 AIX 6 的系统中。在安装 Veritas Storage Foundation 之前,这些系统必须处于适当的维护级别上,并安装了附加 AIX 修补程序。在 AIX 计算机上使用 oslevel 命令来检查操作系统的维护级别,如清单 3 所示。
清单 3. 检查操作系统级别
# oslevel
6.1.0.0
# oslevel -rq
Known Recommended Maintenance Levels
------------------------------------
6110-00
# oslevel
5.3.0.0
# oslevel -rq
Known Recommended Maintenance Levels
------------------------------------
5300-07
5300-06
5300-05
5300-04
5300-03
5300-02
5300-01
5380-00
先决条件
下列 Veritas Storage Foundation 软件包是执行安装的必需或可选(已标注)组件。
VRTSperl PERL 语言 必需
VRTSspt VERITAS 支持工具 必需
VRTSvlic VERITAS 许可实用程序 必需
VRTSvmdoc VERITAS Volume Manager 联机指南 可选
VRTSvmman VERITAS Volume Manager 手册页 可选
VRTSvmpro VERITAS Volume Manager 提供程序 对于 VEA 和 ISP 是必需的
VRTSvxvm VERITAS Volume Manager 必需
VRTSveki VERITAS 内核接口组件 必需
VRTSvxfs VERITAS 文件系统 必需
VRTSddlpr VERITAS 设备发现层提供程序 必需
VRTSfspro VERITAS 文件系统提供程序 对于 VEA 是必需的,即使不安装 VERITAS 文件系统软件也是如此
VRTSob VERITAS 企业管理员服务 对于 VEA 和 ISP 是必需的
VRTSobgui VERITAS 企业管理员 对于 VEA 客户端是必需的
VRTSFman VERITAS 文件系统手册页 可选
VRTSFsdoc VERITAS 文件系统联机手册 可选
安装 Veritas Storage Foundation
在安装 Storage Foundation 之前,需要从 Symantec 网站下载文件集。最佳做法是通过运行 cksum 命令并与原位置的文件集进行比较来检查所下载文件集的数据完整性。
- 以 superuser 身份登录。使用 installp 命令安装所需的软件包,如清单 4 所示。
清单 4. installp
Note:- Check the size of the file by using cksum command as below,
# cksum VRTSvxvm.bff
1823433071 126310400 VRTSvxvm.bff
installp command is used as below,
installp -acXd VRTSvmdoc.bff VRTSvmdoc
installp -acXd VRTSvmman.bff VRTSvmman
installp -acXd VRTSveki.bff VRTSveki
installp -acXd VRTSspt.bff VRTSspt
installp -acXd VRTSvxvm.bff VRTSvxvm
installp -acXd VRTSvlic.bff VRTSvlic
installp -acXd VRTSvxfs.bff VRTSvxfs
installp -acXd VRTSperl.bff VRTSperl
Note:- All these commands can be put inside a ksh script and
installed by invoking that script.
使用 lslpp 命令验证 Veritas VxVM 是否已完成安装,如清单 5 所示。
清单 5. 验证安装
# lslpp -l |grep -i vrts
VRTSspt 5.0.1.0 COMMITTED Veritas Support Tools
VRTSveki 5.0.1.0 COMMITTED Veritas Kernel Interface
VRTSvlic 5.0.1.0 COMMITTED VRTSvlic Symantec License
VRTSvxfs 5.0.1.0 COMMITTED Veritas File System
VRTSvxvm 5.0.1.0 COMMITTED Veritas Volume Manager
VRTSveki 5.0.1.0 COMMITTED Veritas Kernel Interface
VRTSvmman 5.0.1.0 COMMITTED Veritas Manual Pages
VRTSvdoc 5.0.1.0 COMMITTED Veritas Documentation
- 若要从 CD-ROM 安装,请装入 CD-ROM 并按照以下步骤进行安装。
- 以 superuser 身份登录。
- 将 Veritas 软件光盘插入连接到系统的 CD-ROM 驱动器中。
- 手动装入 CD: # mkdir -p /mnt/cdrom # mount -V cdrfs -o ro /dev/cdN /mnt/cdrom
其中,/dev/cdN 中的 N 是目标系统上配置的 CD 设备的编号。N 的值通常为 0。
在系统的 /dev 目录下检查 CD 设备节点,或使用下面的方法并继续执行第 4 步。若要调用通用安装程序,请按如下方式运行 CD 上的安装命令。
# /mnt/cdrom/CD_NAME/installer - 如果未安装 VRTSvlic 许可软件包,则会有消息提示您是否要安装 VRTSvlic。按照说明安装该软件包。
- 如果已安装 VRTSvlic 许可软件包,则会显示“Product Status”页面:
- 可用于安装的产品。
- 当前已安装的产品。
- 获得许可证的产品。
- 可以启用的操作的选项。
使用 /opt/VRTS/bin/vxlicrep 命令查看各种产品许可证类型的报告。
- 在“Product Status”页面的提示符处,输入 L 以添加许可证密钥,然后按 Return 开始。
- 在下一个提示符处,输入许可证密钥并按 Return。
- 在“Product Status”页面中,为产品安装程序输入 I 并按 Return。即会显示产品安装程序。
- 在 Veritas 产品安装程序中,输入要安装的产品的编号并按 Return。产品将自动开始安装。
在安装结束时,将再次显示 Veritas 产品安装程序。
- 程序将提示您输入要安装软件的系统的名称。收到提示后,按 Enter 继续。
Veritas 许可
使用 vxlicinst 命令安装许可证密钥,如清单 6 所示。(下面的许可证密钥仅用于举例说明。实际安装时,请从 Symantec 获取密钥。)
清单 6. vxlicinst 命令输出
Install License:-
# /sbin/vxlicinst
Symantec License Manager vxlicinst utility version 3.02.16.0
Copyright (C) 1996-2006 Symantec Corporation. All rights reserved.
Enter your license key : RGCU-CB9F-YCBX-BFYX-OTGH-GN4O-7KYP-PPC
Number of days left for Demo = 150
License key successfully installed for VERITAS Storage Foundation for DB2
License key successfully installed for VERITAS File System
License key successfully installed for VERITAS Volume Manager
License key successfully installed for VERITAS Mapping Services
其他许可命令
Veritas 许可命令位于 VRTSvlic 软件包中。必须安装 VRTSvlic 才能使许可过程正常进行。 有两个命令:
- vxlicrep 可用于查看当前安装的许可证。
- vxlictest 获取许可证密钥中涵盖的功能并对其进行描述。
启用 vxconfigd 守护进程
执行清单 7 中的命令以启用 vxconfigd 守护进程。
清单 7. 启用守护进程
# vxconfigd -km disable
# vxdctl init
# vxdctl enable
本部分稍后提供有关 vxconfigd 守护进程和 vxdctl 的更多信息。
若要检查 Storage Foundation 进程并确认 Veritas 文件系统是否已成功安装,请使用以下命令:
# lsvfs vxfs vxfs 32 /sbin/helpers/vxfs /sbin/helpers/vxfs若要确认 Volume Manager 进程(vxconfigd、vxnotify 和 vxrelocd)是否正在运行,请使用:
# ps -e |grep vx创建 VxVM 磁盘组
清单 8 显示了 lspv 命令的输出,其中不含 VxVM 配置。
清单 8. lspv 输出
# lspv
hdisk0 00b28305ad573b54 rootvg active
hdisk1 none None
hdisk2 none None
hdisk3 00b28305eea1b645 None
hdisk4 00b28305eb18f002 None
hdisk5 none None
hdisk6 none None
hdisk7 none None
hdisk8 none None
hdisk9 none None
hdisk10 none None
hdisk11 none None
hdisk12 none None
hdisk13 none None
hdisk14 00b2830584f972f3 None
hdisk15 00b2830584f9751a None
现在必须通过初始化和添加磁盘将这些磁盘配置为 Veritas Volume 磁盘组 (vxvmdg)。在 Volume Manager 中,磁盘有两个初始化级别:
- 对磁盘介质本身进行格式化。此操作必须在 Volume Manager 外部执行。
- 在磁盘上存储标识和配置信息,以供 Volume Manager 使用。
可以将完全初始化的磁盘添加到磁盘组中以用于替换以前的故障磁盘,或创建新的磁盘组。
清单 9. vxdg 命令
#cd /etc/vx/bin --this is done because the command vxdg is in this path.
# vxdg -g vxvmdg adddisk vxvmdg1=Disk_10
# vxdg -g vxvmdg adddisk vxvmdg2=Disk_9
# vxdg -g vxvmdg adddisk vxvmdg3=Disk_7
# vxdg -g vxvmdg adddisk vxvmdg4=Disk_6
# vxdg -g vxvmdg adddisk vxvmdg5=Disk_5
# vxdg -g vxvmdg adddisk vxvmdg6=Disk_4
# vxdg -g vxvmdg adddisk vxvmdg7=Disk_3
# vxdg -g vxvmdg adddisk vxvmdg8=Disk_2
显示已配置磁盘
现在,使用 vxdisk list 命令显示所有已配置磁盘,如清单 10 所示。
清单 10. vxdisk 命令输出
# vxdisk list
DEVICE TYPE DISK GROUP STATUS
Disk_0 auto:none - - online invalid
Disk_1 auto:none - - online invalid
Disk_2 auto:cdsdisk vxvmdg8 vxvmdg online
Disk_3 auto:cdsdisk vxvmdg7 vxvmdg online
Disk_4 auto:cdsdisk vxvmdg6 vxvmdg online
Disk_5 auto:cdsdisk vxvmdg5 vxvmdg online
Disk_6 auto:cdsdisk vxvmdg4 vxvmdg online
Disk_7 auto:cdsdisk vxvmdg3 vxvmdg online
Disk_8 auto:aixdisk - - online
Disk_9 auto:cdsdisk vxvmdg2 vxvmdg online
Disk_10 auto:cdsdisk vxvmdg1 vxvmdg online
Disk_11 auto:none - - online invalid
Disk_12 auto:LVM - - LVM
Disk_13 auto:cdsdisk - - online aliased
Disk_14 auto:LVM - - LVM
Disk_15 auto:cdsdisk - - online aliased
该磁盘列表有时以 hdisk(number) 格式显示。使用 vxdg 命令进行配置时请使用相应的格式。
故障诊断和管理
本部分包括一些故障诊断提示和用于管理 VxVM 的常见命令。
磁盘进入错误状态
当磁盘进入错误状态时,Veritas VxVM 有时无法将这些磁盘声明为 vxvmdgs 状态。若要修复此类故障,请按照如下顺序运行以下命令集。
若要查看 hdisk 和 Disk 列表之间的对应映射,请运行清单 11 中的命令。
清单 11. 进入错误状态的磁盘的解决方案
# vxdisk -e list
DEVICE TYPE DISK GROUP STATUS OS_NATIVE_NAME
Disk_0 auto - - online hdisk51
Disk_1 auto - - online hdisk48
Disk_2 auto - - online hdisk47
Disk_3 auto - - online hdisk50
Disk_4 auto - - online hdisk49
Disk_5 auto - - online hdisk46
Disk_6 auto - - online hdisk44
Disk_7 auto - - online hdisk42
Disk_8 auto - - online hdisk45
Disk_9 auto - - offline hdisk43
Disk_10 auto - - online hdisk41
Disk_11 auto - - online hdisk40
Disk_12 auto - - online hdisk38
Disk_13 auto - - online hdisk37
Disk_14 auto - - online hdisk39
Disk_15 auto - - online hdisk36
Disk_16 auto - - online hdisk33
Disk_17 auto - - online hdisk34
Disk_18 auto - - online hdisk31
Disk_19 auto - - online hdisk35
Disk_20 auto - - error hdisk32
Disk_21 auto - - LVM hdisk27
Disk_22 auto - - online hdisk30
Disk_23 auto - - offline hdisk29
Disk_24 auto - - online hdisk28
Disk_25 auto - - LVM hdisk26
在上面的清单中,Disk_20 处于 error 状态,因此需要修复才能继续执行 VxVM 操作。
若要查看处于 error 状态的 hdisk 的列表,请执行以下命令:
清单 12. 获取列表
# vxdisk -o alldgs list
DEVICE TYPE DISK GROUP STATUS
Disk_0 auto:none - - online invalid
Disk_1 auto:none - - online invalid
Disk_2 auto:none - - online invalid
Disk_3 auto:none - - online invalid
Disk_4 auto:none - - online invalid
Disk_5 auto:none - - online invalid
Disk_6 auto:aixdisk - - online
Disk_7 auto:none - - online invalid
Disk_8 auto:none - - online invalid
Disk_9 auto - - offline
Disk_10 auto:none - - online invalid
Disk_11 auto:none - - online invalid
Disk_12 auto:none - - online invalid
Disk_13 auto:aixdisk - - online
Disk_14 auto:aixdisk - - online
Disk_15 auto:none - - online invalid
Disk_16 auto:none - - online invalid
Disk_17 auto:none - - online invalid
Disk_18 auto:none - - online invalid
Disk_19 auto:none - - online invalid
Disk_20 auto:cdsdisk - - error
Disk_21 auto:LVM - - LVM
Disk_22 auto:none - - online invalid
Disk_23 auto - - offline
Disk_24 auto:none - - online invalid
Disk_25 auto:LVM - - LVM
#cd /etc/vx/bin
尝试使用 vxdisksetup 和 vxdiskunsetup 命令格式化 hdisk,如清单 13 所示。
清单 13. vxdisksetup 和 vxdiskunsetup
# /etc/vx/bin/vxdisksetup -if Disk_20 format=aixdisk
VxVM vxdisk ERROR V-5-1-5433 Device Disk_20: init failed:
Disk sector size is not supported
# /etc/vx/bin/vxdiskunsetup -C Disk_20 format=aixdisk
VxVM vxdiskunsetup ERROR V-5-2-2208 format=aixdisk: Device address must
be of the form enclr_x where
x = one or more decimal digit
由于这两个命令都未能清除 error 状态,请使用 vxdisk 命令查看错误磁盘和正确磁盘的详细列表,如清单 14 所示。
清单 14. vxdisk
a) Disk with error state
# vxdisk list Disk_20
Device: Disk_20
devicetag: Disk_20
type: auto
info: format=cdsdisk,privoffset=256
flags: online error private autoconfig
pubpaths: block=/dev/vx/dmp/Disk_20 char=/dev/vx/rdmp/Disk_20
guid: {5d5aa3b8-1dd2-11b2-aeae-2a5848ed1fb8}
udid: AIX%5FVDASD%5FDISKS%5F600507630EFFFD670000000000000115
site: -
errno: Disk is not useable, bad format
Multipathing information:
numpaths: 1
hdisk32 state=enabled
b) Proper one
# vxdisk list Disk_7
Device: Disk_7
devicetag: Disk_7
type: auto
info: format=none
flags: online ready private autoconfig invalid
pubpaths: block=/dev/vx/dmp/Disk_7 char=/dev/vx/rdmp/Disk_7
guid: -
udid: AIX%5FVDASD%5FDISKS%5F600507630EFFFD670000000000000122
site: -
Multipathing information:
numpaths: 1
hdisk42 state=enabled
现在尝试使用 chpv 命令:
清单 15. chpv
# chpv -C hdisk32
# vxdisk list
DEVICE TYPE DISK GROUP STATUS
Disk_0 auto:none - - online invalid
Disk_1 auto:none - - online invalid
Disk_2 auto:none - - online invalid
Disk_3 auto:none - - online invalid
Disk_4 auto:none - - online invalid
Disk_5 auto:none - - online invalid
Disk_6 auto:aixdisk - - online
Disk_7 auto:none - - online invalid
Disk_8 auto:none - - online invalid
Disk_9 auto - - offline
Disk_10 auto:none - - online invalid
Disk_11 auto:none - - online invalid
Disk_12 auto:none - - online invalid
Disk_13 auto:aixdisk - - online
Disk_14 auto:aixdisk - - online
Disk_15 auto:none - - online invalid
Disk_16 auto:none - - online invalid
Disk_17 auto:none - - online invalid
Disk_18 auto:none - - online invalid
Disk_19 auto:none - - online invalid
Disk_20 auto:cdsdisk - - error
Disk_21 auto:LVM - - LVM
Disk_22 auto:none - - online invalid
Disk_23 auto - - offline
Disk_24 auto:none - - online invalid
Disk_25 auto:LVM - - LVM
# lspv
hdisk26 00cc17cec566971d rootvg active
hdisk27 00cc17ceebb54c8c rootvg active
hdisk28 none None
hdisk29 none VeritasVolumes
hdisk30 none None
hdisk31 none None
hdisk32 none VeritasVolumes
hdisk33 none None
hdisk34 none None
hdisk35 00cc17ce59d7d248 None
hdisk36 none None
hdisk37 none VeritasVolumes
hdisk38 none None
hdisk39 none VeritasVolumes
hdisk40 none None
hdisk41 none None
hdisk42 none None
hdisk43 none VeritasVolumes
hdisk44 none VeritasVolumes
hdisk45 none None
hdisk46 none None
hdisk47 00cc17cee3638f87 None
hdisk48 00cc17cee2ea1ed0 None
hdisk49 00cc17cee2ea1f4d None
hdisk50 00cc17cee2ea1fe1 None
hdisk51 00cc17cec8c84486 None
即使在执行 chpv 命令后,仍未移除 VeritasVolumes 标签。 尝试启用和禁用 vxconfigd 守护进程。
清单 16. vxconfigd
# vxconfigd –k
# vxdisk scandisks
# lspv
hdisk26 00cc17cec566971d rootvg active
hdisk27 00cc17ceebb54c8c rootvg active
hdisk28 none None
hdisk29 none VeritasVolumes
hdisk30 none None
hdisk31 none None
hdisk32 none VeritasVolumes
hdisk33 none None
hdisk34 none None
hdisk35 00cc17ce59d7d248 None
hdisk36 none None
hdisk37 none VeritasVolumes
hdisk38 none None
hdisk39 none VeritasVolumes
hdisk40 none None
hdisk41 none None
hdisk42 none None
hdisk43 none VeritasVolumes
hdisk44 none VeritasVolumes
hdisk45 none None
hdisk46 none None
hdisk47 00cc17cee3638f87 None
hdisk48 00cc17cee2ea1ed0 None
hdisk49 00cc17cee2ea1f4d None
hdisk50 00cc17cee2ea1fe1 None
hdisk51 00cc17cec8c84486 None
标签仍未移除,并且该磁盘仍然处于 error 状态。
运行下面的命令集直到 seek=3 或 4,然后运行其他命令集。如果存在坏块,dd 命令将清除这些坏块,并移除 error 状态。
清单 17. dd
# dd if=/dev/zero of=/dev/hdisk37 bs=512 seek=0 count=10
10+0 records in
10+0 records out
# dd if=/dev/zero of=/dev/hdisk37 bs=512 seek=1 count=10
10+0 records in
10+0 records out
# dd if=/dev/zero of=/dev/hdisk32 bs=512 seek=0 count=10
10+0 records in
10+0 records out
现在运行 vxdisksetup 命令,它将清除磁盘的 error 状态。
清单 18. vxdisksetup
# vxdisksetup -if Disk_20 format=aixdisk
Now the Disk_20 is online:.
Disk_20 auto - - online hdisk32
向 Veritas Volume 数据组添加 hdisk
使用命令行 shell 脚本可以将 hdisk 添加到 Veritas Volume 数据组 (vxvmdg) 中,如清单 19 所示。
清单 19. 向 Veritas Volume 数据组 (vxvmdg) 添加 hdisk
#for i in 7 8 9 10 11 12 13 14;do vxdg –g vxvmdg adddisk vxvmdg$j=hdisk$i ((j+=1));done;
Note:- Here numbers 7,8,9,.... etc indicates hdisk numbers.
Now vxdisk command output displays the added disks as vxvmdg disks.
# vxdisk list
DEVICE TYPE DISK GROUP STATUS
hdisk0 auto:LVM - - LVM
hdisk1 auto:cdsdisk - - online
hdisk2 auto:cdsdisk - - online
hdisk3 auto:none - - online invalid
hdisk4 auto:cdsdisk - - online
hdisk5 auto:none - - online invalid
hdisk6 auto:aixdisk - - online
hdisk7 auto:cdsdisk vxvmdg1 vxvmdg online
hdisk8 auto:cdsdisk vxvmdg2 vxvmdg online
hdisk9 auto:cdsdisk vxvmdg3 vxvmdg online
hdisk10 auto:cdsdisk vxvmdg4 vxvmdg online
hdisk11 auto:cdsdisk vxvmdg5 vxvmdg online
hdisk12 auto:aixdisk vxvmdg6 vxvmdg online
hdisk13 auto:aixdisk vxvmdg7 vxvmdg online
hdisk14 auto:cdsdisk vxvmdg8 vxvmdg online
其他管理命令
您还可以使用下列命令处理 Veritas VxVM:
vxdiskadm
“Volume Manager Support Operations”菜单界面提供了磁盘操作菜单。主菜单中的每个条目通过提供信息和提出问题,引导您执行特定的操作。系统为许多问题提供了缺省答案,因此可以快速选择常见答案。 vxdiskadd 使用此实用工具可以向 Volume Manager 添加标准磁盘。vxdiskadd 通过显示信息和提出问题引导您初始化新磁盘。 vxdisk 用于管理磁盘设备的命令行实用工具。您可以使用 vxdisk 定义特殊的磁盘设备,初始化存储在磁盘上的信息(Volume Manager 用于标识和管理磁盘),以及执行其他特殊操作。 vxdg 在磁盘组上运行的命令行实用工具。使用该工具可以创建新的磁盘组、向磁盘组添加或删除磁盘,以及启用(导入)或禁用(驱逐)对磁盘组的访问。 vxdisk list 列出磁盘信息并使用 spare 标记显示备用磁盘。 vxprint 列出磁盘和其他信息,并使用 SPARE 标记显示备用磁盘。清单 20 显示了使用 vxdiskadm 命令控制各种 Volume Manager 操作的示例。可以从中选择任意选项以执行所需操作。
清单 20. vxdiskadm 的使用
# vxdiskadm
Volume Manager Support Operations
Menu: VolumeManager/Disk
1 Add or initialize one or more disks
2 Remove a disk
3 Remove a disk for replacement
4 Replace a failed or removed disk
5 Mirror volumes on a disk
6 Move volumes from a disk
7 Enable access to (import) a disk group
8 Remove access to (deport) a disk group
9 Enable (online) a disk device
10 Disable (offline) a disk device
11 Mark a disk as a spare for a disk group
12 Turn off the spare flag on a disk
13 Unrelocate subdisks back to a disk
14 Exclude a disk from hot-relocation use
15 Make a disk available for hot-relocation use
16 Prevent multipathing/Suppress devices from VxVM's view
17 Allow multipathing/Unsuppress devices from VxVM's view
18 List currently suppressed/non-multipathed devices
19 Change/Display the default disk layouts
20 Mark a disk as allocator-reserved for a disk group
21 Turn off the allocator-reserved flag on a disk
22 Change the disk naming scheme
list List disk information
? Display help about menu
?? Display help about the menuing system
q Exit from menus
Select an operation to perform:
Below is the example for creating volume group vxvmdg and adding a disk to it.
Select an operation to perform: 1
Add or initialize disks
Menu: VolumeManager/Disk/AddDisks
Use this operation to add one or more disks to a disk group. You can
add the selected disks to an existing disk group or to a new disk group
that will be created as a part of the operation. The selected disks may
also be added to a disk group as spares. Or they may be added as
nohotuses to be excluded from hot-relocation use. The selected
disks may also be initialized without adding them to a disk group
leaving the disks available for use as replacement disks.
More than one disk or pattern may be entered at the prompt. Here are
some disk selection examples:
all: all disks
hdisk8: a single disk (in the hdisk# naming scheme)
scsi3 : all disks on scsi controller 3
fscsi6 : all disks on fiber controller 6
xyz_0 : a single disk (in the enclosure based naming scheme)
xyz_ : all disks on the enclosure whose name is xyz
Select disk devices to add: [(pattern-list),all,list,q,?] hdisk2
Here is the disk selected. Output format: [Device_Name]
hdisk2
Continue operation? [y,n,q,?] (default: y) y
You can choose to add this disk to an existing disk group, a
new disk group, or leave the disk available for use by future
add or replacement operations. To create a new disk group,
select a disk group name that does not yet exist. To leave
the disk available for future use, specify a disk group name
of "none".
Which disk group [
Create a new group named vxvmdg? [y,n,q,?] (default: y) y
Create the disk group as a CDS disk group? [y,n,q,?] (default: y) y
Use a default disk name for the disk? [y,n,q,?] (default: y) y
Add disk as a spare disk for vxvmdg? [y,n,q,?] (default: n) y
Add site tag to disk? [y,n,q,?] (default: n) y
A new disk group will be created named vxvmdg and the selected
disks will be added as spares to the disk group with default
disk names.
hdisk2
现在可以使用 lspv 或 vxdisk 查看 hdisk1 已被添加到 vxvmdg 组。
清单 21 显示了如何使用 vxdg 销毁任何不需要的磁盘组条目。
清单 21. 使用 vxdg 销毁不需要的磁盘组条目
#cd /etc/vx/bin
# vxdisk -e list
DEVICE TYPE DISK GROUP STATUS OS_NATIVE_NAME
Disk_0 auto - - online hdisk15
Disk_1 auto - - online hdisk14
Disk_2 auto - - online hdisk13
Disk_3 auto - - online hdisk12
Disk_4 auto TCd7-90536 TCg3-90536 online hdisk10
Disk_5 auto TCd6-90536 TCg3-90536 online hdisk9
Disk_6 auto - - online hdisk11
Disk_7 auto TCd5-90536 TCg2-90536 online hdisk8
Disk_8 auto TCd4-90536 TCg2-90536 online hdisk7
Disk_9 auto TCd3-90536 TCg1-90536 online hdisk6
Disk_10 auto - - online hdisk5
Disk_11 auto - - online hdisk4
Disk_12 auto - - LVM hdisk0
Disk_13 auto - - online hdisk1
Disk_14 auto - - LVM hdisk3
Disk_15 auto - - online hdisk2
# for i in 6 7 8 9 10 11;do vxdg destroy hdisk$i;done;
# vxdisk -e list
DEVICE TYPE DISK GROUP STATUS OS_NATIVE_NAME
Disk_0 auto - - online hdisk15
Disk_1 auto - - online hdisk14
Disk_2 auto - - online hdisk13
Disk_3 auto - - online hdisk12
Disk_4 auto - - online hdisk10
Disk_5 auto - - online hdisk9
Disk_6 auto - - online hdisk11
Disk_7 auto - - online hdisk8
Disk_8 auto - - online hdisk7
Disk_9 auto - - online hdisk6
Disk_10 auto - - online hdisk5
Disk_11 auto - - online hdisk4
Disk_12 auto - - LVM hdisk0
Disk_13 auto - - online hdisk1
Disk_14 auto - - LVM hdisk3
Disk_15 auto - - online hdisk2
更改磁盘组格式类型
清单 22 显示了如何更改磁盘组格式类型,以及如何修复由此产生的错误。
清单 22. 更改磁盘组类型
#cd /etc/vx/bin
#for i in 7 6 5 4 3 2;do vxdisksetup –if Disk_$i format=aixdisk;done;
#for i in 7 6 5 4 3 2;do vxdisksetup –if Disk_$i format=cdsdisk;done;
# vxdg -g vxvmdg adddisk vxvmdg2=hdisk5
VxVM vxdg ERROR V-5-1-6478 Device hdisk5 cannot be added to a CDS disk group
[root@ortega01] /ezcfg/dat
# vxdisk list
DEVICE TYPE DISK GROUP STATUS
hdisk0 auto:LVM - - LVM
hdisk1 auto:cdsdisk - - error
hdisk2 auto:cdsdisk - - error
hdisk3 auto:none - - online invalid
hdisk4 auto:cdsdisk vxvmdg1 vxvmdg online
hdisk5 auto:aixdisk - - online
If you get the above type of error, fix it using:
#/etc/vx/bin/vxdisksetup -if hdisk5 format=cdsdisk
Now run:
# vxdg -g vxvmdg adddisk vxvmdg2=hdisk5
# vxdisk list
DEVICE TYPE DISK GROUP STATUS
hdisk0 auto:LVM - - LVM
hdisk1 auto:cdsdisk - - error
hdisk2 auto:cdsdisk - - error
hdisk3 auto:none - - online invalid
hdisk4 auto:cdsdisk vxvmdg1 vxvmdg online
hdisk5 auto:cdsdisk vxvmdg2 vxvmdg online
总结
本文简要介绍了 VxVM。您还可以了解有关安装、配置、管理、故障诊断以及一些命令行实用工具的信息。尽管您现在对 VxVM 已经有了更好的了解,仍然建议您访问 Veritas Symantec 网站以了解更多信息。