用于 Solaris OS 的 Sun Cluster 数据服务规划和管理指南

联机修改具有高可用性的文件系统的资源

在修改表示文件系统的资源时,您可能需要使具有高可用性的文件系统保持其可用性。例如,您可能需要使文件系统保持其可用性,因为系统正在对存储设备进行动态置备。在此情况下,请在表示具有高可用性的文件系统的资源处于联机状态时修改该资源。

在 Sun Cluster 环境中,具有高可用性的文件系统由 HAStoragePlus 资源表示。Sun Cluster 使您可以对 HAStoragePlus 联机资源进行以下修改:


注意 –

Sun Cluster 不允许您在文件系统处于联机状态时重命名该文件系统。


如何将文件系统添加到联机 HAStoragePlus 资源中

在将文件系统添加到 HAStoragePlus 资源中时,HAStoragePlus 资源对本地文件系统的处理与对全局文件系统的处理不同。

有关 AffinityOn 扩展特性的信息,请参见使资源组和磁盘设备组之间的启动同步

  1. 在群集的一个节点上成为超级用户。

  2. 在群集的每个节点上的 /etc/vfstab 文件中,为要添加的每个文件系统的装入点添加一个条目。

    对于每个条目,请按如下所示设置“引导时装入”字段和“装入选项”字段:

    • 将“引导时装入”字段设置为

    • 如果文件系统是全局文件系统,则将“装入选项”字段设置为包含全局选项。

  3. 检索 HAStoragePlus 资源已经管理的文件系统的装入点列表。


    # scha_resource_get -O extension -R hasp-resource -G hasp-rg \
    FileSystemMountPoints
    
    -R hasp-resource

    指定要向其中添加文件系统的 HAStoragePlus 资源

    -G hasp-rg

    指定包含 HAStoragePlus 资源的资源组

  4. 修改 HAStoragePlus 资源的 FileSystemMountPoints 扩展特性使其包含以下装入点:

    • HAStoragePlus 资源已经管理的文件系统的装入点

    • 要添加到 HAStoragePlus 资源的文件系统的装入点


    # scrgadm -c -j hasp-resource -x FileSystemMountPoints="mount-point-list"
    
    -j hasp-resource

    指定要向其中添加文件系统的 HAStoragePlus 资源

    -x FileSystemMountPoints="mount-point-list "

    指定 HAStoragePlus 资源已经管理的文件系统的装入点以及要添加的文件系统的装入点(以逗号分隔)列表

  5. 确认 HAStoragePlus 资源的装入点列表与您在步骤 4 中指定的列表之间相匹配。


    # scha_resource_get -O extension -R hasp-resource -G hasp-rg \
     FileSystemMountPoints
    
    -R hasp-resource

    指定要向其中添加文件系统的 HAStoragePlus 资源

    -G hasp-rg

    指定包含 HAStoragePlus 资源的资源组

  6. 确认 HAStoragePlus 资源处于联机状态并且未出现故障。

    如果 HAStoragePlus 资源处于联机状态但出现故障,资源的验证将会成功,但 HAStoragePlus 尝试装入文件系统的操作会失败。


    # scstat -g
    

实例 2–3 将文件系统添加到联机 HAStoragePlus 资源中

此例说明了如何将文件系统添加到联机 HAStoragePlus 资源中。

该示例假定每个群集节点上的 /etc/vfstab 文件已经包含要添加的文件系统的条目。


# scha_resource_get -O extension -R rshasp -G rghasp FileSystemMountPoints
STRINGARRAY
/global/global-fs/fs1
# scrgadm -c -j rshasp \
-x FileSystemMountPoints="/global/global-fs/fs1,/global/global-fs/fs2"
# scha_resource_get -O extension -R rshasp -G rghasp FileSystemMountPoints
STRINGARRAY
/global/global-fs/fs1
/global/global-fs/fs2
# scstat -g

 -- Resource Groups and Resources --

             Group Name      Resources
             ----------      ---------
  Resources: rghasp          rshasp


 -- Resource Groups --

             Group Name      Node Name    State
             ----------      ---------    -----
      Group: rghasp          node46       Offline
      Group: rghasp          node47       Online


 -- Resources --

             Resource Name   Node Name    State     Status Message
             -------------   ---------    -----     --------------
   Resource: rshasp          node46       Offline   Offline
   Resource: rshasp          node47       Online    Online

如何从联机 HAStoragePlus 资源中删除文件系统

在从 HAStoragePlus 资源中删除文件系统时,HAStoragePlus 资源对本地文件系统的处理与对全局文件系统的处理不同。

有关 AffinityOn 扩展特性的信息,请参见使资源组和磁盘设备组之间的启动同步


注意 – 注意 –

在从联机 HAStoragePlus 资源中删除文件系统之前,请确保没有任何应用程序正在使用此文件系统。在从联机 HAStoragePlus 资源中删除文件系统时,可能会强制卸载该文件系统。如果某个应用程序正在使用的文件系统被强制卸载,该应用程序可能会出现故障或挂起。


  1. 在群集的一个节点上成为超级用户。

  2. 检索 HAStoragePlus 资源已经管理的文件系统的装入点列表。


    # scha_resource_get -O extension -R hasp-resource -G hasp-rg \
    FileSystemMountPoints
    
    -R hasp-resource

    指定要从中删除文件系统的 HAStoragePlus 资源

    -G hasp-rg

    指定包含 HAStoragePlus 资源的资源组

  3. 修改 HAStoragePlus 资源的 FileSystemMountPoints 扩展特性,使其包含要保留在 HAStoragePlus 资源中的文件系统的装入点。


    # scrgadm -c -j hasp-resource -x FileSystemMountPoints="mount-point-list"
    
    -j hasp-resource

    指定要从中删除文件系统的 HAStoragePlus 资源。

    -x FileSystemMountPoints="mount-point-list "

    指定要保留在 HAStoragePlus 资源中的文件系统的装入点(以逗号分隔)列表。此列表不能包含要删除的文件系统的装入点。

  4. 确认 HAStoragePlus 资源的装入点列表与您在步骤 3 中指定的列表之间相匹配。


    # scha_resource_get -O extension -R hasp-resource -G hasp-rg \
    FileSystemMountPoints
    
    -R hasp-resource

    指定要从中删除文件系统的 HAStoragePlus 资源

    -G hasp-rg

    指定包含 HAStoragePlus 资源的资源组

  5. 确认 HAStoragePlus 资源处于联机状态并且未出现故障。

    如果 HAStoragePlus 资源处于联机状态但出现故障,资源的验证将会成功,但 HAStoragePlus 尝试卸载文件系统的操作会失败。


    # scstat -g
    
  6. (可选的) 从群集的每个节点上的 /etc/vfstab 文件中,删除要删除的每个文件系统的装入点条目。


实例 2–4 从联机 HAStoragePlus 资源中删除文件系统

此例说明了如何从联机 HAStoragePlus 资源中删除文件系统。


# scha_resource_get -O extension -R rshasp -G rghasp FileSystemMountPoints
STRINGARRAY
/global/global-fs/fs1
/global/global-fs/fs2
# scrgadm -c -j rshasp -x FileSystemMountPoints="/global/global-fs/fs1"
# scha_resource_get -O extension -R rshasp -G rghasp FileSystemMountPoints
STRINGARRAY
/global/global-fs/fs1
 # scstat -g

 -- Resource Groups and Resources --

             Group Name      Resources
             ----------      ---------
  Resources: rghasp          rshasp


 -- Resource Groups --

             Group Name      Node Name    State
             ----------      ---------    -----
      Group: rghasp          node46       Offline
      Group: rghasp          node47       Online


 -- Resources --

             Resource Name   Node Name    State     Status Message
             -------------   ---------    -----     --------------
   Resource: rshasp          node46       Offline   Offline
   Resource: rshasp          node47       Online    Online

如何在修改 HAStoragePlus 资源之后从故障中恢复

如果在修改 FileSystemMountPoints 扩展特性的过程中出现故障,HAStoragePlus 资源的状态为联机而有故障。更正故障之后,HAStoragePlus 资源的状态为联机。

  1. 确定导致修改尝试失败的故障。


    # scstat -g
    

    有故障 HAStoragePlus 资源的状态消息指明了相应的故障。可能的故障如下所示:

    • 文件系统应位于其上的设备不存在。

    • fsck 命令尝试检修文件系统的操作失败。

    • 尝试添加的文件系统的装入点不存在。

    • 无法装入尝试添加的文件系统。

    • 无法卸载尝试删除的文件系统。

  2. 更正导致修改尝试失败的故障。

  3. 重复用于修改 HAStoragePlus 资源的 FileSystemMountPoints 扩展特性的步骤。


    # scrgadm -c -j hasp-resource -x FileSystemMountPoints="mount-point-list"
    
    -j hasp-resource

    指定要修改的 HAStoragePlus 资源

    -x FileSystemMountPoints="mount-point-list "

    指定装入点(以逗号分隔)列表,这些装入点是在修改具有高可用性的文件系统的失败尝试中指定的

  4. 确定 HAStoragePlus 资源处于联机状态并且未出现故障。


    # scstat -g
    

实例 2–5 出现故障的 HAStoragePlus 资源的状态

此例说明了出现故障的 HAStoragePlus 资源的状态。此资源的故障原因是 fsck 命令尝试修理文件系统失败。


# scstat -g

 -- Resource Groups and Resources --

             Group Name      Resources
             ----------      ---------
  Resources: rghasp          rshasp


 -- Resource Groups --

             Group Name      Node Name    State
             ----------      ---------    -----
      Group: rghasp          node46       Offline
      Group: rghasp          node47       Online


 -- Resources --

           Resource Name   Node Name    State   Status Message
           -------------   ---------    -----   --------------
 Resource: rshasp          node46       Offline Offline
 Resource: rshasp          node47       Online  Online Faulted - Failed
to fsck: /mnt.