7. その他の設定情報¶
本章では、その他の監視設定や通報設定に関する情報について記載します。
本章で説明する項目は以下の通りです。
7.1. シャットダウン監視¶
7.1.1. シャットダウン監視とは?¶
7.1.2. シャットダウン監視を表示/変更するには¶
- [常に実行する]シャットダウン監視をします。ハートビートタイムアウト (「5. ハートビートリソースの詳細」を参照してください。) を、アプリケーションの終了時間を含めて OS がシャットダウンする時間より長い時間に設定する必要があります。
- [グループ非活性処理に失敗した場合のみ実行する]グループの非活性処理に失敗した場合のみシャットダウン監視をします。ハートビートタイムアウト (「5. ハートビートリソースの詳細」を参照してください。) を、アプリケーションの終了時間を含めて OS がシャットダウンする時間より長い時間に設定する必要があります。共有ディスク、ミラーディスク、ハイブリッドディスクを使用する場合は [グループ非活性処理に失敗した場合のみ実行する] を選択することを推奨します。
- [実行しない]シャットダウン監視をしません。
7.1.3. シャットダウン監視の方法¶
シャットダウン監視の監視方法は以下のとおりです。
- 監視方法 softdog監視方法が softdog の場合、softdog ドライバを使ってタイマを設定します。
- 監視方法 ipmi監視方法が ipmi の場合、OpenIPMI を使ってタイマを設定します。OpenIPMI がインストールされていない場合、インストールする必要があります。ipmi については「ユーザ空間モニタリソースを理解する」を参照してください。
- 監視方法 keepalive監視方法が keepalive の場合、CLUSTERPRO の clpkhb ドライバと clpka ドライバを使ってタイマを設定します。
注釈
clpkhb ドライバ、clpka ドライバが動作するディストリビューション、kernel バージョンについては必ず『スタートアップガイド』の「CLUSTERPRO の動作環境」 - 「ソフトウェア」 - 「動作可能なディストリビューションと kernel」で確認してください。ディストリビュータがリリースするセキュリティパッチを既に運用中のクラスタへ適用する場合(kernelバージョンが変わる場合) にも確認してください。 - 監視方法 ipmi(High-End Server Option)監視方法が ipmi(High-End Server Option) の場合、ipmiドライバを使用します。
7.1.4. SIGTERM の設定¶
監視方法 softdog
シャットダウン成功時 (監視方法が softdog、SIGTERM が有効の場合)
コマンド(clpstdn、clpdown、shutdown、rebootなど)を発行します。
シャットダウン監視を開始します。
OSシャットダウンが開始されます。
シャットダウン処理の途中でOSがSIGTERMを発行すると、SIGTERMが有効になっているため、シャットダウン監視が終了します。
OSシャットダウンが成功します。
(d)~(e)の間、ストールを検出することができません。
シャットダウン成功時 (監視方法が softdog、SIGTERM が有効でない場合)
コマンド(clpstdn、clpdown、shutdown、rebootなど)を発行します。
シャットダウン監視を開始します。
OSシャットダウンが開始されます。
シャットダウン処理の途中でOSがSIGTERMを発行しても、SIGTERMが無効になっているため、シャットダウン監視はこの時点で終了しません。
- シャットダウン監視は終了し、softdogドライバがアンロードされます。OSシャットダウンが成功します。
監視方法 ipmi / ipmi(High-End Server Option)
シャットダウン成功時 (監視方法が ipmi, SIGTERM が有効の場合)
コマンド(clpstdn、clpdown、shutdown、rebootなど)を発行します。
シャットダウン監視を開始します。
OSシャットダウンが開始されます。
シャットダウン処理の途中でOSがSIGTERMを発行すると、SIGTERMが有効になっているため、シャットダウン監視が終了します。
OSシャットダウンが成功します。
(d)~(e)の間、ストールを検出することができません。
シャットダウン成功時 (監視方法が ipmi、SIGTERM が有効でない場合)
コマンド(clpstdn、clpdown、shutdown、rebootなど)を発行します。
シャットダウン監視を開始します。
OSシャットダウンが開始されます。
シャットダウン処理の途中でOSがSIGTERMを発行しても、SIGTERMが無効になっているため、シャットダウン監視はこの時点で終了しません。
OSシャットダウンが成功します。
リセットが発生します。
ストールが発生しないで正常にシャットダウンが完了した場合も ipmi によってリセットが発生します。
ソフトウェア電源 OFF が可能なサーバではリセットは発生しません。
監視方法が ipmi の場合、SIGTERM を有効にする設定を推奨します。
OS シャットダウンでストールが発生した場合
シャットダウンストール検出時
コマンド(clpstdn、clpdown、shutdown、rebootなど)を発行します。
シャットダウン監視を開始します。
OSシャットダウンが開始されます。
OSシャットダウン途中でストールが発生します。
リセットが発生します。
7.1.5. ハートビートタイムアウトを使用する¶
シャットダウン監視のタイムアウト値をハートビートタイムアウト値と連動させます。
7.1.6. タイムアウト¶
7.2. bonding¶
7.2.1. フローティング IP リソース¶
注意事項
bonding モードに "active-backup" を指定すると、スレーブインターフェイスの切り替えの際、一時的に通信が途絶えることがあります。
bonding 設定例
bonding の設定を行った場合、環境によっては bonding のマスターインターフェースに設定したIPアドレスがスレーブインターフェースにも表示される場合があります。
上記のような環境で bonding のマスターインターフェースにフローティングIPアドレスを設定する場合、[プロパティ] の [詳細] タブで以下のように IP アドレスと bonding デバイスを "%" で区切って指定してください。
例) デバイス名 bond0、IP アドレス 192.168.1.3 を設定する場合
注釈
インタコネクトの IP アドレス設定には、IP アドレスのみ設定してください。
bonding 上にフローティング IP リソースを使用する設定例を示します。
Device |
Slave |
Mode |
---|---|---|
bond0 |
eth0
eth1
|
active-backup(1)
balance-tlb(5)
|
bond0 |
eth0
eth1
|
active-backup(1)
balance-tlb(5)
|
図の Server 1、Server 2では スレーブインターフェース eth0、eth1 をbondingでまとめて、マスターインタフェース bond0を構成しています。 また、Server1、Server2へアクセスするため、FIPリソースにIPアドレスが設定されています。 クラスタサーバと同一LAN上のホスト、リモートLAN上のホスト、ともにFIPを使用してクラスタサーバと接続することができます。 ルータにおいて、FIPを使用するための特別な設定は必要ありません。
FIPリソースIPアドレス: 192.168.1.3%bond0
Server 1 での ifconfig によるフローティング IPリソースの活性状態は以下のようになります。(bonding mode は、"balance-tlb(5)" を指定。)
$ ifconfig
bond0 Link encap:Ethernet HWaddr 00:00:01:02:03:04
inet addr:192.168.1.1 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MASTER MULTICAST MTU:1500 Metric:1
RX packets:6807 errors:0 dropped:0 overruns:0 frame:0
TX packets:2970 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:670032 (654.3 Kb) TX bytes:189616 (185.1 Kb)
bond0:0 Link encap:Ethernet HWaddr 00:00:01:02:03:04
inet addr:192.168.1.3 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MASTER MULTICAST MTU:1500 Metric:1
RX packets:236 errors:0 dropped:0 overruns:0 frame:0
TX packets:2239 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:78522 (76.6 Kb) TX bytes:205590 (200.7 Kb)
eth0 Link encap:Ethernet HWaddr 00:00:01:02:03:04
UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 Metric:1
RX packets:3434 errors:0 dropped:0 overruns:0 frame:0
TX packets:1494 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:332303 (324.5 Kb) TX bytes:94113 (91.9 Kb)
Interrupt:18 Base address:0x2800 Memory:fc041000-fc041038
eth1 Link encap:Ethernet HWaddr 00:00:05:06:07:08
UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 Metric:1
RX packets:215 errors:0 dropped:0 overruns:0 frame:0
TX packets:1627 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:77162 (75.3 Kb) TX bytes:141394 (138.0 Kb)
Interrupt:19 Base address:0x2840 Memory:fc042000-fc042038
eth2 Link encap:Ethernet HWaddr 00:00:09:10:11:12
inet addr:192.168.2.1 Bcast:192.168.2.255 Mask: 255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:47 errors:0 dropped:0 overruns:0 frame:0
TX packets:1525 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:2820 (2.7 Kb) TX bytes:110113 (107.5 Kb)
Interrupt:24 Base address:0x3000 Memory:fc500000-fc500038
上記において、"bond0" のブロックは eth0、eth1 を bonding 化したデバイスの情報です。 パブリックLAN、2番目のインタコネクトに使用するデバイスです。
"bond0:0" のブロックは、"bond0" 上で活性したフローティングIPアドレスの情報を示しています。
"eth2" は、1番目のインタコネクトに使用するデバイスです。
7.2.2. ミラーディスクコネクト¶
注意事項
bonding 上でミラーディスクコネクトを使用すると、スレーブインターフェイスの切り替えの際、一時的に通信が途絶えます。ミラーリング処理のタイミングによっては、bonding の切り替えが完了したあとにミラー復帰が実行されることがあります。
bonding 設定例
bonding 上にミラーディスクコネクトを使用する設定例を示します。
Cluster Server |
Device |
Slave |
Mode |
---|---|---|---|
Server 1 |
bond0 |
eth1
eth2
|
balance-rr(0)
active-backup(1)
balance-tlb(5)
|
Server 2 |
bond0 |
eth1
eth2
|
balance-rr(0)
active-backup(1)
balance-tlb(5)
|
7.3. 強制停止機能¶
7.3.1. 強制停止機能とは?¶
サーバのダウンを認識したときに残りのサーバ (正常なサーバ) からダウンしたサーバを強制的に停止させる機能です。
物理マシンは、IPMI の機能を使用して停止させます。
仮想マシンのゲスト OSは、VMware vCenter Serverの機能を使用して停止させます。
上記の他に、ダウンしたサーバを停止させる処理を記述した任意のスクリプトを実行することもできます。詳細は「7. その他の設定情報」の「強制停止スクリプト」を参照してください。
7.3.2. 強制停止実行条件¶
以下の場合には強制停止は実行しません。
サーバダウンする前にフェイルオーバグループが正常に停止した場合
[clpdown] コマンド、OS のシャットダウンコマンド、Cluster WebUI でサーバをシャットダウンし、フェイルオーバグループが正常に停止した場合
[clpcl] コマンド、Cluster WebUI でクラスタを停止し、フェイルオーバグループが正常に停止した場合
- サーバがダウンし、ダウンしたサーバから他のサーバにフェイルオーバさせるフェイルオーバグループが無い場合。(ダウンしたサーバでフェイルオーバグループが活性していない場合も含みます。)
以下の場合には強制停止を実行します。
サーバがダウンし、ダウンしたサーバから他のサーバにフェイルオーバさせるフェイルオーバグループが有る場合。
7.3.3. 強制停止で使用するコマンド¶
物理マシンの強制停止には、[ipmitool] コマンドを使用します。
コマンドがインストールされていない場合には本機能は使用できません。
コマンド実行時の下記のオプション値をサーバプロパティの [BMC] タブに設定してください。
[ipmitool] コマンドのオプション |
サーバプロパティの[BMC] タブの設定項目 |
---|---|
-H ip_address |
IPアドレス |
-U username |
ユーザ名 |
-P password |
パスワード |
サーバプロパティのBMCタブの[強制停止アクション]にコマンドラインを設定しない場合は以下のコマンドが実行されます。
強制停止アクション |
コマンド |
---|---|
BMC パワーオフ |
ipmitool -H ip_address -U username -P password power off |
BMC リセット |
ipmitool -H ip_address -U username -P password power reset |
BMC パワーサイクル |
ipmitool -H ip_address -U username -P password power cycle |
BMC NMI |
ipmitool -H ip_address -U username -P password power diag |
上記コマンドに失敗した場合以下のコマンドを実行します。
強制停止アクション |
コマンド |
---|---|
BMC パワーオフ |
ipmitool -H ip_address -I lanplus -U username -P password power off |
BMC リセット |
ipmitool -H ip_address -I lanplus -U username -P password power reset |
BMC パワーサイクル |
ipmitool -H ip_address -I lanplus -U username -P password power cycle |
BMC NMI |
ipmitool -H ip_address -I lanplus -U username -P password power diag |
アクションで使用するオプションについては、「4. モニタリソースの詳細」 - 「モニタリソースとは?」 - 「使用している ipmi コマンド」を参照してください。
仮想マシンのゲスト OSの強制停止には、VMware vSphere Command Line Interface(vCLI) の[vmcontrol] コマンドを使用します。VMware vSphere Command Line Interface(vCLI)がインストールされていない場合には本機能は使用できません。
コマンド実行時の下記のオプション値を設定してください。
[vmcontrol] コマンドのオプション |
クラスタプロパティの拡張タブの [仮想マシン強制停止設定] の設定項目 |
サーバプロパティの情報タブの [仮想マシン名の入力] の設定項目 |
---|---|---|
--server ip_address |
IP アドレス |
- |
--username username |
ユーザ名 |
- |
--password password |
パスワード |
- |
--vmname virtualmachine |
- |
仮想マシン名 |
アクションで使用するオプションについては、以下のとおりです。
コマンド |
オプション |
概要 |
---|---|---|
vmcontrol |
--operation poweroff |
仮想マシンのゲスト OS の電源をオフにします。 |
7.3.4. 強制停止で使用するコマンドを指定するには¶
物理マシンのサーバの強制停止では、サーバプロパティのBMCタブの[強制停止アクション]にて強制停止で使用する任意のコマンドラインを指定することも可能です。
コマンドラインを指定する際は、以下の置換文字列を使用することでサーバプロパティの設定値をコマンドラインに反映することができます。
置換文字列名 |
置換対象
(サーバプロパティのBMCタブの設定項目)
|
置換対象
(クラスタプロパティの拡張タブの強制停止アクションの設定項目)
|
---|---|---|
CLP_BMC_HOST |
IPアドレス |
- |
CLP_BMC_USER |
ユーザ名 |
- |
CLP_BMC_PASSWORD |
パスワード |
- |
CLP_BMC_ACTION |
- |
強制停止アクション |
強制停止アクションの置換文字列(CLP_BMC_ACTION)で置換される文字は以下のとおりです。
強制停止アクション |
置換文字列で変換される文字 |
---|---|
BMC パワーオフ |
off |
BMC リセット |
reset |
BMC パワーサイクル |
cycle |
BMC NMI |
diag |
注釈
強制停止アクションは置換文字列(CLP_BMC_ACTION)の有無で実行するアクションが異なります。
- コマンドラインにCLP_BMC_ACTIONが含まれる場合クラスタプロパティの強制停止アクションで選択したアクションを実行します。
- コマンドラインにCLP_BMC_ACTIONが含まれない場合クラスタプロパティの強制停止アクションで選択したアクションは反映されません。
置換文字列を使用した強制停止アクションのコマンド指定例
ipmitool -H CLP_BMC_HOST -U CLP_BMC_USER -P CLP_BMC_PASSWORD power CLP_BMC_ACTION
7.3.5. 強制停止機能の詳細を表示/変更するには¶
強制停止機能の設定については本ガイドの「2. パラメータの詳細」の「クラスタプロパティ - 拡張タブ」、「サーバプロパティ - 情報タブ」、「サーバプロパティ - BMC タブ」を参照してください。
7.3.6. 強制停止機能の注意事項¶
- 仮想マシンのゲストOSの強制停止についてパワーオフ動作のみが実行可能です。また、VMWare vCenter Serverとの通信が行えない場合、本機能は使用できません。
- ipmitoolの注意事項について
- 強制停止の影響点について強制停止機能を使用すると OS やサーバの状態によらず強制的にパワーオフ、リセット、パワーサイクル、NMI を行うため以下の機能が影響を受けます。
- ダンプ採取ダンプ採取中であることが認識できないので、ダンプ採取の処理中であってもパワーオフ、リセット、パワーサイクルが発生しダンプ採取が完了しません
- ハートビートタイムアウト以内の電源オン操作ハートビートタイムアウト時間内に保守などの目的でサーバの電源を再度オンにした場合、ハートビートタイムアウト経過後にパワーオフ、リセット、パワーサイクル、NMIが発生することがあります。
- BMC のネットワーク設定についてBMC のマネージメント用 LAN ポートの IP アドレスと OS が使用する IP アドレスの間で通信ができるように設定をしてください。BMC のマネージメント用のネットワークが 閉塞している環境では本機能は使用できません。BMC のマネージメント用 LAN ポートに設定した IP アドレスと同じ IP アドレスをサーバプロパティの [BMC] タブに設定してください。BMC のマネージメント用 LAN ポートの IP アドレスなどの設定方法はサーバのマニュアルなどを参照してください。
7.4. 強制停止スクリプト¶
7.4.1. 強制停止スクリプトとは?¶
7.4.2. 強制停止スクリプト実行条件¶
以下の場合には強制停止スクリプトは実行しません。
サーバダウンする前にフェイルオーバグループが正常に停止した場合
[clpdown] コマンド、Cluster WebUI でサーバをシャットダウンし、フェイルオーバ グループが正常に停止した場合
[clpcl] コマンド、Cluster WebUI でクラスタを停止し、フェイルオーバグループが正常に停止した場合
- サーバがダウンし、ダウンしたサーバから他のサーバにフェイルオーバさせるフェイルオーバグループが無い場合。(ダウンしたサーバでフェイルオーバグループが活性していない場合も含みます。)
以下の場合には強制停止スクリプトを実行します。
サーバがダウンし、ダウンしたサーバから他のサーバにフェイルオーバさせるフェイルオーバグループが有る場合。
7.4.3. 強制停止スクリプトの記述について¶
強制停止スクリプトで使用する環境変数
CLUSTERPROはスクリプトを実行する場合に、どのサーバがダウンしたかなどの情報を環境変数にセットします。
スクリプト内で下図の環境変数を分岐条件として、システム運用にあった処理内容を記述できます。
環境変数 |
環境変数の値 |
意味 |
---|---|---|
CLP_SERVER_DOWN
・・・ダウンサーバ名
|
サーバ名 |
ダウンしたサーバ名を示します。 |
CLP_SERVER_LOCAL
・・・ローカルサーバ名
|
サーバ名 |
スクリプトを実行するサーバ名を示します。 |
CLP_VMNAME
・・・仮想マシン名
|
仮想マシン名 |
サーバプロパティで設定した仮想マシン名を示します。 |
CLP_DATACENTER_NAME
・・・データセンタ名
|
データセンタ名 |
サーバプロパティで設定したデータセンタ名を示します。 |
CLP_VCENTER_HOST
・・・vCenterのホスト名
|
ホスト名 |
仮想マシン強制停止設定で設定したホスト名を示します。 |
CLP_VCENTER_USER
・・・vCenterのユーザ名
|
ユーザ名 |
仮想マシン強制停止設定で設定したユーザ名を示します。 |
CLP_VCENTER_PASSWORD
・・・vCenterのパスワード
|
パスワード |
仮想マシン強制停止設定で設定したパスワードを示します。 |
CLP_BMC_HOST
・・・BMCのIPアドレス
|
IPアドレス |
サーバプロパティで設定したIPアドレスを示します。 |
CLP_BMC_USER
・・・BMCのユーザ名
|
ユーザ名 |
サーバプロパティで設定したユーザ名を示します。 |
CLP_BMC_PASSWORD
・・・BMCのパスワード
|
パスワード |
サーバプロパティで設定したパスワードを示します。 |
強制停止スクリプトの戻り値
スクリプトが正常終了する時には戻り値として 0 を返却してください。
7.4.4. 強制停止スクリプトの詳細を表示/変更するには¶
強制停止スクリプトの設定については、本ガイドの「2. パラメータの詳細」 - 「クラスタプロパティ」 - 「拡張タブ」を参照してください。
7.4.5. 強制停止スクリプトの注意事項¶
サーバを停止させる処理はお客様にて用意し、強制停止スクリプトに記述してください。
強制停止スクリプトを設定する場合は、本ガイドの「7. その他の設定情報」の「強制停止機能」 - 「強制停止機能の注意事項」 - 「強制停止の影響点について」 を参照してください。
強制停止機能と強制停止スクリプトの双方を設定した場合、下記の順序で実行されます。
強制停止機能
強制停止スクリプト
7.5. 筐体 ID ランプ連携¶
7.5.1. 筐体 ID ランプ連携とは¶
サーバのダウンを認識したときに 残りのサーバ (正常なサーバ) が IPMI の機能を使用し、ダウンしたサーバの筐体 ID ランプの点滅で通知する機能です。
7.5.2. 筐体 ID ランプの点滅条件¶
以下の場合には筐体 ID ランプは点滅しません。
サーバステータス以外のステータスが異常になった場合
クラスタシャットダウンをした場合
- クラスタ内の全てのサーバがダウンした場合ダウンするタイミングが同時でない場合は最長 250 秒間点滅し、最終的には全てのサーバの筐体 ID ランプが消灯します
異常となったサーバの BMC と正常なサーバが通信できない場合
クラスタ内に正常なサーバが残っているが、CLUSTERPRO が停止している場合
以下の場合に筐体 ID ランプが点滅します。(上記の点滅しない条件と重複する場合には点滅しない条件が優先されます)
何らかの異常によりクラスタ内の一部のサーバがダウンした場合
クラスタ内の一部のサーバを OS の [shutdown] コマンドによりシャットダウンさせた場合
クラスタ内の一部のサーバを [clpdown] コマンドまたは Cluster WebUI からダウンさせた場合
クラスタ内の一部のサーバで [clpcl] コマンドまたは Cluster WebUI によりCLUSTERPRO を停止した場合
クラスタ内の一部のサーバでクラスタサービスの自動起動を OFFにしてOS を起動した場合
以下の場合には筐体 ID ランプは点滅状態から消灯します。
クラスタ内に正常なサーバが残っており、異常なサーバのサーバステータスが正常に戻った場合
7.5.3. クラスタが停止する場合に点滅している筐体 ID ランプの挙動について¶
クラスタが停止するときに、クラスタ内のサーバの筐体 ID ランプが点滅状態になっている場合には、最長で 250 秒間点滅が継続することがあります。
7.5.4. 筐体 ID ランプ連携で使用するコマンド¶
[ipmitool] コマンドを使用します。
コマンドがインストールされていない場合には本機能は使用できません。
コマンド実行時の下記のオプション値をサーバプロパティの BMC タブに設定してください。
[ipmitool] コマンドの |
サーバプロパティの |
---|---|
オプション |
BMC タブの設定項目 |
-H ip_address |
IP アドレス |
-U username |
ユーザ名 |
-P password |
パスワード |
サーバプロパティのBMCタブの筐体IDランプ[点滅]、[消灯]にコマンドラインを設定しない場合は以下のコマンドが実行されます。
筐体IDランプ |
コマンド |
---|---|
点滅 |
ipmitool -H ip_address -U username -P password chassis identify 250 |
消灯 |
ipmitool -H ip_address -U username -P password chassis identify 0 |
上記コマンドに失敗した場合以下のコマンドを実行します。
筐体IDランプ |
コマンド |
---|---|
点滅 |
ipmitool -H ip_address -I lanplus -U username -P password chassis identify 250 |
消灯 |
ipmitool -H ip_address -I lanplus -U username -P password chassis identify 0 |
7.5.5. 筐体 ID ランプ連携で使用するコマンドを指定するには¶
筐体 ID ランプ連携では、サーバプロパティのBMCタブの筐体 ID ランプ[点滅]、[消灯]にて筐体 ID ランプ連携で使用する任意のコマンドラインを指定することも可能です。
コマンドラインを指定する際は、以下の置換文字列を使用することでサーバプロパティの設定値をコマンドラインに反映することができます。
置換文字列名 |
置換対象(サーバプロパティのBMCタブの設定項目) |
---|---|
CLP_BMC_HOST |
IPアドレス |
CLP_BMC_USER |
ユーザ名 |
CLP_BMC_PASSWORD |
パスワード |
置換文字列を使用した筐体 ID ランプ点滅コマンドの指定例
ipmitool -H CLP_BMC_HOST -U CLP_BMC_USER -P CLP_BMC_PASSWORD chassis identify 250
7.5.6. 筐体 ID ランプ連携 の詳細を表示/変更するには¶
筐体 ID ランプ連携の設定については本ガイドの「2. パラメータの詳細」の「クラスタプロパティ - アラートサービスタブ」、「サーバプロパティ - BMC タブ」を参照してください。
7.5.7. 筐体 ID ランプ連携に関する注意事項¶
- ipmitoolの注意事項について
- BMC のネットワーク設定についてBMC のマネージメント用 LAN ポートの IP アドレスと OS が使用する IP アドレスの間で通信ができるように設定をしてください。BMC のマネージメント用のネットワークが閉塞している環境では本機能は使用できません。BMC のマネージメント用 LAN ポートに設定した IP アドレスと同じ IP アドレスをサーバプロパティの [BMC] タブに設定してください。BMC のマネージメント用 LAN ポートの IP アドレスなどの設定方法はサーバのマニュアルなどを参照してください。
7.6. アラートサービス¶
7.6.1. アラートサービスとは?¶
CLUSTERPRO アラートサービスは、CLUSTERPRO 上の業務の異常を遠隔地にいる管理者に通知する機能です。
通知方法は、以下の 3 つがあります。それぞれの通知方法によって、通知が行われる事象がことなります。
- Eメール通報Cluster WebUI のアラートメッセージが表示されるタイミングで、アラートの内容を メール通報します。
- ネットワーク警告灯通報サーバ起動時とサーバダウン時にネットワーク警告灯通報しサーバの状態を示します。サーバが正常に終了するときは、ネットワーク警告灯を消灯します。メール通報とネットワーク警告灯通報は、お互いが独立して動作します。
- SNMP トラップ送信Cluster WebUI のアラートメッセージが表示されるタイミングで、アラートの内容をSNMP トラップ送信します。
Eメール通報を行うので、管理端末から離れている場合でも、障害発生をいち早く検知 することができます。
メール送信先を携帯電話にすることも可能です。
ネットワーク警告灯の点灯により、障害を視覚的に判断することができます。
ネットワーク警告灯の音声ファイルの再生により、障害を音声で判断することも可能です。
通報先に設定したサーバに障害の内容をSNMP トラップ送信することができます。
Eメール通報では下記のフォーマットでアラートの内容をメール通報します。
件名
CLUSTERPRO
本文
Message: Server [ダウンしたサーバ名] has been stopped. Type: nm ID: 2 Host: [メール送信元 サーバ名] Date: [送信タイムスタンプ]
7.6.2. アラートサービスに関する注意事項¶
Eメール通報とネットワーク警告灯通報機能を使用するには CLUSTERPRO X Alert Service 4.3 for Linux が必要です。
本機能は、障害発生の第一報を通報することが目的であり、CLUSTERPRO 上の障害の調査や原因究明を行うものではありません。障害が発生した場合、その詳細な原因は、CLUSTERPRO のログや、syslog など他の手段で原因を判断する必要があります。
Linux でネットワーク警告灯機能を使用する際は、rsh パッケージのインストールが必要な場合があります。
7.6.3. メール通報の動作¶
Cluster WebUI のアラートメッセージと同じ内容をメール通報します。どのアラートメッセージがメール通報されるかは、本ガイドの「10. エラーメッセージ一覧」の「syslog、アラート、メール通報、SNMP トラップメッセージ、Message Topic」を参照してください。
メール通報したいアラートを変更することもできます。詳細は、本ガイドの「2. パラメータの詳細」 - 「クラスタプロパティ」 - 「アラートサービスタブ」を参照してください。
7.6.4. ネットワーク警告灯通報の動作¶
ネットワーク警告灯は、以下の様な動作を行います。
- サーバ起動時サーバが正常に起動すると、緑を点灯します。
- サーバ終了時サーバが正常に終了すると、消灯します。
- サーバダウン時サーバがダウンしたとき、赤を点滅します。通報は、正常なサーバがほかの異常なサーバの状態を検出して送信されるため、全てのサーバがダウンした場合、最後にダウンしたサーバのネットワーク警告灯には障害を通知することができません。
一旦点灯または点滅したネットワーク警告灯は、クラスタシャットダウン時以外は消灯しませんので、消灯させたい場合は、[clplamp] コマンドを実行してください。[clplamp] コマンドについては本ガイドの「8.2. CLUSTERPRO コマンド一覧」の「ネットワーク警告灯を消灯する (clplamp コマンド)」を参照してください。
音声ファイル再生に対応したネットワーク警告灯 (当社指定品) の場合、設定により音声ファイルの再生も点灯/消灯と連動して行うことができます。
7.6.5. SNMP トラップ送信の動作¶
Cluster WebUI のアラートメッセージと同じ内容を SNMP トラップ送信します。どのアラート メッセージが SNMP トラップ送信されるかは、本ガイドの「10. エラーメッセージ一覧」の「syslog、アラート、メール通報、SNMP トラップメッセージ、Message Topic」を参照してください。
SNMP トラップ送信したいアラートを変更することもできます。詳細は、本ガイドの「2. パラメータの詳細」 - 「クラスタプロパティ」 - 「アラートサービスタブ」を参照してください。
SNMP トラップの詳細については、「SNMP トラップ送信とは?」を参照してください。
7.7. SNMP 連携¶
7.7.1. SNMP 連携とは?¶
SNMP 連携は、CLUSTERPRO MIB 定義を元に CLUSTERPRO からの SNMP トラップ送信、SNMP マネージャからの SNMP による情報取得 を可能にする機能です。
7.7.2. CLUSTERPRO MIB 定義とは?¶
SNMP連携により送信取得される情報は、MIB 定義ファイルにまとめられています。
後述する SNMP トラップ送信、および SNMP による情報取得の機能を使用する場合、MIB 定義ファイルが必要になります。
SNMP マネージャでCLUSTERPRO からの SNMP トラップを受信したい、あるいは、SNMP マネージャからクラスタの状態を取得したいといったような場合、SNMP マネージャへ CLUSTERPRO MIB 定義ファイル を組み込んでください。
SNMP マネージャへMIB 定義ファイルを組み込む方法については、各SNMP マネージャのマニュアルを参照してください。
CLUSTERPRO MIB 定義ファイルはCLUSTERPRO X CD-ROM の以下に配置しています。
<CLUSTERPRO X CD-ROM>Common<バージョン番号>commonmib
各MIB 定義ファイルには以下のような意味があります。
No. |
MIB 定義ファイル |
説明 |
---|---|---|
NEC-CLUSTER-SMI.mib |
CLUSTERPRO MIB ツリーのルートパスが定義されています。 |
|
NEC-CLUSTER-EVENT-MIB.mib |
CLUSTERPRO の SNMP トラップ送信機能に関連するトラップ定義や MIB が定義されています。 |
|
NEC-CLUSTER-MANAGEMENT-MIB.mib |
CLUSTERPRO の 以下の情報に関連するMIB が定義されています。
|
SNMP マネージャに組み込むファイルの組み合わせにより、利用できる機能が変わります。
CLUSTERPRO からの SNMP トラップを受信する場合
1. NEC-CLUSTER-SMI.mib2. NEC-CLUSTER-EVENT-MIB.mib
SNMP による情報取得を行う場合
1. NEC-CLUSTER-SMI.mib3. NEC-CLUSTER-MANAGEMENT-MIB.mib
7.7.3. SNMP トラップ送信とは?¶
SNMP トラップ送信は、Cluster WebUI のアラートメッセージと同じ内容を SNMP マネージャに送信する機能です。
トラップを送信するためには、別途 SNMP トラップの送信先の設定が必要です。本ガイドの「2. パラメータの詳細」 - 「クラスタプロパティ」 - 「アラートサービスタブ」より「SNMP トラップ 送信先設定」を参照して設定してください。
送信されるトラップはNEC-CLUSTER-EVENT-MIB で定義されています。
NEC-CLUSTER-EVENT-MIBで定義されている各 MIB オブジェクトを以下に示します。
clusterEventNotificationsグループ
送信されるトラップを定義したグループです。ここで定義されている各 MIB オブジェクトは、以下のような意味があります。
No. |
SNMP TRAP OID |
説明 |
---|---|---|
clusterEventInformation |
情報 レベルのアラートを表すトラップです。
clusterEvent グループの MIB オブジェクトを添付しています。
|
|
clusterEventWarning |
警告 レベルのアラートを表すトラップです。
clusterEvent グループの MIB オブジェクトを添付しています。
|
|
clusterEventError |
異常 レベルのアラートを表すトラップです。
clusterEvent グループの MIB オブジェクトを添付しています。
|
clusterEventグループ
トラップに添付される情報が定義されたグループです。ここで定義されている各 MIB オブジェクトは、以下のような意味があります。
No. |
SNMP OID |
説明 |
---|---|---|
clusterEventMessage |
アラートメッセージを表します。 |
|
clusterEventID |
イベントID を表します。 |
|
clusterEventDateTime |
アラートの発信時刻を表します。 |
|
clusterEventServerName |
アラートの発信元サーバを表します。 |
|
clusterEventModuleName |
アラートの発信元モジュールを表します。 |
7.7.4. SNMP による情報取得とは?¶
SNMPプロトコルを利用して CLUSTERPRO の構成情報、ステータス情報の一部を取得することが可能です。ただし、CLUSTERPRO 自身は SNMP エージェントの機能を同梱していません。別途、SNMP エージェントとして Net-SNMP snmpd デーモン が必要になります。
SNMP エージェントとは?
SNMPマネージャ(ネットワーク管理ソフト) からの情報取得要求(GetRequest, GetNextRequest) に対して、各種構成情報、ステータス情報を応答(GetResponse) を返す機能です。
注釈
SNMP による情報取得機能を使用する場合、必ず『インストール&設定ガイド』の「SNMP 連携機能を設定するには」を実行してください。
7.7.5. SNMP 連携で取得できるMIB について¶
SNMP 連携機能で取得できる MIB は、NEC-CLUSTER-MANAGEMENT-MIB で定義されています。
NEC-CLUSTER-MANAGEMENT-MIB で定義されている各 MIB オブジェクトを以下に示します。
clusterGeneral グループ
クラスタ関連の情報が取得できるグループです。ここで定義されている各 MIB オブジェクトは、以下のような意味があります。
No. |
SNMP OID |
説明 |
---|---|---|
clusterName |
クラスタ名を表します。 |
|
clusterComment |
クラスタのコメントを表します。 |
|
clusterStatus |
現在のクラスタのステータスを表します。 MIB の取得値と Cluster WebUI のステータスの対応は以下になります。 MIB の値 ステータス
---------------------
normal [正常]
caution [警告]
error [異常]
unknown -
|
clusterServerグループ
サーバ関連の情報が取得できるグループです。clusterServerTable 取得時のインデックスはサーバ優先度順に並びます。ここで定義されている各 MIB オブジェクトは、以下のような意味があります。
No. |
SNMP OID |
説明 |
---|---|---|
clusterServerLocalServerIndex |
現在のSNMP 情報取得要求を受けたサーバのインデックス(clusterServerIndex) を表します。 |
|
clusterServerTable |
サーバの情報テーブルを表します。 |
|
clusterServerEntry |
サーバ情報のリストを表します。 このリストのインデックスは clusterServerIndex です。 |
|
clusterServerIndex |
各サーバを一意に識別するインデックスを表します。 |
|
clusterServerName |
サーバ名を表します。 |
|
clusterServerComment |
サーバのコメントを表します。 |
|
clusterServerStatus |
現在のサーバのステータスを表します。 MIB の取得値と Cluster WebUI のステータスの対応は以下になります。 MIB の値 ステータス
---------------------
online [起動済]
offline [停止済]
unknown [不明]
|
|
clusterServerPriority |
サーバの優先順位を表します。 |
|
clusterServerProductName |
サーバにインストールされた CLUSTERPRO の製品名を表します。 |
|
clusterServerProductVersion |
サーバにインストールされた CLUSTERPRO の製品バージョンを表します。 |
|
clusterServerProductInstallPath |
サーバにインストールされた CLUSTERPRO のインストールパスを表します。 |
|
clusterServerPlatformName |
サーバのプラットフォーム名を表します。 |
clusterGroupグループ
グループ関連の情報が取得できるグループです。ここで定義されている各 MIB オブジェクトは、以下のような意味があります。
No. |
SNMP OID |
説明 |
---|---|---|
clusterGroupTable |
グループの情報テーブルを表します。 |
|
clusterGroupEntry |
サーバ情報のリストを表します。 このリストのインデックスは clusterGroupIndexです。 |
|
clusterGroupIndex |
各グループを一意に識別するインデックスを表します。 |
|
clusterGroupName |
グループ名を表します。 |
|
clusterGroupComment |
グループのコメントを表します。 |
|
clusterGroupType |
グループの種別を表します。 MIB の取得値と グループの種別の対応は以下になります。 MIB の値 グループの種別
---------------------------------------
failover フェイルオーバグループ
cluster 管理グループ
virtualMachine 仮想マシングループ
|
|
clusterGroupStatus |
現在のグループのステータスを表します。MIB の取得値と Cluster WebUI のステータスの対応は以下になります。 MIB の値 ステータス
---------------------------
online [起動済]
onlineFailure [起動失敗]
offlineFailure [停止失敗]
offline [停止済]
unknown [不明]
onlinePending [起動中]
offlinePending [停止中]
|
|
clusterGroupCurrentServerIndex |
現在グループが活性化しているサーバのインデックス(clusterServerIndex) を表します。グループが非活性の場合、返却値は -1 になります。 |
7.8. 非正規停止後のクラスタサービスの自動起動禁止¶
7.8.1. クラスタサービスの自動起動禁止とは?¶
Cluster WebUI によるクラスタシャットダウン/クラスタリブート/クラスタ停止、clpstdnコマンド、clpcl -t -aコマンド以外の方法でCLUSTERPROサービスが停止した場合、次回OS起動時にはCLUSTERPROサービスの自動起動を禁止する機能です。
自動起動を禁止した場合、OSのシャットダウンコマンドや、Cluster WebUI によるサーバシャットダウン/サーバリブート/サーバ停止、clpdownコマンド、clpcl -tコマンドなどでCLUSTERPROサービスを停止した場合には次回サーバ起動時にはCLUSTERPROサービスは自動起動しません。
クラスタシャットダウンやクラスタ停止を実行した場合でも、CLUSTERPRO サービスの停止処理で異常が発生した場合や、OSリセットや電源断等により停止処理が実行されなかった場合にも、次回のOS起動時にはCLUSTERPROサービスは自動起動しません。
7.8.2. 自動起動禁止を表示/変更するには¶
- [ダウン後自動起動する]自動起動を禁止しません。
- [ダウン後自動起動しない]クラスタシャットダウンやクラスタ停止以外の方法でサーバを停止した場合やクラスタシャットダウンやクラスタ停止が正常に終了しなかった場合に、次回OS起動時にクラスタサービスの自動起動を禁止します。
7.8.3. 自動起動禁止の条件¶
自動起動を禁止する条件は以下のとおりです。
クラスタシャットダウンやクラスタ停止以外の方法でクラスタを停止した場合
OSのリセット、パニック、電源断等でクラスタサービスの停止処理が実行されなかった場合
クラスタシャットダウンやクラスタ停止処理のクラスタサービスの停止処理でグループの非活性処理に失敗した場合
クラスタを構成する一部のサーバを単体でクラスタ停止した場合:
7.8.4. 自動起動禁止に関する注意事項¶
OS起動時にCLUSTERPROサービスが自動起動しない場合は、Cluster WebUI やclpclコマンドを使用してCLUSTERPROサービスを起動する必要があります。
OS起動時にCLUSTERPROサービスが自動起動しなかった場合には、Cluster WebUI 上のアラートメッセージ、syslogメッセージが出力されます。
7.9. サーバグループ間自動フェイルオーバ時の猶予時間待ち合わせ¶
7.9.1. 猶予時間待ち合わせとは?¶
サーバグループ間の自動フェイルオーバ時に、指定した時間だけフェイルオーバの開始を待ち合わせます。サーバダウンを検出してから、猶予時間経過後にフェイルオーバが実行されます。
7.9.2. 猶予時間待ち合わせ条件¶
下記の設定のグループのフェイルオーバを待ち合わせます。
[情報] タブ - [サーバグループ設定を使用する] がオン
[起動サーバ] タブ - [起動可能なサーバグループ] に複数のサーバグループが指定されている
[属性] タブ - [フェイルオーバ属性] - [自動フェイルオーバ] - [サーバグループ内のフェイルオーバポリシを優先する] がオンかつ [サーバグループ間では手動フェイルオーバのみを有効とする] がオフ
下記の場合には、猶予時間の待ち合わせは行いません。
同一サーバグループ内のサーバへフェイルオーバする場合
サーバダウン検出がサーバダウン通知による場合
[強制停止スクリプトを実行する] がオンに設定され、強制停止スクリプトの実行に成功した場合、および強制停止スクリプトを実行しない条件に当てはまる場合
[強制停止スクリプトを実行する] がオフ、[強制停止機能を使用する] がオンに設定され、強制停止の実行に成功した場合、および強制停止を実行しない条件に当てはまる場合
NP 解決リソースが設定されている場合
7.9.4. 猶予時間待ちの注意事項¶
猶予時間待ち合わせ中に、フェイルオーバ対象のグループを操作した場合には猶予時間待ちはキャンセルされフェイルオーバは実行されません。
猶予時間待ち合わせ中に、ダウンしたサーバの生存が確認できた場合には猶予時間待ちはキャンセルされフェイルオーバは実行されません。
猶予時間待ち中に、フェイルオーバ先サーバがダウンした場合、フェイルオーバ開始が猶予時間待ちよりも長くなる場合があります。
7.10. Witness サーバサービス¶
7.10.1. Witness サーバサービスとは?¶
クラスタ内の各サーバからWitness ハートビートを受信し、各サーバからのハートビート受信状況を応答として送信するサービスです。クラスタ外のサーバにインストールして使用します。
7.10.2. Witness サーバサービスに関する注意事項¶
Witness サーバサービスは Node.js 環境で動作します。そのため、Witness サーバサービスのインストール前に Node.js をインストールする必要があります。
7.10.3. Witness サーバサービスのインストール方法¶
Node.js 環境の npm コマンドを使用してインストールします。Witness サーバサービスモジュールを任意のフォルダに格納し、以下のコマンドを実行してください。
> npm install --global clpwitnessd-<version>.tgz
Witness サーバサービスモジュールは、インストール CD-ROM の以下のパスから取得してください。
Common/<バージョン>/common/tools/witnessd/clpwitnessd-<バージョン>.tgz
7.10.4. Witness サーバサービスの設定方法¶
Witness サーバサービスの設定を変更する場合、設定ファイルを直接編集します。以下のコマンド実行結果の1行目に表示されるフォルダを開きます。
> npm list --global clpwitnessd
(実行結果例)
C:\Users\Administrator\AppData\Roaming\npm `-- clpwitnessd@4.1.0
開いたフォルダ配下の node_modules\clpwitnessd に格納されている clpwitnessd.conf.js をメモ帳などのテキストエディタで編集してください。
設定項目は以下の通りです。
項目 |
既定値 |
説明 |
---|---|---|
http.enable |
True |
HTTPサーバを実行するかどうかを指定します。
true: 実行する
false: 実行しない
|
http.port |
80 |
HTTPサーバの待ち受けポート番号を指定します。 |
http.keepalive |
10000 |
HTTPサーバのキープアライブ時間を指定します。
[ミリ秒]
|
https.enable |
False |
HTTPSサーバを実行するかどうかを指定します。
true: 実行する
false: 実行しない
|
https.port |
443 |
HTTPSサーバの待ち受けポート番号を指定します。 |
https.keepalive |
10000 |
HTTPSサーバのキープアライブ時間を指定します。
[ミリ秒]
|
https.ssl.key |
server_key.pem |
HTTPSサーバで使用する秘密鍵ファイルを指定します。 |
https.ssl.crt |
server_crt.pem |
HTTPSサーバで使用する証明書ファイルを指定します。 |
log.directory |
- |
ログ出力先フォルダを指定します。 |
log.level |
info |
ログ出力レベルを指定します。
error: エラーログのみ出力
warn: error + 警告ログを出力
info: warn + 情報ログを出力
debug: info + 詳細ログを出力
|
log.size |
1024 * 1024 * 512 |
ログのローテートサイズを指定します。
[バイト]
|
data.available |
10000 |
クラスタサーバの通信状況データの既定の有効期限を指定します。
[ミリ秒]
|
7.10.5. Witness サーバサービスの実行方法¶
以下のコマンドを実行するとフォアグラウンドで Witness サーバサービスが起動します。WindowsサービスやLinuxデーモンとして実行する方法は次項「Witness サーバサービスの OS サービス化」を参照してください。
> clpwitnessd
7.10.6. Witness サーバサービスの OS サービス化¶
Witness サーバサービスがOS起動時に開始したい場合、OSサービスとして登録する必要があります。
Witness サーバサービスのOSサービスへの登録方法 (Windows サービスコントロールマネージャ、Linux systemd の場合) を例示します。なお、OSサービスへの登録方法は環境によって異なるため、以下の情報を参考にご利用の環境に合わせて設定してください。
Windows サービスコントロールマネージャへの登録
npm パッケージ winser を使用して登録する手順を例示します。
npm コマンドで winser をインストールします。以下のコマンドを実行すると、winser パッケージが npm リポジトリからダウンロード後にインストールされます。
> npm install --global winser
任意の場所にサービス実行用のフォルダを作成します。既定の設定では、このフォルダがログファイルやSSL秘密鍵ファイル、SSL証明書ファイルの格納場所になります。
サービス実行用フォルダの直下にwinser でのサービス登録用の package.json ファイルを作成します。パスの区切り文字には \ を二つ入力してください。また、文字数の都合で改行されていますが、"start" に指定したパスは実際には1行です。
{ "name": "clpwitnessd-service", "version": "1.0.0", "license": "UNLICENSED", "private": true, "scripts": { "start": "C:\\Users\\Administrator\\AppData\\Roaming\\npm\\clpwitnessd.cmd" } }
winser コマンドを実行してサービスを登録、開始します。
> winser -i -a
「コントロールパネル」-「管理ツール」-「サービス」からpacage.jsonの"name"に指定した名前のサービス (ex. clpwitnessd-service) が登録されていることを確認します。
Linux systemd への登録
systemd の Unit ファイルを作成して登録する手順を例示します。
- 任意の場所にサービス実行用のディレクトリを作成します。既定の設定では、このフォルダがログファイルやSSL秘密鍵ファイル、SSL証明書ファイルの格納場所になります。(ex. /opt/clpwitnessd)
- /etc/systemd/system に Witness サーバサービスの Unit ファイルを作成します。(ex. clpwitnessd.service)
[Unit] Description=CLUSTERPRO Witness Server After=syslog.target network.target [Service] Type=simple ExecStart=/usr/bin/clpwitnessd WorkingDirectory=/opt/clpwitnessd KillMode=process Restart=always [Install] WantedBy=multi-user.target
systemctl コマンドを実行してサービスを登録、開始します。
# systemctl enable clpwitnessd # systemctl start clpwitnessd