ページの先頭行へ戻る
PRIMECLUSTER  導入運用手引書 4.7

5.1.2 シャットダウン機構の設定

ここでは、PRIMERGY/PRIMEQUEST/仮想マシン環境(KVM)のシャットダウン機構の設定手順について説明します。

シャットダウン機構の設定手順は、機種/構成により異なります。

以下に機種/構成により必要なシャットダウンエージェントを示します。各表中のIPMI、kdump、iRMC、libvirt、vmchkhost はシャットダウンエージェントの省略名です。

表5.2 PRIMERGYで必要なシャットダウンエージェント

サーバ機種

シャットダウンエージェント

IPMI
(SA_ipmi)

kdump
(SA_lkcd)

RX シリーズ
TX シリーズ
CX シリーズ

○(*1)

○: 必要、×:不要

(*1) 以下の環境を除きます。
・RX1330M3 の RHEL8環境
・RX4770M3 の RHEL8環境
・TX1320M3 の RHEL8環境
・TX1330M3 の RHEL8環境
・CX1430M1 の環境

表5.3 PRIMEQUESTで必要なシャットダウンエージェント

サーバ機種

シャットダウンエージェント

iRMC

Panic
(SA_irmcp)

Reset
(SA_irmcr)

Poweroff
(SA_irmcf)

PRIMEQUEST 3000 シリーズ

○: 必要、×:不要

表5.4 仮想マシン環境(KVM)で管理OS異常切替機能を使用しない場合(ゲストOSのみ)に必要なシャットダウンエージェント

サーバ機種

シャットダウンエージェント

libvirt

Panic
(SA_libvirtgp)

Reset
(SA_libvirtgr)

PRIMERGY

PRIMEQUEST 3000 シリーズ

○: 必要

仮想マシン環境(KVM)で管理OS異常切替機能を使用する場合には、以下のシャットダウンエージェントを設定します。ゲストOS上に設定するシャットダウンエージェントは、仮想マシン機能で使用するものと同一です。

表5.5 仮想マシン環境(KVM)で管理OS異常切替機能を使用する場合に必要なシャットダウンエージェント

サーバ機種


クラスタ
ノード

シャットダウンエージェント

IPMI
(SA_ipmi)

kdump
(SA_lkcd)

iRMC

libvirt

vmchkhost

Panic
(SA_irmcp)

Reset
(SA_irmcr)

Poweroff
(SA_irmcf)

Panic
(SA_libvirtgp)

Reset
(SA_libvirtgr)

状態確認
(SA_vmchkhost)

PRIMERGY

RX シリーズ
TX シリーズ
CX シリーズ

管理OS

○(*1)

×

×

×

×

×

×

共通

ゲストOS

×

×

×

×

×

PRIMEQUEST

3000シリーズ

管理OS

×

×

×

×

×

共通

ゲストOS

×

×

×

×

×

○: 必要、×:不要

(*1) 以下の環境を除きます。
・RX1330M3 の RHEL8環境
・RX4770M3 の RHEL8環境
・TX1320M3 の RHEL8環境
・TX1330M3 の RHEL8環境
・CX1430M1 の環境

参照

シャットダウン機構についての詳細は、以下のマニュアルを参照してください。

  1. “PRIMECLUSTER コンセプトガイド”の“2.3.5 PRIMECLUSTER SF”

  2. “PRIMECLUSTER Cluster Foundation 導入運用手引書”の“第7章 シャットダウン機構(SF)”

5.1.2.1 生存優先度

クラスタインタコネクトの障害によりクラスタパーティションが発生した場合、まだ全ノードがユーザ資産にアクセスできる状態にあります。クラスタパーティションについては、“PRIMECLUSTER コンセプトガイド”の“1.2.2.1 データ整合性の保証”を参照してください。
ユーザ資産であるデータの整合性を保証するために、生存させるノード群と強制停止させるノード群を決定する必要があります。
PRIMECLUSTERでは、それぞれのノード群に対する重み付けを「生存優先度」と呼んでいます。
ノードの重みが大きいほど生存優先度は高くなり、小さくなるにつれて生存優先度は低くなります。ノード群の生存優先度が同じ場合は、以下の順で生存するノード群が決定されます。

生存優先度は、以下の計算で求められます。

生存優先度=SFのノードの重み(weight)+userApplicationの ShutdownPriority

注意

SFは、生存させるノード群と強制停止させるノード群を決定するために、管理LANを使用してノード間で生存優先度を交換します。管理LANによる通信が行えない等、各ノードの生存優先度を受け取れない場合、SFは各ノードの生存優先度をSFのノードの重み(weight)とします。

SFのノードの重み(weight):

ノードの重み。デフォルト値=1。シャットダウン機能の設定の際に指定します。

userApplicationのShutdownPriority:

設定はuserApplication作成時の属性設定で行ってください。設定値の変更方法については、“11.1 userApplicationの運用属性の変更”を参照してください。

参照

userApplicationのShutdownPriority属性については、“PRIMECLUSTER RMS 導入運用手引書”の“D.1 ユーザ設定属性”を参照してください。

◆生存優先度の設計指針

以下に、代表的なケースを基に、生存優先度の設計指針を示します。

[最も多くのノードを生存させたい場合]
  • すべてのノードのweightを1(デフォルト)に設定

  • すべてのuserApplicationのShutdownPriority属性を0(デフォルト)に設定

[特定のノードを生存させたい場合]
  • 生存させるノードのweightをその他ノードのweightの合計の2倍以上の値に設定

  • すべてのuserApplicationのShutdownPriority属性を0(デフォルト)に設定

以下は、node1を生存させる場合の例です。

[特定のuserApplicationが動作しているノードを生存させたい場合]
  • すべてのノードのweightを1(デフォルト)に設定

  • 動作を続けさせるuserApplicationのShutdownPriority属性をその他のuserApplicationのShutdownPriority属性とすべてのノードのweightの合計の2倍以上の値に設定

  • ShutdownPriority属性は1~20の範囲で設定

以下は、app1が動作しているノードを生存させる場合の例です。

[特定のノード順番でノードを生存させたい場合]
  • 生存させるノードのweightを自分より優先度が低いノードのweightの合計の2倍以上の値に設定

  • すべてのuserApplicationのShutdownPriority属性を0(デフォルト)に設定

以下は、node1、node2、node3、node4の順番でノードを生存させる場合の例です。

[特定のuserApplication順番でノードを生存させたい場合]
  • すべてのノードのweightを1(デフォルト)に設定

  • 動作を続けさせるuserApplicationのShutdownPriority属性に2のべき乗(1,2,4,8,16,...)の値に設定

  • ShutdownPriority属性に指定する2のべき乗(1,2,4,8,16,...)の最小値は、以下の計算式で算出された値以上を設定

    構成ノード数 - 1

    例:2ノード構成の場合は (2 - 1) = 1。ShutdownPriority属性の最小値は 1 から設定する。

    例:3ノード構成の場合は (3 - 1) = 2。ShutdownPriority属性の最小値は 2 から設定する。

    例:4ノード構成の場合は (4 - 1) = 3。ShutdownPriority属性の最小値は 4 から設定する。

以下は、app1、app2、app3の順番でuserApplicationが動作しているノードを生存させる場合の例です。

[管理OS異常切替機能を使用する場合]
  • 各クラスタシステムにおいて、生存優先度の低い順に、ノードのweightを2のべき乗(1,2,4,8,16,...)の値に設定

  • ゲストOSに設定するweightは、対応する管理OSと順序関係が同じになるようにする

    例えば、管理OS間でhost1の生存優先度をhost2より高くするとき、ゲストOS間でnode1(host1に対応)の生存優先度をnode2~4(host2に対応)より高く設定

  • すべてのuserApplicationのShutdownPriority属性を0(デフォルト)に設定

以下は、node1、node2、node3、node4の順番でノードを生存させる場合の例です。

5.1.2.2 シャットダウン機構の設定の流れ

5.1.2.2.1 PRIMERGY RX/TX/CXシリーズでの設定の流れ

PRIMERGY RX/TX/CXシリーズの場合、シャットダウン機構の設定は、以下の流れで行います。

ただし、RX1330M3,RX4770M3,TX1320M3,TX1330M3のRHEL8環境およびCX1430M1の環境の場合、手順4. は実施不要です。

  1. シャットダウンエージェントの情報確認

  2. シャットダウンデーモンの設定

  3. IPMIシャットダウンエージェントの設定

  4. kdumpシャットダウンエージェントの設定

  5. シャットダウン機構の起動

  6. クラスタノード強制停止テスト

詳細な設定手順は“5.1.2.3 PRIMERGYでのシャットダウン機構の設定手順”を参照してください。

5.1.2.2.2 PRIMEQUEST 3000シリーズでの設定の流れ

PRIMEQUEST 3000シリーズでのシャットダウン機構の設定は、以下の流れで行います。

  1. シャットダウンエージェントの情報確認

  2. iRMCシャットダウンエージェントの設定

  3. シャットダウンデーモンの設定

  4. iRMC非同期監視デーモンの起動

  5. I/O完了待ち時間の設定(ETERNUSディスクアレイ以外を共用ディスクに使用する場合)

  6. シャットダウン機構の起動

  7. クラスタノード強制停止テスト

詳細な設定手順は“5.1.2.4 PRIMEQUEST 3000シリーズでのシャットダウン機構の設定手順”を参照してください。

5.1.2.2.3 KVM環境での設定の流れ

■管理OS異常切替機能を使用する場合

KVM環境で管理OS異常切替機能を使用する場合、シャットダウン機構の設定は以下の流れで行います。

  1. PRIMERGY/PRIMEQUESTの管理OSでのシャットダウン機構の設定

  2. ゲストOSでのシャットダウンエージェントの情報確認

  3. libvirtシャットダウンエージェントの設定

  4. vmchkhostシャットダウンエージェントの設定

  5. シャットダウン機構の起動

  6. 管理OSへの管理OS異常切替機能の設定(PRIMEQUESTのみ)

  7. クラスタノード強制停止テスト

詳細な設定手順は、以下を参照してください。

5.1.2.3 PRIMERGYでのシャットダウン機構の設定手順

5.1.2.4 PRIMEQUEST 3000シリーズでのシャットダウン機構の設定手順

5.1.2.5 仮想マシン環境でのシャットダウン機構の設定手順

■管理OS異常切替機能を使用しない場合

KVM環境で管理OS異常切替機能を使用しない場合、シャットダウン機構の設定は以下の流れで行います。

  1. ゲストOSでのシャットダウンエージェントの情報確認

  2. libvirtシャットダウンエージェントの設定

  3. シャットダウン機構の起動

  4. クラスタノード強制停止テスト

詳細な設定手順は、“5.1.2.5 仮想マシン環境でのシャットダウン機構の設定手順”を参照してください。

5.1.2.3 PRIMERGYでのシャットダウン機構の設定手順

PRIMERGYでのシャットダウン機構の設定手順について説明します。

シャットダウンエージェントの設定は、使用するサーバ機種に対応するものを実施してください。

注意

  • シャットダウン機構に使用する管理LANをGLSで二重化する場合、以下のように設定してください。

    • ノード間でIPアドレスを引継ぐ場合

      GLSをNIC切替方式の論理IPアドレス引継ぎ機能で設定してください。

      シャットダウン機構には、論理IPアドレスではなく、物理IPアドレスを指定してください。

    • ノード間でIPアドレスを引継がない場合

      GLSをNIC切替方式の物理IPアドレス引継ぎ機能で設定してください。

  • シリアルコンソールを使用する環境において、シリアルコンソールが 300 ~ 38400 bps に設定されている場合、シャットダウンエージェントが正常に動作せず、業務の切替えを行えないことがあります。シリアルコンソールは 57600 ~ 115200 bps に設定してください。

  • PRIMERGY(RX4770M3, RX1330M3, TX1320M3, TX1330M3を除く)環境に本ソフトウェアをインストールする場合、以下の前提ソフトウェアの導入が完了している必要があります。

    • - OSステータス通知機能

    UpdateSiteの"PRIMERGY(Linux)"-"FJ-LSP、Linux高信頼ツール ダウンロード"から入手してください。

5.1.2.3.1 シャットダウンエージェントの情報確認

RX/TX/CXシリーズ(CX1430M1を除く)

IPMIシャットダウンエージェントの設定に必要な、iRMC(integrated Remote Management Controller)の以下の設定を確認してください。

また、以下について確認してください。

CX1430M1

IPMIシャットダウンエージェントの設定に必要な、BMC(Baseboard Management Controller)の以下の設定を確認してください。

また、以下について確認してください。

5.1.2.3.2 シャットダウンデーモンの設定

全ノードで/etc/opt/SMAW/SMAWsf/rcsd.cfgを以下のような内容で作成します。

rcsd.cfgファイルはrootユーザで作成し、パーミッションを600にしてください。

RX/TX/CXシリーズ

CFNameX,weight=weight,admIP=myadmIP:agent=SA_ipmi,timeout=timeout
CFNameX,weight=weight,admIP=myadmIP:agent=SA_ipmi,timeout=timeout
CFNameX       : クラスタホストのCFノード名を指定します。
weight        : SFのノードの重みを指定します。
myadmIP       : クラスタホストのシャットダウン機構で使用する管理LANのIPアドレスを指定します。
                iRMCやマネージメントブレードのIPアドレスではありません。
                指定可能なアドレス形式は、IPv4アドレスおよびIPv6アドレスです。
                IPv6のリンクローカルアドレスは使用できません。
                IPv6アドレスを指定する場合は、角括弧[ ]で囲んでください。
                 (例 [1080:2090:30a0:40b0:50c0:60d0:70e0:80f0])
                ホスト名を指定する場合は、/etc/hostsに記載されていることを確認してください。
SA_ipmi       : IPMIシャットダウンエージェントです。
timeout       : IPMIシャットダウンエージェントのタイムアウト時間(秒)を指定します。
                25秒を指定します。

例)

node1,weight=1,admIP=10.20.30.100:agent=SA_ipmi,timeout=25
node2,weight=1,admIP=10.20.30.101:agent=SA_ipmi,timeout=25

注意

  • シャットダウン機構で使用する管理LANでSTP(スパニングツリープロトコル)を使用する場合には、STPがツリーを作成する時間と余裕を考慮し、timeoutに指定する値に50秒加算してください。この設定により、フェイルオーバに要する時間は長くなります。

  • rcsd.cfgファイルの内容は全ノードで同一にしてください。同一でない場合、誤動作します。

参考

/etc/opt/SMAW/SMAWsf/rcsd.cfgファイルを作成する場合、/etc/opt/SMAW/SMAWsf/rcsd.cfg.templateファイルを雛型として使用することができます。

5.1.2.3.3 IPMIシャットダウンエージェントの設定

RX/TX/CXシリーズの場合、iRMC(integrated Remote Management Controller)、またはBMC(Baseboard Management Controller)が搭載されているサーバは、IPMIシャットダウンエージェントを設定します。

IPMIシャットダウンエージェントの設定は、kdumpシャットダウンエージェントの設定前に行ってください。

  1. IPMIサービスの起動

    全ノードで以下のコマンドを実行し、IPMIサービスの起動状態を確認します。

    # /usr/bin/systemctl status ipmi.service
    ipmi.service - IPMI Driver
        Loaded: loaded (/usr/lib/systemd/system/ipmi.service; disabled)
        Active: inactive (dead)

    "Active:"の項目が "inactive"の場合は、以下のコマンドを実行します。

    "Active:"の項目が "active"の場合は、以下のコマンド実行は不要です。

    # /usr/bin/systemctl start ipmi.service
  2. IPMIサービスの起動設定

    全ノードで、現在のIPMIサービスが有効化されているかを確認します。

    # /usr/bin/systemctl list-unit-files --type=service | grep ipmi.service
    ipmi.service disabled

    上記で“disabled”と表示された場合は、以下のコマンドを実行します。

    “enabled”と表示された場合は、以下のコマンド実行は不要です。

    # /usr/bin/systemctl enable ipmi.service
  3. パスワードの暗号化

    sfcipherコマンドを実行し、シャットダウン機構用のユーザのパスワードを暗号化します。

    例) iRMCまたはBMCの設定時に定義したパスワードが"bmcpwd$"の場合

    # sfcipher -c
    Enter User's Password:  ←bmcpwd$ を入力
    Re-enter User's Password:  ←bmcpwd$ を入力
    /t1hXYb/Wno=

    注)パスワードとして定義した記号の前に'\'の記載は不要です。

    sfcipherコマンドの使用法については、sfcipherのマニュアルページを参照してください。

    注意

    iRMCまたはBMCの設定時に定義したパスワードには、7ビット ASCIIコードの文字が使用可能です。
    その中で以下の記号は問題が発生する可能性があるため、使用しないようにしてください。

    >  <  "  /  \  =  !  ?  ;  ,  &
  4. シャットダウンエージェントの設定

    全ノードで/etc/opt/SMAW/SMAWsf/SA_ipmi.cfgを以下のような内容で作成します。

    SA_ipmi.cfgファイルはrootユーザで作成し、パーミッションを600にしてください。

    • IPv4アドレスの場合

      CFName1  ip-address:user:passwd {cycle | leave-off}
      CFName2  ip-address:user:passwd {cycle | leave-off}
    • IPv6アドレスの場合

      CFName1 [ip-address]:user:passwd {cycle | leave-off}
      CFName2 [ip-address]:user:passwd {cycle | leave-off}
      CFNameX      : クラスタホストのCFノード名を指定します。
      ip-address   : クラスタホストが動作しているサーバのiRMCまたはBMCのIPアドレスを指定します。
                      指定可能なアドレス形式は、IPv4アドレスおよびIPv6アドレスです。
                      IPv6のリンクローカルアドレスは使用できません。
                      IPv6アドレスを指定する場合は角括弧[ ]で囲んでください。
                       (例 [1080:2090:30a0:40b0:50c0:60d0:70e0:80f0])
      user         : iRMCまたはBMCの設定時に定義したユーザを指定します。
      passwd       : iRMCまたはBMCの設定時に定義したパスワードです。
                      3.で暗号化したパスワードを指定します。
      cycle        : ノード強制停止後、再起動します。
      leave-off    : ノード強制停止後、電源切断します。

    例1)

    node1のiRMCまたはBMCのIPアドレスが10.20.30.50、node2のiRMCまたはBMCのIPアドレスが10.20.30.51の場合

    node1  10.20.30.50:root:/t1hXYb/Wno= cycle
    node2 10.20.30.51:root:/t1hXYb/Wno= cycle

    例2)

    node1のiRMCまたはBMCのIPアドレスが1080:2090:30a0:40b0:50c0:60d0:70e0:80f0、node2のiRMCまたはBMCのIPアドレスが1080:2090:30a0:40b0:50c0:60d0:70e0:80f1の場合

    node1 [1080:2090:30a0:40b0:50c0:60d0:70e0:80f0]:root:/t1hXYb/Wno= cycle
    node2 [1080:2090:30a0:40b0:50c0:60d0:70e0:80f1]:root:/t1hXYb/Wno= cycle

    参考

    /etc/opt/SMAW/SMAWsf/SA_ipmi.cfgファイルを作成する場合、/etc/opt/SMAW/SMAWsf/SA_ipmi.cfg.templateファイルを雛形として使用することができます。

    注意

    • /etc/opt/SMAW/SMAWsf/SA_ipmi.cfgファイルの設定内容が正しいか確認してください。設定内容に誤りがあった場合、シャットダウン機構が正常に動作できなくなります。

    • /etc/opt/SMAW/SMAWsf/SA_ipmi.cfgファイルのクラスタホストのCFノード名(CFNameX)に対応した、iRMCまたはBMCのIPアドレス(ip-address)が設定されているか確認してください。設定に誤りがあった場合、誤ったノードが強制停止されることがあります。

    • SA_ipmi.cfgファイルの内容は全ノードで同一にしてください。同一でない場合、誤動作します。

5.1.2.3.4 kdumpシャットダウンエージェントの設定

IPMIシャットダウンエージェントの設定後に、kdumpシャットダウンエージェントを設定します。

RX1330M3,RX4770M3,TX1320M3,TX1330M3のRHEL8環境およびCX1430M1の環境は、本手順は実施不要です。

以下の手順を実施してください。

  1. kdump用定義ファイルの初期化

    クラスタシステムを構成するいずれかのノードで以下のコマンドを実行します。

    # /etc/opt/FJSVcllkcd/bin/panicinfo_setup

    以下のエラーメッセージが出力された場合は、シャットダウンデーモンの設定ファイル(rcsd.cfg)に誤りがありますので、再設定してください。

    panicinfo_setup: ERROR: Reading the Shutdown Facility configuration faild.

    以下のエラーメッセージが出力された場合は、シャットダウンエージェントの設定ファイル(SA_ipmi.cfg)に誤りがありますので、再設定してください。

    panicinfo_setup: ERROR: Reading the Shutdown Agent configuration failed.

    また、すでにpanicinfo_setupを実行した環境では、以下のメッセージが出力されます。

    panicinfo_setup: WARNING: /etc/panicinfo.conf file already exists.
    (I)nitialize, (C)opy or (Q)uit (I/C/Q) ?

    この場合は、"I"を入力してください。

    注意

    本コマンドは、CFおよびCFのサービス(CFSH, CFCP)が動作していることを前提としています。設定の詳細については、“5.1.1 CF、CIPの設定”の注意事項を参照してください。

  2. クラッシュダンプ採取の設定

    1. 全ノードで/etc/opt/FJSVcllkcd/etc/SA_lkcd.toutを以下に変更します。

      変更前

      PANICINFO_TIMEOUT 5
      RSB_PANIC 0

      変更

      PANICINFO_TIMEOUT 10
      RSB_PANIC 3
    2. 全ノードで/etc/opt/SMAW/SMAWsf/rcsd.cfgのSA_lkcdのtimeout値を以下に変更します。

      変更前

      agent=SA_lkcd,timeout=20

      変更

      agent=SA_lkcd,timeout=25
5.1.2.3.5 シャットダウン機構の起動

全ノードでシャットダウン機構を起動または再起動します。

  1. シャットダウン機構の起動

    全ノードでシャットダウン機構が起動済みか確認してください。

    # sdtool -s

    シャットダウン機構が起動済みのノードでは、以下を実行してシャットダウン機構を再起動してください。

    # sdtool -e
    # sdtool -b

    停止と起動の間は30秒ほどの間隔を空けて操作してください。短時間で連続実行した場合、以下のメッセージがシスログに出力される場合がありますが対処は不要です。

    rcsd died abnormally. Restart it

    シャットダウン機構が起動していないノードでは、以下を実行してシャットダウン機構を起動してください。

    # sdtool -b
  2. シャットダウン機構の状態確認

    全ノードでシャットダウン機構の状態を確認してください。

    # sdtool -s

参考

sdtool -s コマンドの表示結果について
  • 初期化状態がInitFailed と表示された場合は、そのシャットダウンエージェントの初期化で問題が発生したことを示しています。

  • テスト状態にTestFailed と表示された場合は、クラスタホスト欄に表示されたノードを停止できるかどうかをエージェントがテストしている間に問題が発生したことを示しています。 このような場合には、そのエージェントが使用しているソフトウェア、ハードウェア、ネットワーク資源に何らかの問題が生じていることが考えられます。

  • ノード強制停止状態にUnknownと表示された場合は、SFがノードの停止をまだ行っていないことを示しています。
    初期化状態にUnknownと表示された場合は、SAの初期化、経路のテストをまだ行っていないことを示しています。
    テスト状態および初期化状態には、実際の状態が確認されるまで一時的にUnknown が表示されます。

  • TestFailed またはInitFailed が表示された場合は、/var/log/messages を確認してください。失敗した問題が解決されSF が再起動されると、状態の表示がInitWorked またはTestWorked に変わります。

注意

シャットダウン機構起動後に、"sdtool -s"を実行すると、テスト状態にTestFailedと表示された場合、以下の原因が考えられます。
  • シャットダウンエージェントの設定に誤りがある

  • IPMIシャットダウンエージェントを使用しているが、シャットダウン機構用のユーザのパスワードを暗号化していない

以下の手順で対処を行ってください。

  1. 全ノードで以下のコマンドを実行し、シャットダウン機構を停止します。

    # sdtool -e
  2. シャットダウン機構の設定を見直します。

  3. いずれかのノードで以下のコマンドを実行し、構成定義ファイルの変更内容を反映します。

    # /etc/opt/FJSVcllkcd/bin/panicinfo_setup

    以下のメッセージが出力されるので、“I”を選択します。

    panicinfo_setup: WARNING: /etc/panicinfo.conf file already exists.
    (I)nitialize, (C)opy or (Q)uit (I/C/Q) ?
  4. 全ノードで以下のコマンドを実行し、シャットダウン機構を起動します。

    # sdtool -b
  5. 全ノードで以下のコマンドを実行し、シャットダウン機構が正常に動作していることを確認します。

    # sdtool -s
5.1.2.3.6 クラスタノード強制停止テスト

シャットダウン機構の設定後に、正しいノードが強制停止できることを確認するため、クラスタ強制停止テストを実施します。

クラスタノード強制停止の詳細については、“1.4 テスト”を参照してください。

注意

/etc/opt/SMAW/SMAWsf/rcsd.cfgファイルに記載されているシャットダウンエージェントの記載順番が、「SA_lkcd」→「SA_ipmi」の順になっていることを確認してください。順番が逆の場合、クラッシュダンプの取得に失敗する場合があります。

例)設定例を以下に示します。

fuji2,weight=1,admIP=10.20.30.100:agent=SA_lkcd,timeout=25:SA_ipmi,timeout=25
fuji3,weight=1,admIP=10.20.30.101:agent=SA_lkcd,timeout=25:SA_ipmi,timeout=25

5.1.2.4 PRIMEQUEST 3000シリーズでのシャットダウン機構の設定手順

PRIMEQUEST 3000シリーズでのシャットダウン機構の設定手順について説明します。

注意

  • iRMC/MMB経由でノードをパニックさせる場合は、ダンプ環境(kdump)を設定してください。

  • 拡張パーティションを使用してクラスタシステムを構成する場合、以下に注意してください。

    • 一つのクラスタシステムにつきサポートノード数は最大4ノードになります。

    • Home SBのVGA/USB/rKVMSをいずれかの拡張パーティション(クラスタシステムを構成する拡張パーティション以外でも可)に割り当てる必要があります。Freeの場合、iRMC非同期監視機能が正しく動作しません。
      拡張パーティションへのVGA/USB/rKVMSの割り当て方法については、以下のマニュアルを参照してください。

      • PRIMEQUEST 3000 シリーズ 運用管理ツールリファレンス(MMB)

  • シャットダウン機構に使用する管理LANをGLSで二重化する場合、以下のように設定してください。

    • ノード間でIPアドレスを引継ぐ場合

      GLSをNIC切替方式の論理IPアドレス引継ぎ機能で設定してください。

      シャットダウン機構には、論理IPアドレスではなく、物理IPアドレスを指定してください。

    • ノード間でIPアドレスを引継がない場合

      GLSをNIC切替方式の物理IPアドレス引継ぎ機能で設定してください。

5.1.2.4.1 シャットダウンエージェントの情報確認

iRMCの確認

iRMCシャットダウンエージェントの設定に必要な、以下のiRMCの設定を確認してください。

iRMCを制御するためのユーザを作成するには、set irmc user コマンドを使用してください。

コマンドの使用法については、以下のマニュアルページを参照してください。

MMBの確認

iRMCシャットダウンエージェントの設定に必要な、以下のMMBの設定を確認してください。

また、確認したユーザについて、以下の設定がされているか確認してください。

RMCPでMMBを制御するためのユーザの設定を確認するには、MMB Web-UIにログインし、[Network Configuration]メニューの[Remote Server Management]画面から確認します。

上記のとおりに設定されていない場合は、上記のようにMMBを設定してください。

注意

MMBには以下の2種類のユーザが存在します。

  • RMCPでMMBを制御するためのユーザ

  • MMB全体を制御するためのユーザ

ここで確認するユーザはRMCPでMMBを制御するためのユーザです。

参照

MMBの設定方法、確認方法については、以下のマニュアルを参照してください。

  • PRIMEQUEST 3000 シリーズ運用管理マニュアル

■共用ディスクのI/O完了待ち時間の確認(ETERNUSディスクアレイ以外を共用ディスクに使用する場合)

ETERNUSディスクアレイ以外を共用ディスクに使用する場合、パニックなどのノードダウン時のデータ障害を防止するため、共用ディスクのI/Oが完了するまでの待ち時間を設定する必要があります。

5.1.2.4.5 I/O完了待ち時間の設定”の待ち時間を設定するために、共用ディスクへのI/O発生中にパニックを発生させてから、共用ディスクのI/Oが完了するまでに要する時間を確認してください。

5.1.2.4.2 iRMCシャットダウンエージェントの設定

iRMCシャットダウンエージェントを設定します。

以下の手順で実施してください。

本手順は、“5.1.1 CF、CIPの設定”の後に実施してください。

注意

PRIMERGYにもiRMC装置がありますが、iRMCシャットダウンエージェントは使用できません。

  1. IPMIサービスの起動

    全ノードで以下のコマンドを実行し、IPMIサービスの起動状態を確認します。

    # /usr/bin/systemctl status ipmi.service
    ipmi.service - IPMI Driver Loaded: loaded (/usr/lib/systemd/system/ipmi.service; disabled) Active: inactive (dead)

    "Active:"の項目が "inactive"の場合は、以下のコマンドを実行します。

    "Active:"の項目が "active"の場合は、以下のコマンド実行は不要です。

    # /usr/bin/systemctl start ipmi.service
  2. IPMIサービスの有効化の設定

    全ノードで、現在のIPMIサービスが有効化されているかを確認します。

    # /usr/bin/systemctl list-unit-files --type=service | grep ipmi.service
    ipmi.service disabled

    上記で“disabled”と表示された場合は、以下のコマンドを実行します。

    “enabled”と表示された場合は、以下のコマンド実行は不要です。

    # /usr/bin/systemctl enable ipmi.service
  3. 全ノードでclirmcsetup -a irmcコマンドを実行し、iRMC情報を登録します。

    clirmcsetupコマンドの使用法については、clirmcsetupのマニュアルページを参照してください。

    # /etc/opt/FJSVcluster/bin/clirmcsetup -a irmc irmc-user
    Enter User's Password:
    Re-enter User's Password:

    irmc-userとUser's Passwordには、“5.1.2.4.1 シャットダウンエージェントの情報確認”で確認した以下の内容を入力します。

    irmc-user

    iRMCを制御するためのユーザ

    User's Password

    iRMCを制御するためのユーザのパスワード

    注意

    iRMC設定時に定義したパスワードには、7ビットASCIIコードの文字が使用可能です。

    ただし、以下の記号は問題が発生する可能性があるため、使用しないようにしてください。

    > < " / \ = ! ? ; , &
  4. 全ノードでclirmcsetup -a mmbコマンドを実行し、MMB情報を登録します。

    clirmcsetupコマンドの使用法については、clirmcsetupのマニュアルページを参照してください。

    # /etc/opt/FJSVcluster/bin/clirmcsetup -a mmb mmb-user
    Enter User's Password:
    Re-enter User's Password:

    mmb-userとUser's Passwordには、“5.1.2.4.1 シャットダウンエージェントの情報確認”で確認した以下の内容を入力します。

    mmb-user

    RMCPでMMBを制御するためのユーザ

    User's Password

    RMCPでMMBを制御するためのユーザのパスワード

    注意

    MMB設定時に定義したパスワードには、7ビット ASCIIコードの文字が使用可能です。

    その中で以下の記号は問題が発生する可能性があるため、使用しないようにしてください。

    > < " / \ = ! ? ; , &
  5. 全ノードでclirmcsetup -lコマンドを実行し、登録されたiRMC/MMB情報を確認します。

    手順3、4で登録したiRMC/MMB情報が全ノードで出力されない場合や未設定項目(*none*)がある場合、再度手順1.からやり直してください。

    # /etc/opt/FJSVcluster/bin/clirmcsetup -l
    cluster-host-name  irmc-user    mmb-user
    ------------------------------------------------
    node1               irmc-user    mmb-user
    node2               irmc-user    mmb-user
5.1.2.4.3 シャットダウンデーモンの設定

全ノードで/etc/opt/SMAW/SMAWsf/rcsd.cfgを以下のような内容で作成します。

rcsd.cfgファイルはrootユーザで作成し、パーミッションを600にしてください。

CFNameX,weight=weight,admIP=myadmIP:agent=SA_irmcp,timeout=timeout:agent=SA_irmcr,timeout=timeout:agent=SA_irmcf,timeout=timeout
CFNameX,weight=weight,admIP=myadmIP:agent=SA_irmcp,timeout=timeout:agent=SA_irmcr,timeout=timeout:agent=SA_irmcf,timeout=timeout
CFNameX        : クラスタホストのCFノード名を指定します。
weight         : SFのノードの重みを指定します。
myadmIP        : クラスタホストのシャットダウン機構で使用する管理LANのIPアドレスを指定します。
                 iRMCのIPアドレスではありません。
                 指定可能なアドレス形式は、IPv4アドレスおよびIPv6アドレスです。
                 IPv6のリンクローカルアドレスは使用できません。
                 IPv6アドレスを指定する場合は、角括弧[ ]で囲んでください。
                 (例 [1080:2090:30a0:40b0:50c0:60d0:70e0:80f0])
                 ホスト名を指定する場合は、/etc/hostsに記載されていることを確認してください。
SA_irmcp        :iRMC経由でノードをパニックさせるシャットダウンエージェントです。
                 必ず指定してください。
SA_irmcr        :iRMC経由でノードをリセットさせるシャットダウンエージェントです。
                 必ず指定してください。
SA_irmcf        :MMB経由でノードを電源切断させるシャットダウンエージェントです。
                 必ず指定してください。
timeout        : シャットダウンエージェントのタイムアウト時間(秒)を指定します。
                 SA_irmcpとSA_irmcrとSA_irmcfには、20秒を指定します。

例)

node1,weight=2,admIP=fuji2:agent=SA_irmcp,timeout=20:agent=SA_irmcr,timeout=20:agent=SA_irmcf,timeout=20
node2,weight=2,admIP=fuji3:agent=SA_irmcp,timeout=20:agent=SA_irmcr,timeout=20:agent=SA_irmcf,timeout=20

注意

  • rcsd.cfgファイルで設定するシャットダウンエージェントは、SA_irmcp、SA_irmcr、SA_irmcfの順番ですべてのシャットダウンエージェントを設定してください。

  • rcsd.cfgファイルの内容は全ノードで同一にしてください。同一でない場合、誤動作します。

参考

/etc/opt/SMAW/SMAWsf/rcsd.cfgファイルを作成する場合、/etc/opt/SMAW/SMAWsf/rcsd.cfg.irmc.templateファイルを雛型として使用することができます。

5.1.2.4.4 iRMC非同期監視デーモンの起動

iRMC非同期監視デーモンを起動します。

全ノードでiRMC非同期監視デーモンが起動済みか確認してください。

# /etc/opt/FJSVcluster/bin/clirmcmonctl

"The devirmcd daemon exists."が表示された場合、iRMC非同期監視デーモンが起動済みです。

"The devirmcd daemon does not exist."が表示された場合、iRMC非同期監視デーモンは起動していません。以下を実行し、iRMC非同期監視デーモンを起動してください。

# /etc/opt/FJSVcluster/bin/clirmcmonctl start
5.1.2.4.5 I/O完了待ち時間の設定

ETERNUSディスクアレイ以外を共用ディスクに使用する場合、パニックなどのノードダウン時のデータ障害を防止するため、共用ディスクのI/Oが完了するまでの待ち時間を設定します。

クラスタシステムを構成する任意の1ノードで以下のコマンドを実行し、パニックなどのノードダウンによる切替え時のI/O完了待ち時間(WaitForIOComp)を設定してください。

cldevparamコマンドの詳細については、cldevparamのマニュアルページを参照してください。

# /etc/opt/FJSVcluster/bin/cldevparam -p WaitForIOComp value
value : I/O完了待ち時間を指定します。“5.1.2.4.1 シャットダウンエージェントの情報確認”で確認した時間を指定してください。

設定後、以下のコマンドを実行し、設定した値が反映されていることを確認してください。

# /etc/opt/FJSVcluster/bin/cldevparam -p WaitForIOComp
value

注意

  • I/O完了待ち時間に、CFハートビートのタイムアウト検出時間(デフォルト10秒)以上を指定する場合は、I/O完了待ち時間中にCFハートビートのタイムアウトが発生しないように、CFハートビートのタイムアウト検出時間を、現在の設定値+I/O完了待ち時間+3秒以上に変更してください。
    CFハートビートのタイムアウト検出時間の変更については“11.3.1 CFハートビートのタイムアウト検出時間の変更”を参照してください。

  • I/O完了待ち時間を設定した場合、パニックなどのノードダウン時の切替え時間がその分長くなります。

5.1.2.4.6 シャットダウン機構の起動

全ノードでシャットダウン機構を起動または再起動します。

  1. シャットダウン機構の起動

    全ノードでシャットダウン機構が起動済みか確認してください。

    # sdtool -s

    シャットダウン機構が起動済みのノードでは、以下を実行してシャットダウン機構を再起動してください。

    # sdtool -e
    # sdtool -b

    停止と起動の間は30秒ほどの間隔を空けて操作してください。短時間で連続実行した場合、以下のメッセージがシスログに出力される場合がありますが対処は不要です。

    rcsd died abnormally. Restart it

    シャットダウン機構が起動していないノードでは、以下を実行してシャットダウン機構を起動してください。

    # sdtool -b
  2. シャットダウン機構の状態確認

    全ノードでシャットダウン機構の状態を確認してください。

    # sdtool -s

参考

sdtool -s コマンドの表示結果について
  • 初期化状態がInitFailed と表示された場合は、そのシャットダウンエージェントの初期化で問題が発生したことを示しています。

  • テスト状態にTestFailed と表示された場合は、クラスタホスト欄に表示されたノードを停止できるかどうかをエージェントがテストしている間に問題が発生したことを示しています。 このような場合には、そのエージェントが使用しているソフトウェア、ハードウェア、ネットワーク資源に何らかの問題が生じていることが考えられます。

  • ノード強制停止状態にUnknownと表示された場合は、SFがノードの停止をまだ行っていないことを示しています。
    初期化状態にUnknownと表示された場合は、SAの初期化、経路のテストをまだ行っていないことを示しています。
    テスト状態および初期化状態には、実際の状態が確認されるまで一時的にUnknown が表示されます。

  • TestFailed またはInitFailed が表示された場合は、/var/log/messages を確認してください。失敗した問題が解決されSF が再起動されると、状態の表示がInitWorked またはTestWorked に変わります。

5.1.2.4.7 クラスタノード強制停止テスト

シャットダウン機構の設定後に、正しいノードが強制停止できることを確認するため、クラスタ強制停止テストを実施します。

クラスタノード強制停止の詳細については、“1.4 テスト”を参照してください。

強制停止の実行後に、生存ノードのsyslogに以下のメッセージが出力されているか確認してください。

INFO: 3124 The node status is received. (node: nodename from: irmc/mmb_ipaddress)

出力されていない場合、そのノードのfirewallの設定が適切にされていない可能性がありますので、設定を見直してください。

5.1.2.5 仮想マシン環境でのシャットダウン機構の設定手順

仮想マシン環境でシャットダウン機構を設定する手順について説明します。

注意

シャットダウン機構に使用する管理LANをGLSで二重化する場合、以下のように設定してください。

  • ノード間でIPアドレスを引継ぐ場合

    GLSをNIC切替方式の論理IPアドレス引継ぎ機能で設定してください。

    シャットダウン機構には、論理IPアドレスではなく、物理IPアドレスを指定してください。

  • ノード間でIPアドレスを引継がない場合

    GLSをNIC切替方式の物理IPアドレス引継ぎ機能で設定してください。

5.1.2.5.1 シャットダウンエージェントの情報確認

KVM環境でのシャットダウン機構は、SSHで管理OSにログインし、ゲストOSのドメインを強制停止します。

シャットダウン機構の設定には以下の情報が必要なため、事前に確認してください。

管理OSにログインするためのユーザとパスワードについては、以下で設定した情報を確認してください。

また、確認したユーザがrootユーザとしてコマンドを実行できるように、sudoコマンドの設定が行われているか、以下の手順で確認してください。

  1. すべてのノードでvisudoコマンドを実行してください。

  2. visudoコマンドで表示される設定ファイルに、以下の設定が記載されているか確認してください。

    <ユーザID>    ALL=(root) NOPASSWD: ALL

    記載されていない場合は、記載してください。

5.1.2.5.2 libvirtシャットダウンエージェントの設定

libvitrtシャットダウンエージェントを設定します。

以下の手順で実施してください。

注意

下記の1.から3.までの操作はすべてのゲストOS(ノード)で実行してください。

  1. パスワードの暗号化

    sfcipherコマンドを実行し、“5.1.2.5.1 シャットダウンエージェントの情報確認”で確認したパスワードを暗号化します。

    sfcipherコマンドの使用法については、sfcipherのマニュアルページを参照してください。

    # sfcipher -c
    Enter User's Password:
    Re-enter User's Password:
    D0860AB04E1B8FA3
  2. パニックシャットダウンエージェント(SA_libvirtgp)とリセットシャットダウンエージェント(SA_libvirtgr)の設定

    パニックシャットダウンエージェント(SA_libvirtgp)とリセットシャットダウンエージェント(SA_libvirtgr)を設定します。

    /etc/opt/SMAW/SMAWsf/SA_libvirtgp.cfgと/etc/opt/SMAW/SMAWsf/SA_libvirtgr.cfgをそれぞれ以下のような内容で作成します。

    SA_libvirtgp.cfgとSA_libvirtgr.cfgファイルはrootユーザで作成し、パーミッションを600にしてください。

    CFNameX domainX ip-address user passwd
    CFNameX domainX ip-address user passwd
    CFNameX       :クラスタホストのCFノード名を指定します。
    domainX       :ゲストOSのドメイン名を指定します。
                    “5.1.2.5.1 シャットダウンエージェントの情報確認”で確認したドメイン名を指定します。
    ip-address    :管理OSのIPアドレスを指定します。
                    “5.1.2.5.1 シャットダウンエージェントの情報確認”で確認した管理OSのIPアドレスを
                    指定します。
                    指定可能なアドレス形式は、IPv4アドレスおよびIPv6アドレスです。
                    IPv6のリンクローカルアドレスは使用できません。
    user           : 管理OSにログインするためのユーザです。
                    “5.1.2.5.1 シャットダウンエージェントの情報確認”で確認したユーザを指定します。
    passwd         :“user”で指定したユーザのパスワードです。
                    1.のパスワードの暗号化で確認したものを指定します。

    例)

    node1のゲストOSのドメイン名がdomain1で、node1が動作する管理OSのIPアドレスが10.20.30.50、node2のゲストOSのドメイン名がdomain2で、node2が動作する管理OSのIPアドレスが10.20.30.51の場合

    • /etc/opt/SMAW/SMAWsf/SA_libvirtgp.cfg

      node1 domain1 10.20.30.50 user D0860AB04E1B8FA3
      node2 domain2 10.20.30.51 user D0860AB04E1B8FA3
    • /etc/opt/SMAW/SMAWsf/SA_libvirtgr.cfg

      node1 domain1 10.20.30.50 user D0860AB04E1B8FA3
      node2 domain2 10.20.30.51 user D0860AB04E1B8FA3

    注意

    • /etc/opt/SMAW/SMAWsf/SA_libvirtgp.cfgファイルと/etc/opt/SMAW/SMAWsf/SA_libvirtgr.cfgファイルの設定内容が正しいか確認してください。設定内容に誤りがあった場合、シャットダウン機構が正常に動作できなくなります。

    • /etc/opt/SMAW/SMAWsf/SA_libvirtgp.cfgファイルと/etc/opt/SMAW/SMAWsf/SA_libvirtgr.cfgファイルのクラスタホストのCFノード名(CFNameX)に対応した、ゲストOSのドメイン名(domainX)と管理OSのIPアドレス(ip-address)が設定されているか確認してください。設定に誤りがあった場合、誤ったノードが強制停止されることがあります。

    • SA_libvirtgp.cfg、SA_libvirtgr.cfgファイルの内容はすべてのゲストOS(ノード)で同一にしてください。同一でない場合誤動作します。

  3. 管理OSへのログイン

    シャットダウン機構は、管理OSへSSHでアクセスするため、SSH初回時のユーザ問い合わせ(RSA 鍵の生成)を済ませておく必要があります。

    全ゲストOS(ノード)上でそれぞれ、2. で設定したすべての管理OSのIP アドレス (ip-address) に対して、設定したユーザでログインを実行してください。

    コマンドの実行はrootユーザで行ってください。

    # ssh -l user XXX.XXX.XXX.XXX
    The authenticity of host 'XXX.XXX.XXX.XXX (XXX.XXX.XXX.XXX)' can't be established.
    RSA key fingerprint is xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx.
    Are you sure you want to continue connecting (yes/no)? yes ←yes と入力
5.1.2.5.3 vmchkhostシャットダウンエージェントの設定

管理OS異常切替機能を使用する場合、vmchkhostシャットダウンエージェントを設定します。

本設定は、libvirtシャットダウンエージェントの設定後に実施してください。

注意

下記の2.から3.までの操作はすべてのゲストOS(ノード)で実行してください。

  1. libvirtシャットダウンエージェント設定と管理OSの情報確認

    libvirtシャットダウンエージェントに設定した以下の情報を確認します。

    • 管理OSのIPアドレス

    • 管理OSにログインするためのユーザ

    • 管理OSにログインするためのユーザの暗号化パスワード

    また、管理OSの以下の情報を確認します。

    • CFノード名

  2. vmchkhostシャットダウンエージェントの設定

    /etc/opt/SMAW/SMAWsf/SA_vmchkhost.cfgを以下のような内容で作成します。

    SA_vmchkhost.cfgファイルはrootユーザで作成し、パーミッションを600にしてください。

    guest-cfnameX host-cfnameX ip-address user password
    guest-cfnameX host-cfnameX ip-address user password
    guest-cfnameX   : ゲストOS(クラスタノード)のCFノード名です。
    host-cfnameX    : 管理OSのCFノード名です。
                      1.で確認したCFノード名を指定します。
    ip-address      : 管理OSのIPアドレスです。
                      1.で確認したIPアドレスを指定します。
    user            : 管理OSにログインするためのユーザです。
                      1.で確認したユーザを指定します。
    password        : “user”で指定したユーザのパスワードです。
                      1.で確認した暗号化パスワードを指定します。

    例)

    node1(ゲストOSのCFノード名)が動作する管理OSのCFノード名がhostos1で、管理OSのIPアドレスが10.20.30.50、node2(ゲストOSのCFノード名)が動作する管理OSのCFノード名がhostos2で、管理OSのIPアドレスが10.20.30.51の場合

    node1 hostos1 10.20.30.50 user D0860AB04E1B8FA3
    node2 hostos2 10.20.30.51 user D0860AB04E1B8FA3

    注意

    • /etc/opt/SMAW/SMAWsf/SA_vmchkhost.cfgファイルの設定内容が正しいか確認してください。設定内容に誤りがあった場合、シャットダウン機構が正常に動作できなくなります。

    • /etc/opt/SMAW/SMAWsf/SA_vmchkhost.cfgファイルのゲストOS(クラスタホスト)のCFノード名(guest-cfnameX)に対応した、管理OSのCFノード名(host-cfnameX)と管理OSのIPアドレス(ip-address)が設定されているか確認してください。設定に誤りがあった場合、シャットダウン機構が正常に動作できなくなります。

    • SA_vmchkhost.cfgファイルの内容はすべてのゲストOS(ノード)で同一にしてください。同一でない場合、誤動作します。

  3. 管理OSへのログイン

    シャットダウン機構は、管理OSへSSHでアクセスするため、SSH初回時のユーザ問い合わせ(RSA 鍵の生成)を済ませておく必要があります。

    libvirtシャットダウンエージェントを設定する際にSSH初回時のユーザ問い合わせ(RSA 鍵の生成)を済ませているか確認してください。

5.1.2.5.4 シャットダウンデーモンの設定

全ノードで/etc/opt/SMAW/SMAWsf/rcsd.cfgを以下のような内容で作成します。

rcsd.cfgファイルはrootユーザで作成し、パーミッションを600にしてください。

CFNameX       : クラスタホストのCFノード名を指定します。
weight        : SFのノードの重みを指定します。
myadmIP       : クラスタホストのシャットダウン機構で使用する管理LANのIPアドレスを指定します。
                iRMCやマネージメントブレードのIPアドレスではありません。
                指定可能なアドレス形式は、IPv4アドレスおよびIPv6アドレスです。
                IPv6のリンクローカルアドレスは使用できません。
                IPv6アドレスを指定する場合は、角括弧[ ]で囲んでください。
                 (例 [1080:2090:30a0:40b0:50c0:60d0:70e0:80f0])
                ホスト名を指定する場合は、/etc/hostsに記載されていることを確認してください。
SA_libvirtgp  : ゲストOSをパニックさせるシャットダウンエージェントです。必ず指定してください。
SA_libvirtgr  : ゲストOSをリセットさせるシャットダウンエージェントです。必ず指定してください。
SA_vmchkhost  : 管理OS異常切替機能のシャットダウンエージェントです。
                管理OS異常切替機能の使用時に指定してください。
timeout       : シャットダウンエージェントのタイムアウト時間(秒)を指定します。
                SA_libvirtgpとSA_libvirtgrとSA_vmchkhostには、35秒を指定します。

例1)管理OS異常切替機能を使用する場合

node1,weight=2,admIP=fuji2:agent=SA_libvirtgp,timeout=35:agent=SA_libvirtgr,timeout=35:agent=SA_vmchkhost,timeout=35
node2,weight=1,admIP=fuji3:agent=SA_libvirtgp,timeout=35:agent=SA_libvirtgr,timeout=35:agent=SA_vmchkhost,timeout=35

例2)管理OS異常切替機能を使用しない場合

node1,weight=2,admIP=fuji2:agent=SA_libvirtgp,timeout=35:agent=SA_libvirtgr,timeout=35
node2,weight=1,admIP=fuji3:agent=SA_libvirtgp,timeout=35:agent=SA_libvirtgr,timeout=35

注意

  • rcsd.cfgファイルで設定するシャットダウンエージェントは、SA_libvirtgp、SA_libvirtgr、SA_vmchkhostの順番で設定してください。

  • rcsd.cfgファイルの内容は全ノードで同一にしてください。同一でない場合、誤動作します。

参考

/etc/opt/SMAW/SMAWsf/rcsd.cfgファイルを作成する場合、/etc/opt/SMAW/SMAWsf/rcsd.cfg.templateファイルを雛型として使用することができます。

5.1.2.5.5 シャットダウン機構の起動

全ノードでシャットダウン機構を起動または再起動します。

  1. シャットダウン機構の起動

    全ノードでシャットダウン機構が起動済みか確認してください。

    # sdtool -s

    シャットダウン機構が起動済みのノードでは、以下を実行してシャットダウン機構を再起動してください。

    # sdtool -e
    # sdtool -b

    停止と起動の間は30秒ほどの間隔を空けて操作してください。短時間で連続実行した場合、以下のメッセージがシスログに出力される場合がありますが対処は不要です。

    rcsd died abnormally. Restart it

    シャットダウン機構が起動していないノードでは、以下を実行してシャットダウン機構を起動してください。

    # sdtool -b
  2. シャットダウン機構の状態確認

    全ノードでシャットダウン機構の状態を確認してください。

    # sdtool -s

参考

sdtool -s コマンドの表示結果について
  • 初期化状態がInitFailed と表示された場合は、そのシャットダウンエージェントの初期化で問題が発生したことを示しています。

  • テスト状態にTestFailed と表示された場合は、クラスタホスト欄に表示されたノードを停止できるかどうかをエージェントがテストしている間に問題が発生したことを示しています。 このような場合には、そのエージェントが使用しているソフトウェア、ハードウェア、ネットワーク資源に何らかの問題が生じていることが考えられます。

  • ノード強制停止状態にUnknownと表示された場合は、SFがノードの停止をまだ行っていないことを示しています。
    初期化状態にUnknownと表示された場合は、SAの初期化、経路のテストをまだ行っていないことを示しています。
    テスト状態および初期化状態には、実際の状態が確認されるまで一時的にUnknown が表示されます。

  • TestFailed またはInitFailed が表示された場合は、以下のファイルを確認してください。

    • /var/log/messages

    • /etc/sysconfig/libvirt-guests

    /etc/sysconfig/libvirt-guests については、以下の設定が行われているか確認してください。

    失敗した問題が解決されSF が再起動されると、状態の表示がInitWorked またはTestWorked に変わります。

5.1.2.5.6 管理OSへの管理OS異常切替機能の設定(PRIMEQUESTのみ)

PRIMEQUESTで管理OS異常切替機能を使用する場合、iRMC非同期監視機能と連携するために、管理OSにも管理OS異常切替機能を設定します。

本設定はlibvirtシャットダウンエージェントとvmchkhostシャットダウンエージェントの設定後に実施してください。

注意

下記の3.から7.までの操作はすべての管理OS(ノード)で実行してください。

  1. 設定の情報確認

    PRIMEQUESTの管理OS異常切替機能は、iRMC非同期監視機能で管理OS異常を検知した時に、SSHでゲストOS(クラスタノード)にログインし、シャットダウン機構に管理OSの異常を通知します。

    管理OS異常切替機能の設定には以下の情報が必要なため、事前に確認してください。

    • ゲストOSのIPアドレス

    • ゲストOSのドメイン名

    • ゲストOSのクラスタ名

    • ゲストOSのCFノード名

  2. ユーザ作成(ゲストOSにroot以外でログインする場合)

    管理OS異常切替機能が、ゲストOSにroot以外のユーザでログインする場合、ログイン用のユーザを作成します。すべてのゲストOSで以下の手順を実施してください。

    (1) ログイン用のユーザを作成します。

    作成するユーザのパスワードは、以下の文字以外の7ビットASCII文字で設定してください。

        >  <  "  /  \  =  !  ?  ;  ,  &

    (2) 作成したユーザがrootユーザとしてコマンドを実行できるように、sudoコマンドを設定します。

    rootコマンドでvisudoコマンドを実行し、表示される設定ファイルに、以下の設定を記載してください。

    <(1)で作成したユーザ>    ALL=(root) NOPASSWD: ALL
  3. パスワードの暗号化

    sfcipherコマンドを実行し、ゲストOSへSSH ログインするためのユーザ(rootまたは2.で作成したユーザ)のパスワードを暗号化します。

    sfcipherコマンドの使用法については、sfcipherのマニュアルページを参照してください。

    # sfcipher -c
    Enter User's Password:
    Re-enter User's Password:
    D0860AB04E1B8FA3
  4. /etc/opt/FJSVcluster/etc/kvmguests.confの作成

    /etc/opt/FJSVcluster/etc/kvmguests.confを以下の内容で作成します。

    kvmguests.confファイルはrootユーザで作成し、パーミッションを600にしてください。

    クラスタを構成する管理OS上に複数のゲストOS(クラスタノード)が動作している場合は、本ファイルに管理OS異常切替機能が設定されたすべてのゲストOSを記載してください。

    guest-name host-cfname guest-clustername guest-cfname guest_IP guest_user guest_passwd
    • 1行に1ノード分の情報を記載してください。

    • 各項目は空白1文字で区切ってください。

    • kvmguests.conf ファイルは、すべてのクラスタノードで同一にしてください。

    guest-name        : ゲストOSのドメイン名を指定します。
    host-cfname       : “guest-name”が動作している管理OSのCFノード名を指定します。
                        “guest-name”が動作している管理OSで“cftool -l”を実行すると、そのノードのCFノード名が
                        確認できます。
    guest-clustername : ゲストOSのクラスタ名を指定します。
    ゲストOSで“cftool -c”を実行すると、そのノードのクラスタ名が確認できます。 guest-cfname : ゲストOSのCFノード名を指定します。
    ゲストOSで“cftool -l”を実行すると、そのノードのCFノード名が確認できます。
    guest_IP
    : ゲストOSのIPアドレスを指定します。
    指定可能なアドレス形式は、IPv4アドレスおよびIPv6アドレスです。
    IPv6のリンクローカルアドレスは使用できません。
    guest_user
    : ゲストOSへSSH ログインするためのユーザを指定します。 rootまたは2.で作成したユーザを指定します。
    guest_passwd
    : ゲストOSへログインするためのユーザのパスワードを指定します。
    3.で暗号化したパスワードを指定します。

    例)2ノード構成のゲストOS間でクラスタシステムが2セット構築されている場合

    guest11 cfhost1 cluster1 cfguest11  10.20.30.50 user1 D0860AB04E1B8FA3
    guest12 cfhost2 cluster1 cfguest12  10.20.30.51 user2 D0860AB04E1B8FA3
    guest21 cfhost1 cluster2 cfguest21  10.20.30.60 user3 D0860AB04E1B8FA3
    guest22 cfhost2 cluster2 cfguest12  10.20.30.61 user4 D0860AB04E1B8FA3
  5. ゲストOSへのログイン確認

    PRIMEQUESTの管理OS異常切替機能は、ゲストOSへSSHでアクセスするため、SSH初回時のユーザ問い合わせ(RSA 鍵の生成)を済ませておく必要があります。

    /etc/opt/FJSVcluster/etc/kvmguests.conf に指定したすべてのゲストOS(ノード)に対して、同ファイルに指定したユーザでSSH接続を行い、ログインできることを確認してください。

    コマンドの実行は、管理OSのrootユーザで行ってください。

    # ssh -l user1 XXX.XXX.XXX.XXX
    The authenticity of host 'XXX.XXX.XXX.XXX (XXX.XXX.XXX.XXX)' can't be established.
    RSA key fingerprint is xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx.
    Are you sure you want to continue connecting (yes/no)? yes ←yes と入力
  6. /etc/opt/FJSVcluster/etc/kvmguests.confの設定確認

    すべての管理OS上でsfkvmtoolコマンドを実行し、/etc/opt/FJSVcluster/etc/kvmguests.confの設定に誤りが無いか確認します。

    設定に誤りが無い場合、以下のメッセージが出力されます。

    # /opt/SMAW/SMAWsf/bin/sfkvmtool -c
    NOTICE: The check of configuration file succeeded.

    上記以外のメッセージが出力された場合、/etc/opt/FJSVcluster/etc/kvmguests.confの設定を見直してください。

  7. シャットダウン機構の起動

    全ノードでシャットダウン機構が起動済みか確認してください。

    # sdtool -s

    シャットダウン機構が起動済みのノードでは、以下を実行してシャットダウン機構を再起動してください。

    # sdtool -e
    # sdtool -b

    シャットダウン機構が起動していないノードでは、以下を実行してシャットダウン機構を起動してください。

    # sdtool -b
5.1.2.5.7 クラスタノード強制停止テスト

シャットダウン機構の設定後に、正しいノードが強制停止できることを確認するため、クラスタ強制停止テストを実施します。

クラスタノード強制停止の詳細については、“1.4 テスト”を参照してください。

注意

SA_libvirtgpによるノード(ゲストOS)強制停止後、ゲストOSが一時停止状態のままになることがあります(管理OSの/var/crash配下に空き容量がない場合など)。このような場合、以下の対処を行ってください。

  1. 一時停止状態のゲストOSが存在する管理OSにログインします。

  2. 一時停止状態のゲストOSを強制停止します。

    # virsh destroy ゲストドメイン名
  3. 2.で強制停止したゲストドメインが停止状態("shut off"または"シャットオフ")であることを確認します。

    # virsh domstate ゲストドメイン名
  4. 2.で強制停止させたゲストOSを起動します。

    # virsh start ゲストドメイン名