介绍如何创建和维护plex。Plex 是子磁盘的逻辑分组,它创建不受物理磁盘大小或其
它限制约束的磁盘空间区域。磁盘数据的复制(镜像)是通过为单个卷创建多个数据 plex
设置的。镜像卷中的每个数据 plex 都包含卷数据的相同副本。由于每个数据 plex 必须与
其它 plex 驻留在不同的磁盘上,因此如果发生单点磁盘子系统故障,镜像所提供的复制可
防止数据丢失。多个数据 plex 也提高了数据的完整性和可靠性。
使用vxmake命令可以创建 VxVM 对象,如 plex。在创建 plex 时,请标识要与之关联的
子磁盘:
要从现有子磁盘中创建 plex,请使用如下命令
# vxmake [-g diskgroup] plex plex sd=subdisk1[,subdisk2,...]
例如,要使用两个名为disk02-01和disk02-02的现有子磁盘创建一个名为
vol01-02的连续 plex,请使用如下命令
# vxmake plex vol01-02 sd=disk02-01,disk02-02
创建条带 Plex
要创建条带 plex,则必须指定其它属性。例如要创建一个名为pl-01、条带宽度为 32
个扇区和 2 列的条带 plex,请使用如下命令
# vxmake plex pl-01 layout=stripe stwidth=32 ncolumn=2 sd=disk01-01,disk02-01
列出 plex 可有助于识别用于生成卷的空闲 plex。使用vxprint命令的 plex (-p) 选项列出
有关所有 plex 的信息。
要显示有关系统中所有 plex 的详细信息请使用如下命令
# vxprint -lp
若要显示有关特定 plex 的详细信息请使用如下命令
# vxprint -l plex
-t选项打印有关 plex 的单行信息。若要列出空闲的 plex,请使用如下命令
# vxprint -pt
以下部分描述各种 plex 状态的含义,这些 plex 状态可能显示在vxprint输出的 STATE
字段中。
Plex 状态反映 plex 是否完整以及是否为卷内容的一致性副本(镜像)。VxVM 实用程序自
动维护 plex 状态。但是,在某个卷由于发生更改而不应对其进行写操作的情况下,如果某
个 plex 与该卷关联则可以修改该 plex 的状态。例如,如果某个特定 plex 所在的磁盘开
始发生故障,则可以暂时关闭该 plex。
Plex 不必与卷关联。可以用vxmakeplex命令创建 plex,并在以后挂接到卷上。
与卷关联的 plex 具有下列的一种状态:
ACTIVE Plex Plex 在以下两种情况下可以处于 ACTIVE 状态:
当启动了卷并且 plex 完全参与到正常的卷 I/O 时(卷内容更改时
plex 内容也随之更改
当由于系统崩溃而导致卷停止,并且 plex 在发生崩溃时处于 ACTIVE 状态的时候
在后一种情况下,系统故障可以使 plex 内容处于不一致的状态。当启动卷时
VxVM 进行恢复操作,以保证使标记为 ACTIVE 的 plex 的内容都相同。
在运行良好的系统上,对于任何卷 plex,
ACTIVE 都应是最常见的状态。
CLEAN Plex 当已知 plex 包含了卷内容的一致副本(镜像)并且某个操作已关闭该卷时
plex 处于CLEAN 状态。因此,如果卷的所有 plex 都处于 CLEAN 状态,则启动卷时无需任何措施来保证 plex 都是相同的。
DCOSNP Plex 此状态表明,挂接到卷的数据更改对象 (DCO) 日志 plex 可由快照 plex 用于在快照操作过程中创建 DCO 日志卷。
EMPTY Plex 卷创建操作将所有与卷关联的 plex 设置为 EMPTY 状态,以表明还没有初始化该 plex。
IOFAIL Plex IOFAIL plex 状态与持久状态记录相关联。如果vxconfigd后台驻留程序在 ACTIVE plex 上检测到无法纠正的 I/O 故障,它会将该 plex 置于 IOFAIL 状态,以便在卷启动时将其排除在恢复选择进程之外。
该状态表明 plex 相对于卷已过期,并且 plex 要求进行完全恢复。很可能应该替换与 plex
关联的一个或多个磁盘。
LOG Plex 脏区记录 (DRL) 或 RAID-5 日志 plex 的状态始终设置为 LOG。
OFFLINE Plex 通过将 plex 状态设置为 OFFLINE, vxmendoff任务可无限期地将 plex 从卷上分离。虽然分离的 plex 仍保留与卷的关联,但是对卷的更改并不更新 OFFLINE plex。直到将 plex 联机并使用vxplexatt任务重新挂接后,才会更新 plex。发生这种情况时,plex 被置于STALE 状态,可在下一次执行vxvolstart操作时恢复 plex 的内容。
SNAPDONE SNAPDONE plex 状态表明快照 plex 已准备好使用vxassist snapshot进行快照。
SNAPTMP 在某个卷上准备快照时,在执行vxassistsnapstart操作的过程中使用 SNAPTMP
plex 状态。
STALE Plex 如果某个 plex 可能不具有完整的、最新的卷内容,则将该 plex 置于 STALE 状态。另外如果在 plex 上发生 I/O 错误则内核停止对该 plex 的内容的使用和更新,并且将 plex 的状态设置为 STALE。
vxplexatt操作从 ACTIVE plex 恢复 STALE plex 的内容。原子复制操作将卷内容复制
到 STALE plex。系统管理员可以使用vxplexdet操作将 plex 强制为 STALE 状态。
TEMP Plex 将 plex 设置为 TEMP 状态可以使一些不能以真正原子方式发生的 plex 操作变得很容易。例如,将 plex 挂接到已启用的卷要求将卷内容复制到 plex 上,否则,不能认为 plex 已完全挂接到已启用的卷上。
一个实用程序在这样的操作开始时将 plex 状态设置为 TEMP,并在该操作结束时将 plex
设置为适当的状态。如果系统由于任何原因而出现故障TEMP plex 状态表明该操作没有
完成。随后的vxvolstart分离处于 TEMP 状态的 plex。
TEMPRM Plex TEMPRM plex 状态与 TEMP 状态类似,不同之处在于操作完成后删除 TEMPRM plex。一些子磁盘操作需要临时的 plex。例如将子磁盘与 plex 关联要求在真正与 plex 关联之前,使用卷的内容更新此子磁盘。这种更新要求将此子磁盘与标记为 TEMPRM 的临时plex 关联,直到操作完成并删除 TEMPRM plex。如果系统由于任何原因而出现故障TEMPRM 状态表明该操作没有成功地完成。随后的操作将分离并删除 TEMPRM plex。
TEMPRMSD Plex 在卷上挂接新的数据 plex 时vxassist使用 TEMPRMSD plex 状态。如果此同步操作没有完成,则删除 plex 和它的子磁盘。
vxprint也可能在 STATE 字段中显示下列状态标志之一
NODEVICE Plex 对于与 plex 关联的一个子磁盘,未能找到与它在磁盘介质记录中的磁盘 ID 相对应的物理设备。只有修复此状态或分离受影响的子磁盘后,才能使用 plex。
RECOVER Plex 与磁盘介质记录之一相对应的磁盘被替换或重新挂接太迟,以至不能阻止 plex 相对于卷变得过时。Plex 需要从卷中的另一个 plex 获得完全恢复,以与其内容同步。
REMOVED Plex 当删除某个与 plex 关联的子磁盘时,在磁盘介质记录中设置。只有在修复此状态或分离受影响的子磁盘后,才能使用该 plex。
plex 内核状态表明 plex 对于监视该 plex 的卷驱动程序的可存取性。
设置这些状态不需要用户介入,它们在内部维护。在运转正常的系统上,plex 被全
部启用。
已定义下列 plex 内核状态:
DETACHED Plex
DISABLED Plex
ENABLED Plex
plex 处于联机状态。对卷的写请求反映在 plex 中。对卷的读请求从 plex 得到满足。
Plex 通过挂接到某个卷而成为卷的参与 plex。(挂接 plex 是将 plex 与卷关联并启用 plex
供使用)。要将 plex 挂接到现有卷上,请使用如下命令
# vxplex [-g diskgroup] att volume plex
例如,要将名为vol01-02的 plex 挂接到名为vol01的卷,使用如下命令
# vxplex att vol01 vol01-02
如果卷尚未存在则可以在使用如下命令创建卷时将其与一个 plex (或多个 plex)关联:
# vxmake [-g diskgroup] -U usetype vol volume plex=plex1[,plex2...]
例如,要创建一个名为home的、fsgen类型的镜像卷,并关联两个名为home-1与
home-2的现有 plex,请使用如下命令
# vxmake -U fsgen vol home plex=home-1,home-
也可以使用命令vxassistmirrorvolume 将一个数据 plex 作为镜像添加到现有
卷。
使plex脱机
一旦创建了卷并将其置于联机 (ENABLED) 状态,VxVM 便能够临时将 plex 从卷中分离出来。例如,当 plex 驻留的硬件需要修复时,或当卷处于无法启动状态而必须手工选择恢复卷的源 plex 时,这是个有用的功能。
解决磁盘或系统故障的过程包括使卷脱机以及挂接和分离其 plex。解决磁盘故障可使用这
两个命令:vxmend和vxplex。
要将 plex 置于OFFLINE状态,以便在包含该 plex 的子磁盘的物理磁盘上执行修复或维护任务,请使用如下命令
# vxmend off plex
如果磁盘的磁头损坏则应将在受影响的磁盘上有关联子磁盘的所有 plex 都置于
OFFLINE状态。例如,如果 plex vol01-02和vol02-02在要修复的驱动器上有子磁
盘,则使用如下命令使这些 plex 脱机:
# vxmend off vol01-02 vol02-02
此命令将vol01-02和vol02-02置于OFFLINE状态,并且它们保持该状态直到被更
改。plex 不会在重新启动系统时自动恢复。
分离plex
要临时分离镜像卷中的一个数据 plex,请使用如下命令
# vxplex det plex
例如,要临时分离名为vol01-02的 plex 并将其置于维护模式,请使用如下命令
# vxplex det vol01-02
此命令临时分离此 plex,但仍维护该 plex 和其卷之间的关联。但是,该 plex 不能用于
I/O。用上述命令分离的 plex 在系统重新启动时恢复。该 plex 的状态设置为STALE,这
样,如果在适当的卷上运行vxvolstart命令(例如当系统重新启动时)plex 的内容将恢复并处于ACTIVE状态。
重新挂接plex
当磁盘被修复或替换并已重新准备好可供使用时,必须使 plex 回到联机状态(plex 的状
态设置为ACTIVE)。要将 plex 设置为ACTIVE状态,请根据卷的状态使用下列过程之
一。
如果卷当前是ENABLED状态,则使用如下命令重新挂接 plex:
# vxplex att volume plex ...
例如,对于名为vol01的卷上的名为vol01-02的 plex ,使用如下命令
# vxplex att vol01 vol01-02
当该命令将OFFLINEplex 返回到ACTIVE时,它开始恢复 plex 的内容,并在完成再
生后将 plex 实用程序的状态设置为ACTIVE。
如果卷没有在使用中(不是ENABLED状态),请使用如下命令重新启用 plex 以供使
用:
# vxmend on plex
例如,要重新启用名为vol01-02的 plex,请输入
# vxmend on vol01-02
在这种情况下,vol01-02的状态设置为STALE。当下一次启动卷时,此 plex 上的数
据从其它 plex 再生并合并到卷中,并将卷的状态设置为ACTIVE。
# vxmend fix clean plex
使用如下命令启动卷:
# vxvol start volume
移动 Plex
移动 plex 可以将原始 plex 中的数据内容复制到新的 plex 上。要移动 plex,请使用如下命令
# vxplex mv original_plex new_plex
要成功完成移动任务,必须满足下列条件
旧的 plex 必须是一个活动 (ENABLED) 卷的活动部分。
新的 plex 必须至少与旧的 plex 一样大或者更大。
新的 plex 一定不能与另一个卷关联
plex 的大小有多层含义
如果新的 plex 比原始 plex 小或者稀疏,则将导致原始 plex 上数据的不完整副本。如
果愿意要不完整的副本,则对vxplex命令使用-oforce选项。
如果新的 plex 比原始 plex 长或者没有其稀疏,则原始 plex 上存在的数据将被复制到
新的 plex 上。原始 plex 上没有的、但在新的 plex 上存在的任何区域由其它与同一卷
关联的完整 plex 填充。
如果新的 plex 比卷本身长,则新的 plex 中超过卷大小的剩余区域不初始化且保持未使
用状态。
复制 Plex
该任务将一个卷的内容复制到指定的 plex 上。要复制的卷一定不能是启用的。Plex 不能与
其它任何卷相关联。要复制 plex,请使用如下命令
# vxplex cp volume new_plex
复制任务完成后new_plex 与指定的卷volume 不关联。Plex 包含卷数据的完整副本。要
复制的 plex 应与卷大小相同或更大。如果正复制的 plex 比卷小,将导致数据副本不完整。
同理,new_plex 不应稀疏。
分离和删除Plex
当不再需要某个 plex 时,可以将它从其卷中分离并作为对象从 VxVM 删除。下列原因可能导致您想删除 plex:
提供空闲磁盘空间
减少一个卷内的镜像数以便增加另一个镜像及其关联卷的长度。当删除 plex 和子磁盘
时,由此产生的空间可添加到其它卷。
删除为备份卷而创建的、不再需要的临时镜像。
要从关联卷中分离 plex 并将其作为对象从 VxVM 中删除,请使用如下命令
# vxplex -o rm dis plex
例如,要分离并删除一个名为vol01-02的 plex,使用如下命令
# vxplex -o rm dis vol01-02
此命令删除 plex vol01-02及关联的所有子磁盘。
或者,也可以使用如下命令先分离 plex 和子磁盘,然后将其删除
# vxplex dis plex
# vxedit -r rm plex
当这两个命令同时使用时,会产生与vxplex -o rm dis命令同样的结果。vxedit rm
命令的-r选项从指定的对象向下循环地删除所有对象。这样,单个vxedit命令即可删
除 plex 及其关联的子磁盘。
更改 Plex 属性
更改 plex 属性时应十分小心。
vxedit命令更改 plex 和其它 Volume Manager 对象的属性。要更改 plex 属性请使用如
下命令
# vxedit set attribute=value ... plex
使用vxedit命令可以更改的 plex 字段包括:
名称
putiln
tutiln
comment
在重新启动时维持putiln 字段的属性
tutiln 字段是临时的,重新启动时不保留。
VxVM 设置putil0和tutil0实用程序字段。其它 VERITAS 产品(如 VMSA)设置
putil1和tutil1字段。putil2和tutil2可用于地点特定的目的。
以下命令示例设置注释字段,并且还设置tutil2以表明子磁盘正在使用:
# vxedit set comment="plex comment" tutil2="u" vol01-02
若要防止特定的 plex 与卷关联,请将putil0字段设置为非空字符串,如下列命令所示:
# vxedit set putil0="DO-NOT-USE" vol01-02
阅读(3546) | 评论(1) | 转发(1) |