PowerHA(旧HACMP)とは
PowerHA(旧称: HACMP)は、
IBMのPOWERシステム上で動作する
AIXおよび
Linux環境向けに提供される高可用性クラスターソフトウェアです。元々は「High Availability Cluster Multiprocessing(HACMP)」という名称でしたが、
2008年にPowerHAへと改称されました。
PowerHAの概要
HACMPは、RS/6000の時代から提供されていましたが、当初は
AIXのみが対象で、拡張機能(ES)は別
ライセンスでした。PowerHAは、複数のサーバーをクラスターとして連携させ、サービスを提供しているサーバー(サービスノード)に障害が発生した場合、事前に設定されたスタンバイノードへ自動的にリソースを引き継ぐ機能を提供します。
引き継ぎの対象となるリソースには、以下のようなものがあります。
ディスク: 外部ディスク装置上のボリュームグループ、論理ボリューム、ファイルシステム
ネットワーク: [IPアドレス]、ノード内の複数NIC間での引継ぎも可能
アプリケーション: DB2、Oracleなどのデータベース管理システム(DBMS)、MQ、Tivoliなどのミドルウェア、およびユーザー独自のアプリケーション
HACMPは、日立からもEP8000のAIX用(IBMからのOEM)として販売されていました。
2008年4月にPower Systemsが発表された際、HACMPは「PowerHA for AIX and Linux」と改名され、Linuxプラットフォームがサポート対象に追加されました。ただし、Linux版はx86版ではなくPOWER版Linux用であり、共有ディスクの引き継ぎ機能など、AIX版とは異なる点があります。
2009年10月には「PowerHA SystemMirror for AIX V6.1」が発表され、従来のSmart Assist機能が追加されました。また、Standard EditionとEnterprise Editionの2つのエディションと、Small、Medium、Largeの3段階の料金体系が導入されました。2010年8月には、「PowerHA SystemMirror for AIX V7.1」(Standard Editionのみ)が発表され、AIX 7.1のCluster Aware機能との連携や、IBM Systems Directorベースの管理インターフェースが追加されました。
PowerHAの構成
PowerHAは、複数のサーバー(ノード)で構成されるクラスター環境に導入され、各ノードは互いに稼働状況を監視します。サービスノードで障害が検出されると、事前に設定されたリソースが、スタンバイノードへ自動的に引き継がれます。このプロセスはフェイルオーバーまたはテイクオーバーと呼ばれます。
引き継ぎのパターンには、以下のようなものがあります。
正副構成: サービス機とスタンバイ機による構成
相互バックアップ: 複数のサービス機が互いにバックアップする構成(障害時には縮退運用)
カスケーティング: クラスター内の適当なスタンバイノードへ引き継ぐ構成
PowerHAは、一部の
プロセスと多数のシェルスクリプトで構成されており、シェルスクリプトはユーザーがカスタマイズ可能です。これにより、詳細な構成や運用が可能になりますが、一定のスキルが求められます。
PowerHAは、サービスの停止時間を最小限にするためのソリューションであり、無停止を実現するものではありません。障害発生から引継ぎ完了までの間、および元の構成に戻す際にはサービス停止が発生します。
PowerHAは、各ノードのハードウェア障害やOS障害には対応できますが、外部ディスク装置やアプリケーション自体の障害には対応できません。そのため、単一障害点(SPOF)を排除するためには、外部ディスク装置側の冗長化など、他の冗長化対策との組み合わせが推奨されます。また、LPAR(論理区画)を使用している場合は、サービスノードとスタンバイノードを異なるサーバー筐体に配置することが望ましいです。
ただし、PowerHA Extended Distance (HACMP/XD) は、地理的に離れた場所でのデータミラーリングとリカバリーを提供する、災害復旧(ディザスターリカバリー)ソリューションであり、上記の単一障害点に関する考慮とは異なります。
WebSphere Application ServerやDominoなどのミドルウェアでは、PowerHAではなく、それぞれのミドルウェアが持つクラスタ機能を利用することが一般的です。
PowerHAの動作仕様
PowerHAは、ハートビート機能を使用して各ノードの生存を確認します。具体的には、KeepAlive(KA)パケットを相互に送信し合いますが、その経路はTCP/IPに加えて、共有ディスクまたは非同期通信(シリアル、いわゆるRS-232C)を使用することが推奨されています。TCP/IPのみでは、ネットワーク障害時に相手ノードの生死を正しく判断できない可能性があるためです。RS-232Cは信頼性が低いため、PowerHAではサポートするシリアルアダプターが明示されています。現在では共有ディスク経由でのハートビートが一般的です。
スプリットブレインシンドローム対策として、KA信号の多重化や、特定のデバイスに依存しない構成が推奨されています。また、孤立した旧サービスノードを強制終了させる機能(Deadman Switch)が実装されています。
基本機能として、
プロセスの起動状態を監視する機能がありますが、HACMP5.1以降に追加されたシェルスクリプトによる拡張監視機能を使用することで、より詳細な監視が可能になっています。
他のクラスタ製品との比較
PowerHAは、他の一般的なクラスター製品と比較して、以下の点が指摘されています。
アプリケーション登録時の考慮点が多く、カスタマイズが必要なシェルスクリプトが多い
サービス監視や依存リソース監視の機能が少なく、カスタマイズには高度なスキルが必要
設定はCUI画面(AIXではsmit)が基本であり、操作性が良くない
IBM製品(System p、DB2、MQなど)との組み合わせでの実績が多く、Oracle Databaseなどの実績は少ない
AIXの標準機能であるライブ・アプリケーション・モビリティーや、
VMware ESXのVMotionと比較すると、PowerHAは障害検知と引継ぎを自動で行えますが、引継ぎ中にはサービス停止が発生します。
VMware ESXの
VMwareHAと比較すると、
VMwareHAはハードウェアやESX自体の障害しか検知できないのに対し、PowerHAはOSのハングアップやNIC障害も検知できます。ただし、vSphereHAではゲストOSのハングアップも検知できるようになっており、機能差は縮小しています。
参考情報
PowerHA SystemMirror for AIX Standard / Enterprise Edition V6.1の発表 - IBM
IBM PowerHA SystemMirror Standard Edition V7およびPowerHA SystemMirror Enterprise Edition V6機能拡張の発表
関連項目
コンピュータ・クラスター
クラスタリング
外部リンク
PowerHA SystemMirror for AIX - 日本IBM
PowerHA SystemMirror / PowerHA for AIX / HACMP -
日立製作所(EP8000、
AIX用)
*
PowerHA SystemMirror マニュアル - IBM