Sun Cluster のシステム管理 (Solaris OS 版)

Procedureフェイルオーバーノード構成をしている場合に、シングルユーザーモードでパッチを適用する

フェイルオーバーノードを構成している場合に、シングルユーザーモードでパッチを適用するには、次の作業を実行します 。このパッチ方法は、Sun Cluster ソフトウェアによるフェイルオーバー構成で Solaris コンテナ用 Sun Cluster データサービスを使用する場合に必要です。

  1. この手順で、手動で取得されるゾーンパスを含むディスクセットの一部となる共有ストレージとして使用される LUN のいずれかに、定足数デバイスが構成されていないことを確認します。

    1. 定足数デバイスがゾーンパスを含むディスクセットで使用されているかどうかを確認し、さらに定足数デバイスが SCSI2 または SCSI3 予約を使用するかどうかを確認します。


      # clquorum show
      
    2. 定足数デバイスがディスクセットの LUN 内にある場合は、ゾーンパスを含むディスクセットの一部ではない定足数デバイスとして、新しい LUN を追加します。


      # clquorum add new-didname
      
    3. 古い定足数デバイスを削除します。


      # clquorum remove old-didname
      
    4. 古い定足数デバイスで SCSI2 予約が使用されている場合は、古い定足数デバイスから SCSI2 予約をスクラブして、SCSI2 予約が残っていないことを確認します。


      # /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
      

      注 –

      有効な定足数デバイスで誤って予約キーをスクラブした場合は、定足数デバイスを削除してからもう一度追加して、その定足数デバイスに新しい予約キーを付与します。


  2. パッチを適用するノードを退避させます。


    # clresourcegroup evacuate -n node1
    
  3. HA Solaris コンテナリソースを含む 1 つまたは複数のリソースグループをオフラインにします。


    # clresourcegroup offline resourcegroupname
    
  4. オフラインにしたリソースグループ内のすべてのリソースを無効にします。


    # clresource disable resourcename
    
  5. オフラインにしたリソースグループをアンマネージします。


    # clresourcegroup unmanage resourcegroupname
    
  6. 対応する 1 つまたは複数のデバイスグループをオフラインにします。


    # cldevicegroup offline cldevicegroupname
    
  7. オフラインにしたデバイスグループを無効にします。


    # cldevicegroup disable devicegroupname
    
  8. クラスタ外のパッシブノードを起動します。


    # reboot -- -x
    
  9. 続ける前に、パッシブノードで SMF 起動方法が完了していることを確認します。


    # svcs -x
    
  10. アクティブノード上で再構成プロセスが完了していることを確認します。


    # cluster status
    
  11. ディスクセット内のディスクに SCSI-2 予約があるかどうかを調べて、キーを解放します。次の手順に従って、SCSI-2 予約が存在するかどうかを確認し、SCSI-2 予約を解放します。

    • ディスクセット内のすべてのディスクについて、コマンド /usr/cluster/lib/sc/scsi -c disfailfast -d /dev/did/rdsk/d#s2 を実行します。

    • キーがリストされている場合は、コマンド /usr/cluster/lib/sc/scsi -c release -d /dev/did/rdsk/d#s2 を実行してキーを解放します。

    予約キーの解放が終了したら、手順 12 をスキップして、手順 13 に進みます。

  12. ディスクセット内のディスクに SCSI-3 予約があるかどうかを調べます。

    1. ディスクセット内のすべてのディスクで次のコマンドを実行します。


      # /usr/cluster/lib/sc/scsi -c inkeys -d /dev/did/rdsk/didnames2
      
    2. キーがリストされている場合は、それらをスクラブします。


      # /usr/cluster/lib/sc/scsi -c scrub -d /dev/did/rdsk/didnames2
      
  13. パッシブノード上のメタセットの所有権を得ます。


    # metaset -s disksetname -C take -f
    
  14. ゾーンパスを含む 1 つまたは複数のファイルシステムをパッシブノードにマウントします。


    # mount device mountpoint
    
  15. パッシブノードでシングルユーザーモードに切り替えます。


    # init s
    
  16. Solaris コンテナ用の Sun Cluster データサービスの制御下にない、起動されているゾーンをすべて停止します。


    # zoneadm -z zonename halt
    
  17. (省略可能) 複数のパッチをインストールする場合は、パフォーマンス上の理由から、すべての構成済みゾーンをシングルユーザーモードで起動することを選択できます。


    # zoneadm -z zonename boot -s
    
  18. パッチを適用します。

  19. ノードを再起動して、SMF 起動方法が終了するまで待ちます。ノードが再起動したあとで はじめて svcs -a コマンドを実行します。


    # reboot
    

    # svcs -a
    

    最初のノードの準備ができました。

  20. パッチを適用する 2 番目のノードを退避させます。


    # clresourcegroup evacuate -n node2
    
  21. 2 番目のノードで手順 8 - 13 を繰り返します。

  22. パッチプロセスを高速化するために、すでにパッチを適用したゾーンを切り離します。


    # zoneadm -z zonename detach
    
  23. パッシブノードでシングルユーザーモードに切り替えます。


    # init s
    
  24. Solaris コンテナ用の Sun Cluster データサービスの制御下にない、起動されているゾーンをすべて停止します。


    # zoneadm -z zonename halt
    
  25. (省略可能) 複数のパッチをインストールする場合は、パフォーマンス上の理由から、すべての構成済みゾーンをシングルユーザーモードで起動することを選択できます。


    # zoneadm -z zonename boot -s
    
  26. パッチを適用します。

  27. 切り離したゾーンを接続します。


    # zoneadm -z zonename attach -F
    
  28. ノードを再起動して、クラスタモードにします。


    # reboot
    
  29. 1 つまたは複数のデバイスグループをオンラインにします。

  30. リソースグループを起動します。

  31. scversions コマンドを使用し、パッチソフトウェアをコミットする必要があるかどうかを確認してください。


    # /usr/cluster/bin/scversions
    

    結果として、次に示すメッセージのどちらか一方が表示されます。


    Upgrade commit is needed.
    
    Upgrade commit is NOT needed. All versions match.
  32. コミットが必要な場合は、パッチソフトウェアをコミットします。


    # scversions -c
    

    注 –

    scversions を実行すると、状況に応じて 1 つ以上の CMM 再構成が発生します。