■事象概要
次項にあげるLinux OS環境でHAクラスター構成を組んでいる場合、シャットダウンストラテジー設定が”Do not SwitchoverResources”でもshutdownコマンドやrebootコマンドを利用した意図的なシャットダウン時にフェイルオーバが発生する場合がある。
■影響を受ける環境
・Red Hat Enterprise Linux (RHEL) 7.x
・Community ENTerprise Operating System (CentOS) 7.x
・Oracle Linux (OEL) 7.x
※上記OS上でLifeKeeper for Linuxのv8.4.0からv9.0.1を使用している場合に発生します。
■発生原因
7系以降のLinux OSにおいてシステムの起動処理および終了処理が従来のsysvinit / upstartからsystemdに変更されました。systemdではLifeKeeper for Linuxの停止処理の制御が適切に行われないことにより、シャットダウン時の処理が意図した動作にならないことが確認されました。
上記の理由により、シャットダウンストラテジー設定が”Do not SwitchoverResources”の状態でshutdownコマンドやrebootコマンドを利用した意図的なOSシャットダウンを行った際に「予定されたシャットダウン」であることがクラスタ内の他ノードに通知されず、意図しないフェイルオーバーが発生する場合があります。
■対処方法
サポートからご提供する更新スクリプトの実施によりLifeKeeperの起動処理及び停止処理をsystemdに対応させることで問題を修正します。
円滑な製品サポートをご提供するため、更新スクリプトのご提供先は弊社にて管理させていただいております。更新スクリプトをご希望の際は、以下の情報とともにサポートまで申請をお願いいたします。
・PSC No.
・氏名
・会社名
・メールアドレス
・ご連絡先電話番号
・導入先エンドユーザ名
また、更新スクリプトの実施が困難な場合は、下記手動操作により回避いただけます。
以下に掲載する手順でアクティブノードのシャットダウン(再起動)を行ってください。
1. アクティブノードをシャットダウン(再起動)する前に、全てのスタンバイノードで以下のコマンドを使用し、フェイルオーバーを抑止するフラグを
作成する。
# /opt/LifeKeeper/bin/flg_create -f \!nofailover\![アクティブノードのホスト名] ※上記のホスト名は、“/opt/LifeKeeper/bin/lcduname”で出力するホスト名を指定してください。
2. アクティブノードをシャットダウン(再起動)する。
■恒久対策
LifeKeeper for Linux v9.0.2 で修正対応済です。
■関連記事
[Linux]Amazon EC2環境上での制限事項
https://lkdkuserportal.sios.jp/hc/ja/articles/360037724991
作成日:2015年9月24日
改定日:2016年7月19日
恒久対策についての文面を更新しました。