Oracle® Solaris Cluster 系统管理指南

退出打印视图

更新时间: 2015 年 10 月
 
 

在全局群集外部运行应用程序

如何从在非群集模式下引导的节点中获取 Solaris Volume Manager 元集

使用此过程可出于测试目的在全局群集外部运行一个应用程序。

  1. 确定 Solaris Volume Manager 元集中是否使用了法定设备,并确定该法定设备是否使用了 SCSI2 或 SCSI3 预留空间。
    phys-schost# clquorum show
    1. 如果法定设备位于 Solaris Volume Manager 元集中,请添加一个新的法定设备,这个新的法定设备不属于稍后要在非群集模式下获取的元集的一部分。
      phys-schost# clquorum add did
    2. 删除旧的法定设备。
      phys-schost# clquorum remove did
    3. 如果法定设备使用 SCSI2 预留空间,请从旧的法定设备中清理 SCSI2 预留空间,并确认没有留下任何 SCSI2 预留空间。

      以下命令可查找持久组保留仿真 (Persistent Group Reservation Emulation, PGRE) 密钥。如果磁盘上没有密钥,将显示 errno=22 消息。

      # /usr/cluster/lib/sc/pgre -c pgre_inkeys -d /dev/did/rdsk/dids2

      找到密钥后,将清理 PGRE 密钥。

      # /usr/cluster/lib/sc/pgre -c pgre_scrub -d /dev/did/rdsk/dids2

      Caution

      注意  - 如果从磁盘中清理活动法定设备密钥,群集将在下次重新配置时出现紧急情况,并显示 Lost operational quorum 消息。


  2. 清除要在非群集模式下引导的全局群集节点。
    phys-schost# clresourcegroup evacuate -n targetnode
  3. 使任一或多个资源组脱机,这些资源组包含 HAStorage 或 HAStoragePlus 资源并包含受您稍后要在非群集模式下获取的元集影响的设备或文件系统。
    phys-schost# clresourcegroup offline resourcegroupname
  4. 禁用已使其脱机的资源组中的所有资源。
    phys-schost# clresource disable resourcename
  5. 取消管理资源组。
    phys-schost# clresourcegroup unmanage resourcegroupname
  6. 使对应的设备组脱机。
    phys-schost# cldevicegroup offline devicegroupname
  7. 禁用设备组。
    phys-schost# cldevicegroup disable devicegroupname
  8. 将被动节点引导至非群集模式。
    phys-schost# reboot -x
  9. 在继续之前,检验被动节点上的引导过程是否已完成。
    phys-schost# svcs -x
  10. 确定元集中的磁盘上是否存在任何 SCSI3 预留空间。

    在元集中的所有磁盘上运行以下命令。

    phys-schost# /usr/cluster/lib/sc/scsi -c inkeys -d /dev/did/rdsk/dids2
  11. 如果磁盘上存在任何 SCSI3 预留空间,请清理预留空间。
    phys-schost# /usr/cluster/lib/sc/scsi -c scrub -d /dev/did/rdsk/dids2
  12. 获取已清除的节点上的元集。
    phys-schost# metaset -s name -C take -f
  13. 挂载包含元集上定义的设备的文件系统。
    phys-schost# mount device mountpoint
  14. 启动应用程序并执行所需的测试。完成测试后,停止应用程序。
  15. 重新引导节点并等待,直到引导过程结束。
    phys-schost# reboot
  16. 使设备组联机。
    phys-schost# cldevicegroup online -e devicegroupname
  17. 启动资源组。
    phys-schost# clresourcegroup online -eM resourcegroupname