使用此过程镜像用户定义的文件系统。在此过程中,不需要重新引导节点。
成为群集中一个节点上的超级用户。
使用户定义的文件系统所在的片处于单片(单向)并置状态。
# metainit -f submirror1 1 1 diskslice |
再创建一个并置状态。
# metainit -f submirror2 1 1 submirror-diskslice |
创建带有一个子镜像的单向镜像。
# metainit mirror -m submirror1 |
镜像的元设备名称在群集中不必是唯一的。
在每个节点中,为镜像的每个用户定义的文件系统编辑 /etc/vfstab 文件条目。
用镜像名称替代 device to mount 和 device to fsck 两列中的名称。
# vi /etc/vfstab #device device mount FS fsck mount mount #to mount to fsck point type pass at boot options # /dev/md/dsk/mirror /dev/md/rdsk/mirror /filesystem ufs 2 no global |
将第二个子镜像与镜像连接。
连接时将对子镜像进行同步。
# metattach mirror submirror2 |
等待在 步骤 7 中启动的镜像同步的完成。
使用 metastat(1M) 命令查看镜像状态。
# metastat mirror |
如果用于镜像用户定义的文件系统的磁盘物理连接到多个节点(多端口连接),则启用用于镜像用户定义的文件系统的磁盘的原始磁盘设备组的 localonly 特性。
如果引导设备与多个节点连接,则必须启用 localonly 特性以防止意外地将节点与其引导设备隔开。
如果必要,请使用 scdidadm -L 命令来显示原始磁盘设备组的完整设备 ID (DID) 伪驱动程序名称。
在下面的示例中,原始磁盘设备组名称 dsk/d2 是输出的第三列(即完整的 DID 伪驱动程序名称)的一部分。
# scdidadm -L ... 1 phys-schost-3:/dev/rdsk/c1t1d0 /dev/did/rdsk/d2 # scconf -c -D name=dsk/d2,localonly=true |
有关 localonly 特性的详细信息,请参阅 scconf_dg_rawdisk(1M) 手册页。
使用 scconf(1M) 命令可启用 localonly 特性。
# scconf -c -D name=rawdisk-groupname,localonly=true |
指定原始磁盘设备组的名称
创建磁盘集。
转到 "如何创建磁盘集"。
下面的示例显示创建镜像 d4 以镜像位于 c0t0d0s4中的 /home的方法。镜像 d4 由分区 c0t0d0s4 中的子镜像 d14 和分区 c2t2d0s4 中的子镜像 d24 组成。用于 /home 的 /etc/vfstab 文件条目已被更新为使用镜像名称 d4。磁盘 c2t2d0 是一个多端口磁盘,所以已启用 localonly 特性。
(创建镜像)
# metainit -f d14 1 1 c0t0d0s4
d14:Concat/Stripe is setup
# metainit -f d24 1 1 c2t2d0s4
d24: Concat/Stripe is setup
# metainit d4 -m d14
d4:Mirror is setup
(编辑 /etc/vfstab 文件)
# vi /etc/vfstab
#device device mount FS fsck mount mount
#to mount to fsck point type pass at boot options
#
/dev/md/dsk/d4 /dev/md/rdsk/d4 /home ufs 2 no global
(连接第二个子镜像)
# metattach d4 d24
d4:Submirror d24 is attached
(查看同步状态)
# metastat d4
d4:Mirror
Submirror 0: d14
State: Okay
Submirror 1: d24
State: Resyncing
Resync in progress: 15 % done
...
(标识镜像磁盘的原始磁盘设备组的 DID 名称)
# scdidadm -L
...
1 phys-schost-3:/dev/rdsk/c2t2d0 /dev/did/rdsk/d2
(启用镜像磁盘的原始磁盘设备组的 localonly 特性)
# scconf -c -D name=dsk/d2,localonly=true
|