Sun Cluster System Administration Guide for Solaris OS

ProcedureHow to Apply Patches in Single-User Mode with Failover Zones

Perform this task to apply patches in single-user mode with failover zones. This patch method is required if you use the Sun Cluster Data Service for Solaris Containers in a failover configuration with Sun Cluster.

  1. Verify that the quorum device is not configured for one of the LUNs used as shared storage that is part of the disksets that contain the zonepath that is manually taken in this procedure.

    1. Determine if the quorum device is used in the disksets containing the zonepaths, and determine if the quorum device uses scsi2 or scsi3 reservations.


      # clquorum show
      
    2. If the quorum device is within a LUN of the disksets, add a new LUN as a quorum device that is not part of any diskset containing the zonepath.


      # clquorum add new-didname
      
    3. Remove the old quorum device.


      # clquorum remove old-didname
      
    4. If scsi2 reservations are used for the old quorum device, scrub scsi2 reservations from the old quorum and verify that there are no scsi2 reservations left.


      # /usr/cluster/lib/sc/pgre -c pgre_scrub -d /dev/did/rdsk/old-didnames2
      # /usr/cluster/lib/sc/pgre -c pgre_inkeys -d /dev/did/rdsk/old-didnames2
      

      Note –

      If you accidentally scrub reservation keys on your active quorum device, you must remove and re-add the quorum device to put new reservations keys on your quorum device.


  2. Evacuate the node you want to patch.


    # clresourcegroup evacuate -n node1
    
  3. Take offline the resource group or resource groups that contain HA Solaris Container resources.


    # clresourcegroup offline resourcegroupname
    
  4. Disable all the resources in the resource groups that you took offline.


    # clresource disable resourcename
    
  5. Unmanage the resource groups you took offline.


    # clresourcegroup unmanage resourcegroupname
    
  6. Take offline the corresponding device group or device groups.


    # cldevicegroup offline cldevicegroupname
    
  7. Disable the device groups that you took offline


    # cldevicegroup disable devicegroupname
    
  8. Boot the passive node out of the cluster.


    # reboot -- -x
    
  9. Verify that the SMF start methods are completed on the passive node before proceeding.


    # svcs -x
    
  10. Verify that any reconfiguration process on the active node has completed.


    # cluster status
    
  11. Determine if there are any scsi3 reservations on the disks in the disksets.

    1. Run the following command on all disks in the disksets.


      # /usr/cluster/lib/sc/scsi -c inkeys -d /dev/did/rdsk/didnames2
      
    2. If keys are listed, scrub them.


      # /usr/cluster/lib/sc/scsi -c scrub -d /dev/did/rdsk/didnames2
      
  12. Take ownership of the metaset on the passive node


    # metaset -s disksetname -C take -f
    
  13. Mount the file system or file systems that contains the zonepath on the passive node.


    # mount device mountpoint
    
  14. Switch to single user mode on the passive node.


    # init s
    
  15. Halt all possible booted zones that are not under the Sun Cluster Data Service for Solaris Container control.


    # zoneadm -z zonename halt
    
  16. (Optional) If you install multiple patches, for performance reasons you can choose to boot all the configured zones in single-user mode.


    # zoneadm -z zonename boot -s
    
  17. Apply the patches.

  18. Reboot the node and wait until all its SMF start methods are finished. Perform the svcs -a command only after the node has been rebooted.


    # reboot
    

    # svcs -a
    

    The first node is now ready.

  19. Evacuate the second node you want to patch.


    # clresourcegroup evacuate -n node2
    
  20. Repeat steps 8 through 13 for the second node.

  21. Detach the zones you patched already to speed up the patch process.


    # zoneadm -z zonename detach
    
  22. Switch to single user mode on the passive node.


    # init s
    
  23. Halt all possible booted zones that are not under the Sun Cluster Data Service for Solaris Container control.


    # zoneadm -z zonename halt
    
  24. (Optional) If you install multiple patches, for performance reasons you can choose to boot all the configured zones in single-user mode.


    # zoneadm -z zonename boot -s
    
  25. Apply the patches.

  26. Attach the zones you detached.


    # zoneadm -z zonename attach -F
    
  27. Reboot the node into cluster mode.


    # reboot
    
  28. Bring online the device group or device groups.

  29. Start the resource groups.

  30. Check to see if you need to commit the patch software by using the scversions command.


    # /usr/cluster/bin/scversions
    

    You will see one of the following results:


    Upgrade commit is needed.
    
    Upgrade commit is NOT needed. All versions match.
  31. If a commit is needed, commit the patch software.


    # scversions -c
    

    Note –

    Running scversions will cause one or more CMM reconfigurations, depending on the situation.