3.5.7 アンロードログ運用

組み込みDBが自動的に取得するアンロードログファイルと,スケジューラーデータベースのバックアップファイルを使用して回復するアンロードログ運用について説明します。アンロードログ運用での障害発生時の回復方法を次の図に示します。

図3-43 障害発生時の回復方法(アンロードログ運用)

[図データ]

<この項の構成>
(1) システムファイルの二重化について検討する
(2) アンロードログファイルについて
(3) 組み込みDB環境の構築
(4) 運用方法
(5) 障害発生時の組み込みDBの回復手順
(6) 注意事項

(1) システムファイルの二重化について検討する

組み込みDBで使用するシステムファイルを二重化しない構成では,システムファイルに障害が発生すると組み込みDBは停止してしまいます。

システムファイルを二重化すると,片方のシステムファイルにディスク障害などが発生しても,もう一方のシステムファイルについては引き続き使用できるため,組み込みDBを停止させないで運用できます。

ただし,システムファイルの容量は,二重化しない構成と比較すると増加します。

(2) アンロードログファイルについて

(a) 自動ログアンロード機能

組み込みDBは,次のどれかのタイミングで,使用できるシステムログファイルに出力先を切り替えます。

今まで使用していたシステムログファイルは,アンロード待ち状態※1となり,この状態では,使用できるシステムログファイルとして,再度割り当てられません。このアンロード待ち状態のシステムログファイルを使用できる状態にするには,アンロード※2をする必要があります。組み込みDBは,このアンロード待ち状態のシステムログファイルを,指定されたディレクトリに自動でアンロードします。このアンロードして作成したファイルをアンロードログファイルと呼び,この自動的にアンロードする機能を自動ログアンロード機能と呼びます。回復時は,このアンロードログファイルをバックアップファイルとともに使用します。

注※1
回復に必要な更新履歴情報が格納されていて上書きできない状態です。この状態では,使用できるシステムログファイルとして再度割り当てられません。再度使用できる状態にするためには,アンロードをする必要があります。
注※2
システムログファイルの内容を退避することをいいます。

(b) アンロードログファイルのサイズ

アンロードログファイルのサイズは,セットアップ時の規模によって異なります。セットアップ時の規模の違いによる,1個当たりのアンロードログファイルのサイズを次の表に示します。保存するアンロードログファイルの容量を見積もる場合には,この表の値を参考にして,アンロードログファイルを格納するための必要な容量を事前に見積もってください。

表3-20 出力されるアンロードログファイルのサイズ

セットアップ時の規模
(ajsembdbbuildコマンドのオプション)
アンロードログファイル1個のサイズ
-l(大規模セットアップ)約570メガバイト
-m(中規模セットアップ)約200メガバイト
-s(小規模セットアップ)約120メガバイト

ajsembdbaddlogコマンドで,システムログファイルを拡張している場合は,ajsembdbaddlogコマンドの-sオプションに指定したサイズと,表3-20に示すサイズを比較して,大きい方のサイズがアンロードログファイルの最大サイズになります。このため,アンロードログファイルの容量を見積もる場合は,大きい方の値で見積もってください。

なお,出力されるアンロードログファイルのサイズは,出力されるタイミングによって異なる場合があります。

(c) アンロードログファイル作成ディレクトリを含むディスクが満杯になる時期の目安

アンロードログファイルは,削除またはほかのディスクに移動しないかぎり,アンロードログファイル作成ディレクトリに作成され続けます。そのため,JP1/AJS2の運用を続けることで,アンロードログファイルが増加し,アンロードログファイル作成ディレクトリを含むディスクが満杯になります。ディスクが満杯になると自動ログアンロード機能が停止し,(d)に示す問題が発生します。

このようなことから,ディスクが満杯になる時期を事前に見積もり,満杯になる前にバックアップファイルを取得して,バックアップファイル取得時点より前に作成されたアンロードログファイルを削除するか,ほかのディスクに移動する必要があります。バックアップファイルの取得ができない状況であれば,一時的にほかのディスクにアンロードログファイルを移動して,アンロードログファイル作成ディレクトリを含むディスクの空き容量を確保してください。アンロードログファイルの削除および移動方法については「(4)(e) バックアップファイルとアンロードログファイルの管理」を参照してください。

ここでは,アンロードログファイル作成ディレクトリを含むディスクが満杯になる時期を見積もる方法について説明します。

1個のシステムログファイルに出力できる情報量を次の表に示します。

表3-21 1個のシステムログファイルに出力できる情報量

セットアップ時の規模
(ajsembdbbuildコマンドのオプション)
一日当たりのジョブまたは
ジョブネットの実行数
-l(大規模セットアップ)約25,000
-m(中規模セットアップ)約8,000
-s(小規模セットアップ)約5,000
この数値はジョブやジョブネットに対する操作や,ユニットの新規作成・定義変更・削除などの回数によって変動するため,運用に合わせて見積もり値を変更する必要があります。

(b)で示した1個当たりのアンロードログファイルサイズと,上記で示した数値を参考に,運用開始してから何日後にディスクが満杯になるかを見積もれます。

見積もり例を次に示します。

環境
組み込みDB環境規模:大規模
アンロードログファイル作成ディレクトリ:10ギガバイト
計算式
10ギガバイト / 570メガバイト = 17日

以上の条件では,運用を開始してから最短で約17日目の運用終了時に,ディスクが満杯になることが予想できます。

(d) 自動ログアンロード機能が停止することによる問題

自動ログアンロード機能が停止すると,組み込みDBはシステムログファイルのアンロードを実行しません。アンロードをしないと,アンロード待ち状態のシステムログファイルが増加し,出力先のシステムログファイルを変更するタイミングで,使用できるシステムログファイルがないと組み込みDBは異常終了します。

自動ログアンロード機能が停止する要因については,「(f) 自動ログアンロード機能が停止する要因と対策」を参照してください。

(e) 自動ログアンロード機能の稼働状態の監視方法

自動ログアンロード機能が停止すると(d)に示した問題が発生するため,自動ログアンロード機能の稼働状態を,定期的に監視する必要があります。

自動ログアンロード機能の稼働状態を監視する方法は,次に示す二とおりの方法があります。

自動ログアンロード機能が停止していると判断できた場合は,(f)に示す対策を実施したあとで,ajsembdboplogコマンドに-rオプションを指定して実行してください。実行例を次に示します。

ajsembdboplog -r -id _JA0

このコマンドを実行すると,自動ログアンロード機能が開始されます。

(f) 自動ログアンロード機能が停止する要因と対策

自動ログアンロード機能が停止する要因と,停止した場合の対処方法を次の表に示します。

表3-22 自動ログアンロード機能が停止する要因と対処

停止要因対策方法
アンロードログファイル作成ディレクトリを含むディスクに障害が発生したアンロードログファイルがなくなるおそれがあるため,組み込みDBのバックアップファイルを取得してください。障害が発生したディスクを回復させたあと,ajsembdboplogコマンドに-rオプションを指定して実行してください。実行例を次に示します。
ajsembdboplog -r
このコマンドを実行すると,自動ログアンロード機能が開始されます。
アンロードログファイル作成ディレクトリを含むディスクの容量が満杯になったディスクが満杯になった場合の対処方法については,「(4)(e) バックアップファイルとアンロードログファイルの管理」を参照してください。そのあと,ajsembdboplogコマンドに-rオプションを指定して実行してください。実行例を次に示します。
ajsembdboplog -r
このコマンドを実行すると,自動ログアンロード機能が開始されます。
次のどちらかの要因でアンロードログファイル作成ディレクトリが使用できなくなった
・権限不正
・ディレクトリが存在しない
障害原因を取り除いたあと,ajsembdboplogコマンドに-rオプションを指定して実行してください。実行例を次に示します。
ajsembdboplog -r
このコマンドを実行すると,自動ログアンロード機能が開始されます。
ajsembdboplogコマンドに-tオプションを指定して実行したajsembdboplogコマンドに-rオプションを指定して実行してください。実行例を次に示します。
ajsembdboplog -r
このコマンドを実行すると,自動ログアンロード機能が開始されます。

(g) 使用できるシステムログファイルがなくなったことが原因で組み込みDBが異常終了した場合の回復方法

使用できるシステムログファイルがなくなり,組み込みDBが異常終了した場合の対処方法を次に示します。

  1. 該当するスケジューラーデータベースを使用するスケジューラーサービス,JP1/AJS2 Monitorサービスを含む,スケジューラーデータベースにアクセスするサービスをすべて停止する。
  2. システムログのアンロードを実行する。
    ajsembdboplogコマンドを実行して,アンロード待ち状態のシステムログファイルをアンロードする。アンロードの際,出力される1個当たりのアンロードログファイルのサイズについては,「(b) アンロードログファイルのサイズ」を参照してください。
  3. 組み込みDBを起動する。
    ajsembdbstartコマンドを実行して,組み込みDBを起動してください。OS,または組み込みDBの状態によって実行方法が異なります。
    • Windowsの場合
      ajsembdbstartコマンドの実行時,-idオプション以外のオプションは指定しないで実行してください。
    • UNIXの場合
      組み込みDBの状態によって,ajsembdbstartコマンドの実行方法が異なります。組み込みDBの状態は,ajsembdbstatusコマンドを実行することで確認できます。_JA0の組み込みDB識別子でセットアップした環境がすでに構築されている場合のajsembdbstatusコマンドの実行例を次に示します。

      ajsembdbstatus -s ust -id _JA0

      HOSTNAME  : host_name(144852)
      SYSTEMID  : ajs2
      UNITID    : unt1
      ENTRYHOST : host_name
      PAIRHOST  :
      UNIT-STAT FES-STAT SETUP-STAT
      STOP      ******** SETUP

      実行結果のうち,UNIT-STATに表示されている文字列(下線部分)が,組み込みDBの状態を示す情報です。この情報によってajsembdbstartコマンドの実行方法が異なります。表示内容が「STOP」の場合,-idオプション以外のオプションは指定しないで実行してください。「PAUSE」の場合,-idオプションのほかに-Rオプションを指定して実行してください。
  4. 手順1で停止したサービスを起動する。
    JP1/AJS2サービスをホットスタート,またはウォームスタートで起動してください。なお,ホットスタート,またはウォームスタートで起動する場合は,スケジューラーデータベースと実際のジョブの実行状況を調査してから運用してください。これは組み込みDBが異常終了した直前までしかスケジューラーデータベースの状態が保持されないで,ほかの制御情報と不整合が発生しているおそれがあるためです。スケジューラーデータベースと実際のジョブの実行状況の不整合の判断が難しい場合はJP1/AJS2サービスをコールドスタートで起動して,ジョブネットを実行登録してください。

(3) 組み込みDB環境の構築

組み込みDBの環境構築方法については,マニュアル「JP1/Automatic Job Management System 2 セットアップガイド 5. スケジューラーデータベースに組み込みDBを使用する場合のセットアップ」(Windowsの場合),またはマニュアル「JP1/Automatic Job Management System 2 セットアップガイド 15. スケジューラーデータベースに組み込みDBを使用する場合のセットアップ」(UNIXの場合)を参照してください。

(4) 運用方法

障害発生時にアンロードログファイルとバックアップファイルを使用して回復するための運用方法を次に示します。

(a) バックアップファイルの取得方法

次に示す二とおりのバックアップファイルの取得方法があります。

(b) バックアップ方法の特徴

バックアップ方法の特徴を次の表に示します。

表3-23 バックアップ方法の特徴

バックアップ方法長所短所
JP1/AJS2サービス停止中にバックアップファイルを取得する方法アンロードログファイルの有無に関係なく,スケジューラーデータベースを回復できる。バックアップファイルを取得する前に,JP1/AJS2の運用を停止する必要がある。
バックアップ時点の状態に回復できる。
アンロードログファイルを使用すると,バックアップ時点以降の更新情報についても回復できる。
JP1/AJS2サービス稼働中にバックアップファイルを取得する方法JP1/AJS2の運用中でも,バックアップファイルを取得できる。バックアップ時点以降のアンロードログファイルを失った場合は,この方法で取得したバックアップファイルからの回復はできない。
バックアップ時点の状態には回復できない。

(c) バックアップ手順

バックアップの手順を次に示します。

ajsembdbbackupコマンドにはバックアップファイルの取得方法に関係なく,上記で示すオプション以外にも必要なオプションがあります。ajsembdbbackupコマンドの詳細については,マニュアル「JP1/Automatic Job Management System 2 コマンドリファレンス 1. コマンド ajsembdbbackup」を参照してください。

(d) バックアップファイルの取得タイミング

JP1/AJS2の環境に障害が発生した場合は,JP1/AJS2の環境とスケジューラーデータベースの環境を,同期を取って回復する必要があります。そのため,JP1/AJS2の運用を停止できるときは,JP1/AJS2のバックアップファイルを取得するとともに,-sオプションを指定しないajsembdbbackupコマンドを実行して,スケジューラーデータベースのバックアップファイルを取得してください。バックアップファイルを取得した場合,以前取得したバックアップファイルは任意の方法で削除して問題ありません。

運用中については,定期的に-sオプションを指定したajsembdbbackupコマンドを実行して,スケジューラーデータベースのバックアップファイルを取得してください。

バックアップファイルの取得時期は,少なくても次に示すタイミングで実施してください。次に示すタイミングより早いタイミングで実施しても問題ありません。

バックアップファイルを取得することで,バックアップファイル取得時点より前に作成されたアンロードログファイル,および以前取得したバックアップファイルの削除が可能になります。アンロードログファイルおよびバックアップファイルの削除方法については,(e)を参照してください。

バックアップファイルの取得タイミングを次の図に示します。

図3-44 バックアップファイルの取得タイミング(アンロードログ運用)

[図データ]

(e) バックアップファイルとアンロードログファイルの管理

スケジューラーデータベースの回復時に,バックアップファイルとともにアンロードログファイルが必要になるため保存しておく必要があります。

それぞれのファイルの管理について,次に示します。

●アンロードログファイル

JP1/AJS2の運用を続けると,アンロードログファイルを作成し続けるため,アンロードログファイル作成ディレクトリを含むディスクの容量が不足することがあります。このディスク容量の圧迫を回避する方法を次に示します。

●バックアップファイル

アンロードログファイルが使用できなくなると,JP1/AJS2サービス稼働中に取得したバックアップファイルから回復できなくなるため,JP1/AJS2サービス停止中に取得したバックアップファイルについても保存してください。

(5) 障害発生時の組み込みDBの回復手順

障害ケースごとの回復手順を次に示します。

なお,回復手順で使用するajsembdboplogコマンド,ajsembdbbackupコマンド,ajsembdbrstrコマンドについてはマニュアル「JP1/Automatic Job Management System 2 コマンドリファレンス 1. コマンド」を,ajsembdbbuildコマンド,ajsembdbsetupコマンド,ajsembdbunsetコマンドについてはマニュアル「JP1/Automatic Job Management System 2 セットアップガイド 20. セットアップ時に使用するコマンド」を参照してください。

(a) データ領域のディスクに障害が発生した場合

  1. アンロードログファイルを取得する。
    障害発生直前の更新状態に回復する場合,障害発生直前の更新情報が格納されているシステムログからアンロードログファイルを作成する必要があります。
    アンロードログファイルは,ajsembdboplogコマンドを実行することで作成できます。
    ajsembdboplogコマンドの指定例を次に示します。
    ajsembdboplog -f -g log4※1 -o /unloadlog/unloadlog_file※2
    注※1
    -gオプションの指定値は,ajsembdbstatusコマンドに-lオプションを指定して実行することで,求められます。_JA0の組み込みDB識別子でセットアップした環境がすでに構築されている場合のajsembdbstatusコマンドの実行例を次に示します。

    ajsembdbstatus -l -id _JA0

    Group    Type Server   Gen No.  Status  Run ID    Block No.         Ex-Status
    log1     sys  ajs2            1 os----u 47576555        1       63  --------
    log2     sys  ajs2            2 os----u 47576555       64       64  --------
    log3     sys  ajs2            3 os----u 47576555       65       65  --------
    log4     sys  ajs2            4 oc-d--u 47576555       66       66  --------
    log5     sys  ajs2            0 os----u 00000000        0        0  --------
    log6     sys  ajs2            0 os----u 00000000        0        0  --------

    実行例の場合は,Statusに表示されている文字列(下線部分)のうち,左から2文字目が「c」と表示されている「log4」を-gオプションに指定する必要があります。
    注※2
    この指定例では,出力先ファイル名(アンロードログファイル名)に「/unloadlog/unloadlog_file」を仮定しています。
    なお,バックアップ時点に回復する場合は,この操作は不要です。

これ以降の手順については,「3.5.5(4)(a) データ領域のディスクに障害が発生した場合」の回復手順に従って,操作を実施してください。

ただし,スケジューラーデータベースの回復は,次に示す内容で実施してください。

障害発生直前の状態に回復する場合は,ajsembdbrstrコマンドに,-lオプションを指定して実行してください。-lオプションに指定するアンロードログファイルは,手順1で取得したアンロードログファイルを含め,バックアップファイル取得以降に作成されたアンロードログファイルを指定してください。

JP1/AJS2サービス停止中に取得したバックアップファイルの取得時点に回復する場合は,-lオプションを指定する必要はありません。

(b) 組み込みDBのシステムログファイルのディスクに障害が発生した場合

組み込みDBのシステムログファイルに障害が発生した場合,(a)と同様に組み込みDBを再構築する必要があります。(a)の回復手順のうち手順1については,システムログファイルを二重化している場合にだけ実施できる操作です。

(c) JP1/AJS2と組み込みDBに同時に障害が発生した場合

  1. 障害を取り除く。
  2. JP1/AJS2をバックアップファイルからリカバリーする。
    JP1/AJS2のリカバリーについては,「11. バックアップとリカバリー」を参照してください。
  3. 該当するスケジューラーデータベースを使用するスケジューラーサービス,JP1/AJS2 Monitorサービスを含む,スケジューラーデータベースにアクセスするサービスをすべて停止する。
  4. スケジューラーデータベースを回復する。
    ajsembdbrstrコマンドに-lオプションおよび-lrオプションを指定しないで実行してください。
    この場合,JP1/AJS2サービス停止中に取得したバックアップファイルが必要になります。
  5. 手順3で停止したサービスを起動する。
    必要に応じて,JP1/AJS2サービスをコールドスタートで起動してください。

以上の手順を実施することで,JP1/AJS2と組み込みDBで同期を取ってバックアップファイルを取得した時点の状態まで回復できます。

(d) JP1/AJS2に障害が発生した場合

(c)の手順で回復してください。

(6) 注意事項

アンロードログ運用についての注意事項を次に示します。

(a) 環境構築時の注意事項

システムファイルを二重化すると,二重化していない場合に比べ,システムファイルの容量は増加します。必要なディスク容量については,マニュアル「JP1/Automatic Job Management System 2 セットアップガイド 5.1 組み込みDBを使用する場合の準備」(Windowsの場合),またはマニュアル「JP1/Automatic Job Management System 2 セットアップガイド 15.1 組み込みDBを使用する場合の準備」(UNIXの場合)を参照してください。

(b) 運用時の注意事項

(c) 回復時の注意事項