Skip Headers
StorageTek Automated Cartridge System Library Software 高可用性 8.3 クラスタインストール、構成、および操作
リリース 8.3
E54098-01
  目次に移動
目次
索引に移動
索引

前
 
次
 

9 ACSLS クラスタの操作

Solaris Cluster は、サーバーノードからサーバーノードへと動作制御を移動させることで、重大な障害シナリオが発生した場合に自動的にシステムを回復するように設計されています。ただし、Solaris システムで発生するほとんどの障害では、回復するために完全なシステムのスイッチオーバーアクションは必要ありません。

上記のシナリオはすべて、Solaris Cluster が関与せずに迅速かつ自動的に処理されます。ただし、その他の重大な障害によってアクティブなサーバーノード上の ACSLS 操作が影響を受ける場合は、制御を代替ノードに切り替えるように、ACSLS HA から Solaris Cluster に指示されます。

ACSLS HA は起動後に、システムを 1 分おきに調査して、次のイベントのいずれかが発生していないかどうかを監視します。

上記のイベントのいずれかが発生すると、Cluster のフェイルオーバーがトリガーされます。また、アクティブなサーバーノード上のシステムに致命的な状況が発生した場合にも、Solaris Cluster はフェイルオーバーを行います。

ACSLS のクラスタ制御の開始

クラスタのフェイルオーバー制御をアクティブにするには:

# cd /opt/ACSLSHA/util
# ./start_acslsha.sh -h <logical hostname> -g <IPMP group> -z acslspool

このアクションによって、ACSLS のクラスタ制御が開始されます。Solaris Cluster はシステムをモニターして、1 分おきに、特に ACSLS および一般に Solaris システムの健全性を検証します。致命的な状況であると判断されると、代替ノード上でアクションが開始されます。

ACSLS リソースグループのクラスタステータスをチェックするには:

# clrg status

出力内容は次のとおりです。

  • 各ノードのステータスを表示します。

  • アクティブなノードを特定します。

  • フェイルオーバーアクションが一時停止されているかどうかを示します。

クラスタ制御下での ACSLS の操作および保守

クラスタ制御がアクティブになると、通常の方法で ACSLS を操作できます。ACSLS は、標準の acsss 制御ユーティリティーを使用して起動および停止できます。クラスタ制御下では、ユーザーはスタンドアロンの ACSLS サーバーでアプリケーションを起動および停止するときと同じ方法で、ACSLS サービスを起動および停止します。操作は、次のような標準の acsss コマンドを使用して管理されます。

acsss enable
acsss disable
acsss db

これらのコマンドを使用して手動で acsss サービスを起動または停止しない場合は、Solaris Cluster がフェイルオーバーアクションに介入します。同様に、Solaris SMF コマンド (svcadm など) を使用しない場合も Cluster が介入します。acsss サービスが異常終了した場合や中断された場合は常に、Cluster ではなく、主に SMF がこれらのサービスのリブートに対処します。

Solaris Cluster は、次の状況が発生した場合にのみ、隣接するノード上の制御の復元に介入します。

  • ACSLS ファイルシステムとの通信が失われた

  • すべての冗長化されたパブリック Ethernet ポートとの通信が失われた

  • 指定したライブラリとの通信が失われ、復元できない

クラスタ制御の一時停止

保守アクティビティーによって不要なクラスタのフェイルオーバーイベントがトリガーされるおそれがある場合は、ACSLS リソースグループのクラスタ制御を一時停止できます。

クラスタ制御を一時停止するには:

# clrg suspend acsls-rg

リソースグループが一時停止されている間は、このようなアクションがトリガーされるような状況が発生しても、Solaris Cluster は隣接するノードへの制御の切り替えを試みません。

これにより、ライブラリがフル稼働中の場合でも、より侵襲的なシステム修復が可能です。

一時停止モード中にアクティブなノードのリブートが発生した場合は、リブート後に acslspool がマウントされず、ACSLS 操作が停止されます。このような状況を解消するには、クラスタ制御を再開するようにしてください。

クラスタ制御を再開するには:

# clrg resume acsls-rg

共有ディスクリソースが現在のノードにマウントされている場合は、正常な操作が再開されます。ただし、アクティブ化時に Solaris Cluster で、zpool がマウントされていないことが検出された場合は、即座に制御が隣接するノードに切り替えられます。隣接するノードにアクセスできない場合は、制御が現在のノードに戻され、Cluster はこのノード上で acslspool のマウントおよび ACSLS サービスの起動を試みます。

ACSLS HA クラスタの電源切断

次の手順では、ACSLS HA システムの電源を切断する必要がある場合の、安全な電源切断シーケンスについて説明します。

  1. クラスタ内のアクティブなノードを特定します。

    # clrg status
    

    オンラインのノードを検索します。

  2. root としてアクティブなノードにログインし、ACSLS リソースグループの Solaris Cluster 制御を停止します。

    # clrg suspend acsls-rg
    
  3. ユーザー acsss に切り替え、acsss サービスを停止します。

    # su - acsss
    $ acsss shutdown
    
  4. acsss としてログアウトし、ノードの電源を正常に切断します。

    $ exit
    # init 5
    
  5. 代替ノードにログインし、init 5 を使用して電源を切断します。

  6. 物理的な電源スイッチを使用して、共有ディスクアレイの電源を切断します。

一時停止された ACSLS クラスタシステムの電源投入

制御されたシャットダウンの前にアクティブであったノード上で ACSLS 操作を復元するには、次の手順を使用します。

  1. ローカルで物理的な電源スイッチを使用するか、またはリモートで Sun Integrated Lights Out Manager を使用して、両方のノードの電源を投入します。

  2. 共有ディスクアレイの電源を投入します。

  3. root として、どちらか一方のノードにログインします。

  4. acsss としてログインするか、$ACS_HOME ディレクトリを一覧表示してみれば、どちらか一方のノードに共有ディスクリソースがマウントされていないことがわかります。クラスタのモニタリングを再開するには、次のコマンドを実行します。

    # clrg resume acsls-rg
    

    このアクションによって、Solaris Cluster は、システムをシャットダウンしたときにアクティブであったノードに共有ディスクをマウントします。また、このアクションによって自動的に acsss サービスがリブートし、通常の操作が再開されるはずです。

単一ノードクラスタの作成

ほかのノードの保守中に、あるノード上のスタンドアロンサーバー環境から ACSLS 操作を続行する必要がある場合があります。これは、ハードウェアの保守、オペレーティングシステムのアップグレード、または Solaris Cluster へのアップグレードの状況に当てはまります。

次の手順を使用して、スタンドアロンの ACSLS サーバーを作成します。

  1. 非クラスタモードで目的のノードをリブートします。

    # reboot -- -x
    

    SPARC サーバーで Open Boot Prom (OBP) からブートして非クラスタモードになるには:

    ok: boot -x
    

    X86 サーバー上で、GRUB ブートメニューを編集する必要があります。

    1. システムの電源を投入します。

    2. GRUB ブートメニューが表示されたら、「e」 (編集) を押します。

    3. サブメニューから矢印キーを使用して、「kernel /platform/i86pc/multiboot」を選択します。これを選択したら、「e」を押します。

    4. 編集モードで、マルチブートオプション kernel /platform/i86pc/multiboot -x-x を追加して、「return」をクリックします。

    5. マルチブートオプション -x が選択されている状態で「b」を押して、そのオプションでブートします。

  2. ブートサイクルが完了したら、root としてログインし、ACSLS Z プールをインポートします。

    # zpool import acslspool
    

    ディスクリソースが別のノードに関連付けられたままになっている場合は、必要に応じて、-f (強制) オプションを使用します。

    # zpool import -f acslspool
    
  3. acsss サービスを起動します。

    # su - acsss
    $ acsss enable