LifeKeeper ARK の導入事例を紹介<Oracle編>

こんにちは、SCSKの前田です。

私が携わった LifeKeeper の案件で導入を行った ARK について紹介をかねてお話したいと思います。
今回は、Oracle 編と言うことで、Oracle 社が開発・販売されているリレーショナルデータベース管理システムを簡単に冗長化するための ARK の導入事例について、Linux 版をベースにご紹介していきます。

おさらい

LifeKeeper の ARK について、おさらいしたいと思います。
ARK とは、Application Recovery Kits の略で、LifeKeeper が特定のアプリケーション(オープンソースソフトウェアや商用アプリケーション)を容易にリソースとして組み込むことが可能になる製品です。

ARK による、アプリケーションのリソースへの組み込みはウィザード形式(GUI上で設定)で作業が可能となり、ARK には、アプリケーションを操作(起動・停止・監視・再起動)するための4つのスクリプトがあらかじめ準備されているため、スクリプトを設計・作成するための開発工数の削減や人的なミスを防止することが出来ます。

概要説明

Oracle ARK では、Oracle Listener と Oracle Database を、LifeKeeper の保護対象リソースとして登録し、保護する機能を提供します。
Oracle ARK は、汎用アプリケーション(Generic Application)リソースの導入とは違い、起動・停止・監視・再起動を行うためのスクリプトを明示的に指定することはなく、リソースの作成に必要な項目に対するパラメータをウィザード形式で入力または、選択することでリソースを作成することが出来ます。

Oracle ARK として Oracle Listener と Oracle Database の処理内容は以下の通りとなります。

Oracle Listener の処理
処理名 処理内容
起動処理 lsnrctl start コマンドによるリスナーの起動を実施
停止処理 lsnrctl stop コマンドによるリスナーの停止を実施
監視処理 lsnrctl status コマンドによるリスナーの状態を確認
再起動処理 lsnrctl start コマンドによるリスナーの起動を実施
Oracle Database の処理
処理名 処理内容
起動処理 startup コマンドによる Oracle の起動を実施
停止処理 shutdown コマンドによる Oracle の停止を実施
監視処理 ① ps コマンドによる Oracle の動作確認を実施
② DB へ接続しコネクションの状態確認を実施
③ 一時ファイルへ ORA エラーが出力されていないか確認を実施
再起動処理 ① shutdown abort による Oracle の強制終了を実施
② startup コマンドによる Oracle の起動を実施し、失敗した場合、startup force コマンドで Oracle の起動を実施

Oracle ARK の構築例

それでは、実際に Oracle ARK の構築についてお話していきたいと思います。

Oracle ARK のパラメータ項目

Oracle ARK でリソースを作成する際は、事前に構成を決めておくことで、スムーズな作業が可能になります。
そこで Oracle Listener と Oracle Database のリソース固有のパラメータを一覧表にまとめてみましたので参考にしてみてください。

<Oracle Listener>

項目 設定値 内容
Listener Configuration File Path 「listener.ora」フルパス Oracle Listener の設定ファイルのフルパスを入力
Listener Name 【Listener名】 Oracle Listener 名を入力
Listener Executable 【プログラム実行パス】 Oracle Listener のプログラムの実行パスを入力
Listener Protection Level Full
又は
Intermediate
又は
Minimal
Oracle Listener の保護レベルを選択 (Full, Intermediate, Minimal の3つから選択可能)
・Full:リスナーの起動、停止、監視、回復処理を実施(デフォルト)
・Intermediate:リスナーの起動、監視、回復処理を実施
・Minimal:リスナーの起動、監視処理を実施
Listener Recovery Level Standard
又は
Optional
Listener のリカバリレベルを選択 (Standard,Optional の2つから選択可能)
・Standard:リスナーリソースの障害検出による、ローカルリカバリ と フェイルオーバーを有効にする
・Optional:リスナーリソースの障害検出による、ローカルリカバリを有効にし、フェイルオーバーを無効にする
IP Adderss Name 【IPリソース名】 リソース階層の依存関係として保護される IP アドレスのリソース名を選択

 

<Oracle Database>

項目 設定値 内容
ORACLE_SID for Database 【Oracle-SID名】 ORACLE_SID を選択
Username 【Oracleユーザー名】 sysdba 権限のある、Oracle-SID にログインするユーザー名を入力
Password 【Oracleユーザーパスワード】 Oracle-SID にログインするユーザーのパスワードを入力
Select the Oracle Listener 【OracleListenerリソース名】 Oracleリスナーリソース名を選択

Oracle Database 関連リソースの作成

Linux 版の Oracle ARK では「Oracle Listener」と「Oracle Database」のリソースを作成することが可能です。
この2つのリソースを LifeKeeper の GUI によって作成する流れを例として紹介します。

注意

Oracle で使用する共有ディスクリソースと、 IP リソース、及び、別のリソース等、それぞれの依存関係がある状態で Oracle リソースを作成した場合、Oracle リソース作成時の自動による依存関係の作成が失敗する可能性があるため、必要に応じて依存関係を削除する必要があります。
以降の例では、共有ディスクリソースと IP リソースの依存関係がない状態で Oracle リソースの作成を実施しています。

<Oracle Listenerリソース作成>

処理内容 Oracle Listener
リソース作成前のツリー構造
保護アプリケーションの選択(Oracle Database Listener)
稼働系ノードのSwitchbackタイプの選択
※デフォルト:intelligent
稼働系ノードの選択
稼働系ノードのOracle Listener 設定ファイルのフルパスの入力
Oracle Listener 名の選択
稼働系ノードのOracle Listener プログラムの実行パスの入力
Listener リソースの保護レベルの選択
Listener リソースのリカバリレベルの選択
依存関係として保護される IP リソース名の選択
稼働系ノードの管理GUIに表示されるリソースタグ名の入力
稼働系ノードのリソース作成結果
待機系ノードの選択
待機系ノードのSwitchbackタイプの選択
※デフォルト:intelligent
稼働系ノードの優先順位の設定
※デフォルト:1
待機系ノードの優先順位の設定
※デフォルト:10
待機系ノードのリソース作成準備の確認結果
待機系ノードのOracle Listener 設定ファイルのフルパスの入力
待機系ノードのOracle Listener プログラムの実行パスの入力
待機系ノードの管理GUIに表示されるリソースタグ名の入力
待機系ノードのリソース作成結果
リソース作成後のツリー構造(Oracle Listener リソースと IP リソースの依存関係が自動で作成される)

 

<Oracle Databaseリソース作成>

処理内容 Oracle Database
リソース作成前のツリー構造
保護アプリケーションの選択(Oracle Database)
稼働系ノードのSwitchbackタイプの選択
※デフォルト:intelligent
稼働系ノードの選択
ORACLE_SID の選択
Oracle-SID のログインユーザー名の入力
Oracle-SID のログインユーザー名のパスワードの入力
Oracleリスナーリソース名の選択
稼働系ノードの管理GUIに表示されるリソースタグ名の入力
稼働系ノードのリソース作成結果
待機系ノードの選択
待機系ノードのSwitchbackタイプの選択
※デフォルト:intelligent
稼働系ノードの優先順位の設定
※デフォルト:1
待機系ノードの優先順位の設定
※デフォルト:10
待機系ノードのリソース作成準備の確認結果
待機系ノードの管理GUIに表示されるリソースタグ名の入力
待機系ノードのリソース作成結果
リソース作成後のツリー構造(Oracle Database リソースと共有ディスクリソース・Oracle Listener リソースの依存関係が自動で作成される)

これで、LifeKeeper による Oracle Database 製品 のリソースが完成です。
あとは、必要に応じてリソース階層の依存関係を変更します。

まとめ

今回は LifeKeeper ARK の導入事例と言うことで、Linux 版の Oracle Database 製品のリソース作成について紹介してみました。
Oracle ARK は、汎用アプリケーション(Generic Application)リソースとは違い、起動・停止・監視・再起動を行うためのスクリプトを準備する必要がなく、リソースを作成することで意識することなく自動でスクリプトが導入されます。
LifeKeeper の機能として、リソース作成後、必要に応じて再起動処理やフェイルオーバー処理を無効化にすることも出来ます。システムの要件に合わせカスタマイズが可能になっています。

Oracle ARK を導入するための手順を纏めます。

・Oracle Listener と Oracle Database のリソース固有のパラメータの設定値を検討する
・LifeKeeper GUI を用いて、Oracle Listener と Oracle Database のリソースを作成する
LifeKeeper では Oracle Database 以外にも多数の ARK が用意されていますので、また次の機会に別の ARK について紹介していきたいと思います。

JP1/AJS3 ARK の導入事例に関しては以下のリンクからどうぞ!

詳しい内容をお知りになりたいかたは、以下のバナーからSCSK LifeKeeper公式サイトまで
タイトルとURLをコピーしました