8 ACSLS HA の微調整

この章では、ライブラリコンプレックス内で最適なフェイルオーバーポリシーを設定する方法、不要なフェイルバックイベントを回避するためにデフォルトの応答間隔を調整する方法、およびフェイルオーバーイベントの電子メール通知を登録する方法について説明します。

ライブラリ通信用のフェイルオーバーポリシーの定義

ACSLS HA エージェントは、ACSLS と接続済みライブラリの間の通信を常にモニターします。そのような通信は、ACSLS の連続操作にとって重要です。ただし、ライブラリとの通信に失敗したときに行うべきアクションは、ローカルの ACSLS HA 管理者が決定するポリシーによって異なります。

ポリシー表 $ACS_HOME/acslsha/ha_acs_list.txt を使用すると、ローカル管理者は、HA の回復が必要な ACS にとって望ましいフェイルオーバーアクションを定義できます。ライブラリとの通信の失敗時には、管理者の指示に応じて、代替ノードで正常な ACS 通信を確認した場合、ACSLS HA エージェントはそのノードにフェイルオーバーします。

複数の ACS 環境では、単一の ACS との通信が失敗したときには、ACSLS HA システムがフェイルオーバーすることが望ましい場合があります。ただし、あらゆるフェイルオーバーアクションは接続されたすべてのライブラリ上での本番環境に影響を及ぼすため、管理者は一般的なフェイルオーバーアクションをデータセンター内のさらに重大な ACS (1 つまたは複数) に限定することを選択する場合もあります。ライブラリとの通信が失われたときにクラスタのフェイルオーバーアクションが必要な ACS ごとに、ポリシーレコードが ha_acs_list.txt に作成されます。各レコードには 2 つのフィールドがあります。

ACS Number   Fail-over Action (true or false)

最初のフィールドは ACS ID で、2 番目のフィールドはブール値 true または false です。ポリシー設定の論理は次のとおりです。

  • 2 番目のフィールドが false のとき、ACS への通信が失敗して復元できない場合でも、ACSLS HA エージェントは代替ノードへのクラスタのフェイルオーバーアクションを開始しません。

  • 2 番目のフィールドが true のとき、プライマリノードからの通信を再確立するための試行がすべて失敗したあとで、ACSLS HA エージェントはクラスタのフェイルオーバーアクションを表明します。代替ノードでライブラリの接続が確認された場合にのみ、システムはフェイルオーバーします。

このファイルに一覧表示されていない ACS では、デフォルトのアクションは false です。

冗長電子装置 (RE) を備えたライブラリ

冗長電子装置 (RE) を備えたライブラリでは、ACSLS HA エージェントは、クラスタのフェイルオーバーアクションを使用する前に、通信を代替の RE パスに切り替えようとします。この RE の切り替えアクションは、単一の SL8500、SL3000、またはデュアル LMU を備えた古い 9310 にのみ適用されます。パーティション化されたライブラリでは、RE の自動切り替えは試行されません。

フェイルオーバーの Pingpong_interval の設定

Solaris Cluster の Pingpong_interval は、最初のクラスタのフェイルオーバーイベント後に完全な回復を復元できない場合に繰り返しのフェイルオーバーアクションを防止するタイムアウトプロパティーです。

これは、ACSLS リソースグループに関する、ユーザーによる変更が可能なプロパティーです。デフォルト値は 20 分に設定されます。この設定では、ACSLS HA エージェントによってフェイルオーバーアクションがリクエストされるとすぐに、最初のフェイルオーバーイベントが発生します。ただし、フェイルオーバーアクションをトリガーする可能性がある状態が、新しいクラスタノードでクリアされない場合、定義済みの応答間隔が期限切れになるまで、次のフェイルオーバーアクションは遅延されます。これによって、根本にある問題が解決されるまで、あるクラスタノードと別のクラスタノードの間での制御の不必要なスラッシングが防止されます。

このプロパティーのデフォルト設定を変更するには、ファイル $ACS_HOME/acslsha/pingpong_interval で定義されたデフォルトの数値を変更します。この数値は秒単位で表されます。

デフォルト設定である 1200 秒は、ほとんどの中規模から大規模のライブラリ構成で適切な設定です。このプロパティーに最適なタイムアウト値は、ライブラリ構成内に存在する LSM とテープドライブの実際の数によって異なります。ライブラリ構成が大きいほど、フェイルオーバーイベント後の回復に時間がかかるため、10 個を超える LSM または 40 台のドライブ、またはその両方を使用して構成されたシステムでは、この数値はより長い間隔に設定するべきです。

40 個の LSM 構成では設定 1800 (30 分) が推奨されるのに対して、1 - 4 個の LSM で構成された小さいライブラリでは設定 900 (15 分) が推奨されます。

ここで加えた変更は、ACSLS HA をコマンド acsAgt configure で再構成するまで有効になります。

# cd /opt/ACSLSHA/util
# ./acsAgt configure

このコマンドは、acsls-rg リソースグループがすでにアクティブであっても実行できます。これは通常の HA 操作に影響を与えずに新しいデフォルト設定を登録します。

pingpong_interval 設定は、acsAgt pingpong を使用してテストのために動的に変更できます。このコマンドで設定された値は acsAgt configure を使用してリソースグループを再起動するまで有効のままになります。

システムイベントの電子メール通知の登録

管理責務を持つユーザーは、システムのブートイベントや ACSLS HA クラスタのフェイルオーバーイベントなど、システムイベントの自動電子メール通知を登録してもかまいません。

そのようなイベントを登録するには、ユーザーは、次のディレクトリのそれぞれのファイルに電子メールアドレスを追加する必要があります。

$ACS_HOME/data/external/email_notification/
   boot_notification
   ha_failover_notification

ヘッダーの注釈の下にある単一の行に、目的の各受信者の電子メールアドレスを入力します。それ以降、システムがブートするか、HA クラスタがスタンバイノードにフェイルオーバーするたびに、登録済みの各ユーザーは電子メールで通知されます。

この機能では、sendmail サービスが ACSLS サーバーで有効になっていること、およびネットワークファイアウォールの制限でデータセンターからの電子メール通信が許可されていることを前提としています。