こんにちは、SCSK株式会社の池田です。
前回は、HAクラスタウェアの「LifeKeeper(ライフキーパー)」という製品の概要をご説明しましたが、2回目の今回は少しだけ掘り下げて、LifeKeeperで可用性を高められるミドルウェアにどのようなものがあるかをご紹介します。
LifeKeeperには、数多くのミドルウェアに対応したオプション製品がある!
LifeKeeperには、サイオステクノロジーやミドルウェアメーカーが事前に動作確認済みのオプション製品(有償)があります。
それを「Application Recovery Kit」略して「ARK(アーク)」と呼びます。
ARKを使うことで、他のHAクラスタ製品でありがちな、ミドルウェアをHAクラスタ制御する為のスクリプトの作成がいらなくなるんです。
もちろんARKは、サイオステクノロジーがしっかり動作検証してくれてるから、スクリプトの設計や作成、テストが必要ないので、作業工数の短縮にも繋がるんだよ。

ARKを使えば面倒くさいスクリプトを書かなくて良いのはとても便利ね

どんなミドルウェアに対応したARKがあるのか?
それ!とても気になるところだよね。
ではどんなミドルウェアに対応したARKがあるのか見てみましょう!
| カテゴリ | 対応ソフトウェア | 対応OS | |
| Linux | Windows | ||
| データベース | OracleDB | 〇 | 〇 |
| PostgreSQL | 〇 | ||
| SQL Server | 〇 | ||
| DB2 | 〇 | ||
| MySQL | 〇 | ||
| データ連携/転送/Mail基盤 | HULFT | 〇 ※ライセンスは無償提供 保守のみ有鬚 |
〇 ※ライセンスは無償提供 保守のみ有鬚 |
| IIS | 〇 ※本体に無償で同梱 |
||
| NFS Server | 〇 | ||
| ジョブ | JP1/AJS – Manager | 〇 | 〇 |
| JP1/AJS – Agent | 〇 | 〇 | |
| その他 | WebSphere MQ/IBM MQ | 〇 | |
| Logical Volume Manager (LVM) |
〇 | ||
| Device Mapper Multipath | 〇 | ||

よく使われるミドルウェアに対応しているのね
有償のARKがないミドルウェアでも大丈夫!

う~ん このリストにないミドルウェアはどうすれば良いんだろう?
そうだね。このリストに書いていないミドルウェアをLifeKeeperで保護したいって時もあるよね。
そんな時は大きく二つの方法があるよ!
(2)Generic Application Recovery Kit(Generic ARK)を使ってスクリプトを作りこんで保護する
(1)のQSP(キューエスピー)を使った方法については、スクリプトを作成することなくGUIによる設定をするだけで、簡単にサービスの起動/停止/監視を行うことが可能だよ

(2)のGeneric ARK(ジェネリックアーク)を使って保護する方法は、サイオステクノロジー謹製のサンプルスクリプトをベースに、手の込んだチェック機構などを実装することもできるんだ
QSPやGenericARKで保護した実績のあるアプリケーションはこんなにあるんだよ(一例)
| カテゴリ | 対応ソフトウェア | 対応OS | |
| Linux | Windows | ||
| データベース | MariaDB | 〇 | |
| FUJITSU Software Enterprise Postgres | 〇 | 〇 | |
| PowerGres HA | 〇 | ||
| EDB Postgres | 〇 | 〇 | |
| データ連携/転送/Mail基盤 | DataSpider | 〇 | 〇 |
| ACMS E2X | 〇 | ||
| AsteriaWarp | 〇 | 〇 | |
| samba | 〇 | ||
| 監視 | Zabbix | 〇 | |
| A-AUTO | 〇 | 〇 | |
| その他 | Apache | 〇 | 〇 |
| Tomcat | 〇 | ||
| SVF | 〇 | 〇 | |

こんなに実績があるなら
有償のARKがなくても安心ね
そうは言っても、なんかARKって難しそう。。。

有償のARKとか、GenericARKとか出てきたけどちょっと難しそう
聞きなれない言葉だから難しく感じちゃうよね。
じゃあARKについて簡単に触れておくね。
ARK(含むGenericARK)には、以下の4つの機能があるんだ
| 起動スクリプト(restore) | アプリケーションを起動する |
| 停止スクリプト(remove) | アプリケーションを停止する |
| 監視スクリプト(quickCheck)*1 | アプリケーションが正常かどうか監視を行う(オプション) |
| 回復スクリプト(recover)*1 | 監視処理で異常を検出した場合、実行してアプリケーションのリカバリーを行う(オプション) |
*1 スクリプトは任意での組み込み。restore, remove スクリプトだけでリソース作成は可能
この表を見て、勘の良い人はピンときたかもしれないけど、ミドルウェアの起動、停止、回復(再起動)の処理は、完全にLifeKeeperで制御するんだ。だから例えばWindowsのサービス画面では、該当のミドルウェアは「手動」起動にしておく必要があるよ。


OSでは「手動」起動にしておくのは覚えておきたいポイントね
監視処理で、リターンコードが0なら正常、それ以外なら異常と判断して、次の処理を決めるというのが、ARKの役割なんだ。

へ~ ARKの処理って意外とシンプルなんだ。安心したよ
まとめ
ここまで、LifeKeeperのオプション製品であるARKの概要についてご説明しました。
・有償ARKがないミドルウェアでも、QSPやGenericARKを使えば保護できる
・ARKの機能はたった4つ(起動、停止、監視、回復)
次回は、AWSなどのパブリッククラウド環境でLifeKeeperが有効な理由をお伝えしますね。お楽しみに。

