使用该过程可以镜像无法卸载的用户定义文件系统。在此过程中,不需要重新引导节点。
成为群集中一个节点上的超级用户。
卸载要镜像的文件系统。
确保文件系统中没有正在运行的进程。
# umount /mount-point |
有关更多信息,请参见 umount(1M) 手册页和《System Administration Guide: Devices and File Systems》中的第 18 章 “Mounting and Unmounting File Systems (Tasks)”。
使包含可以卸载的用户定义的文件系统的盘片处于单片(单向)并置状态。
指定该磁盘片的物理磁盘名称 (cNtX dY sZ)。
# metainit -f submirror1 1 1 diskslice |
创建第二个并置。
# metainit 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 |
等待在步骤 8 中启动的镜像同步完成。
使用 metastat(1M) 命令查看镜像状态。
# metastat mirror |
如果用于镜像用户定义的文件系统的磁盘已物理连接至多个节点(多主机),请启用 localonly 属性。
请执行以下步骤为用于镜像用户定义的文件系统的磁盘启用原始磁盘设备组的 localonly 属性。如果引导设备与多个节点连接,则必须启用 localonly 属性以防止意外地将节点与其引导设备隔开。
如果需要,可以使用 scdidadm -L 命令来显示原始磁盘设备组的完整设备 ID 路径名称。
在下面的示例中,原始磁盘设备组名称 dsk/d4 是输出的第三列(即完整的磁盘 ID 路径名称)的一部分。
# scdidadm -L … 1 phys-schost-3:/dev/rdsk/c1t1d0 /dev/did/rdsk/d2 |
查看原始磁盘设备组的节点列表。
输出类似于以下内容。
# scconf -pvv | grep dsk/d2 Device group name: dsk/d2 … (dsk/d2) Device group node list: phys-schost-1, phys-schost-3 … |
如果节点列表包含多个节点名称,请从节点列表中删除除对其根磁盘进行了镜像的节点以外的所有节点。
原始磁盘设备组节点列表中应只保留对其根磁盘进行了镜像的节点。
# scconf -r -D name=dsk/dN,nodelist=node |
指定原始磁盘设备组在群集范围内唯一的名称
指定要从节点列表中删除的节点的名称
启用 localonly 属性。
启用 localonly 属性之后,该原始磁盘设备组将由节点列表中的节点专用。如果引导设备与多个节点连接,则启用该属性可以防止意外地将节点与其引导设备隔开。
# scconf -c -D name=rawdisk-groupname,localonly=true |
指定原始磁盘设备组的名称
有关 localonly 属性的更多信息,请参见 scconf_dg_rawdisk(1M) 手册页。
安装已镜像的文件系统。
# mount /mount-point |
有关更多信息,请参见 mount(1M) 手册页和《System Administration Guide: Devices and File Systems》中的第 18 章 “Mounting and Unmounting File Systems (Tasks)”。
下面的示例显示了创建镜像 d4 以镜像驻留在 c0t0d0s4 上的 /export 的过程。镜像 d4 由分区 c0t0d0s4 上的子镜像 d14 和分区 c2t2d0s4 上的子镜像 d24 组成。/export 的 /etc/vfstab 文件条目被更新为使用镜像名称 d4。设备 c2t2d0 是一个多主机磁盘,所以启用了 localonly 属性。
(卸载文件系统) # umount /export (创建镜像) # metainit -f d14 1 1 c0t0d0s4 d14: Concat/Stripe is setup # metainit 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 /export 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 … (标识已镜像磁盘的原始磁盘设备组的设备 ID 名称) # scdidadm -L … 1 phys-schost-3:/dev/rdsk/c2t2d0 /dev/did/rdsk/d2 (显示设备组节点列表) # scconf -pvv | grep dsk/d2 Device group name: dsk/d2 … (dsk/d2) Device group node list: phys-schost-1, phys-schost-3 … (从节点列表中删除 phys-schost-3) # scconf -r -D name=dsk/d2,nodelist=phys-schost-3 (启用 localonly 属性) # scconf -c -D name=dsk/d2,localonly=true (安装文件系统) # mount /export |
如果需要创建磁盘组,请转到以下任务之一:
要创建由 Oracle Real Application Clusters 使用的 Solaris Volume Manager for Sun Cluster 磁盘组,请转到《Sun Cluster Data Service for Oracle Real Application Clusters Guide for Solaris OS》中的“Creating a Multi-Owner Disk Set in Solaris Volume Manager for Sun Cluster for the Oracle Real Application Clusters Database”。
要为任何其他应用程序创建磁盘组,请转到在群集中创建磁盘组。
如果使用 SunPlex Installer 安装了 Solstice DiskSuite,则可能已存在一个到三个磁盘组。有关由 SunPlex Installer 创建的元集的信息,请参见使用 SunPlex Installer 配置 Sun Cluster 软件。
如果您有足够的磁盘组来满足需要,则转到以下任务之一:
如果群集包含正好配置了两个磁盘附件和两个节点的磁盘组,则必须添加双串调解器。请转到配置双串调解器。
如果群集配置不需要双串调解器,请转到如何创建群集文件系统。
此镜像过程中的某些步骤可能会导致类似 metainit: dg-schost-1: d1s0: not a metadevice 的错误消息。这样的错误消息是无碍的,可以忽略。