本文へジャンプ

IBM PowerHA SystemMirror for i 入門 ―独立ASP

IBM PowerHA SystemMirror for i とは?

IBM PowerHA SystemMirror for i(以下PowerHA for i )は、Power System上のIBM i 環境における高可用性、災害対策ソリューションを提供するPower Systems ソフトウェアの1つです。PowerHA for i は、ハードウェア・ベースの高可用性・災害対策機能を提供し、ストレージの切り替えやストレージ間のコピー機能をベースに実装されています。PowerHA for i に関する情報は以下のURLを参照してください。

PowerHA for i のコンポーネントは以下の図のとおりとなります。

IBM i 7.1 PowerHA SystemMirror for i
IBM i 7.1 PowerHA SystemMirror for iの概要図

PowerHA for i は、OSベース・テクノロジーとストレージ・ベース・テクノロジーの2つの機能から成り立っています。OSベース・テクノロジーは、IBM i オペレーティング・システムの機能により、ディスクのコピーや切り替えを行います。ストレージ・ベース・テクノロジーは、IBM i に直接接続されたIBMストレージ製品(DS8000シリーズなど)のリモート・コピー機能やFlashCopyなどの機能をIBM i より管理することにより、高可用性、災害対策環境を実現するものです。つまり、OSベース・テクノロジーは、OS機能により、実装されるので、ストレージのタイプは、内蔵ディスク、仮想ディスク、IBM ストレージ製品など様々ものに対応することができます。一方、ストレージ・ベース・テクノロジーについては、IBMストレージ製品が必須となります。現在サポートされているIBMストレージ製品は、DS8000シリーズ、DS6000シリーズとなります。

PowerHA for i は、ハードウェア・ベースの高可用性、災害対策環境を提供することは、すでにお話しましたが、これを実現するためのもう1つの要件として、独立ASP(Independent Auxiliary Storage Pool:以下IASPと略) があげられます。今回はこの独立ASPについて、勉強したいと思います。

ASPとは?

ASPは、Auxiliary Storage Poolの略で補助記憶域プールと訳されます。IBM i は、ASP単位で独立した仮想アドレス範囲を持っており、あるディスク・ドライブに障害が発生した場合に、そのディスク・ドライブが属しているASP以外のASPに影響を与えなくすることが可能です。ASPには大きく分けて2つの種類があります。システムASPおよびユーザーASPです。

システムASPは、IBM i の起動に必要なSLICやOS自体のコードをはじめとした様々なデータが格納されている記憶域プールです。IBM i にて、ユーザーがASPを作成せず、ディスク・ドライブをOSに認識させる場合には、全てのディスク・ドライブがこのシステムASPに属することになります。

ユーザーASPはユーザーが独自で作成することが可能な補助記憶域プールです。ユーザーASPには2つの種類が存在します。基本ユーザーASPとIASPです。基本ユーザーASPとIASPの大きな違いは、システム稼動時にASP単位で構成を活動化/非活動化できるかどうかです。基本ユーザーASPは、ストレージ管理の観点からは独立した管理が可能ですが、基本ユーザーASP内のオブジェクトのオブジェクト属性は、システムASP内に格納されています。また、システム稼動時には常に利用可能になっている必要があり、IBM i の起動時には基本ユーザーASPは、システムASPと同様に使用可能でなければなりません。以下の図はASPの概念を示したものです。

ASP概要図

IASP概要

IASPはOS/400 V5R1からサポートされた概念で、システムASPとは独立して構成を活動化/非活動化する、すなわちOSの稼動時に自由に活動化/非活動化することが可能です。IASP内のオブジェクトのオブジェクト属性も全てIASP内に格納されています。自由に活動化/非活動化することが可能なことからクラスタリング環境においてシステム間で切り替えて使用することができます。IASPはOS/400 V5R1よりサポートが開始されましたが、当時はUDFS(User Defined File System:ユーザー定義ファイル・システム)のみのサポートでした。OS/400 V5R2以降はプライマリー/セカンダリーIASPにおいてライブラリー・オブジェクトをサポートしています。

IASPをIBM i にて使用する際には、ASPグループと呼ばれる単位でOSに認識させて使用する(構成の活動化/非活動化)こととなります。そのため、クラスタリング環境において、IASPをノード間で切り替え可能なように構成する際にもASPグループ単位で切り替えがなされることとなります。

ASPグループは実際には、1個のプライマリーIASPと0個または1個以上のセカンダリーIASPから構成されます。グループ内の各IASPはストレージ上では独立して存在していますが、グループ内では1つに結合されて動作します。グループ内の1つのIASPの構成を活動化/非活動化するとグループ内の残りのIASPも同時に構成の活動化/非活動化がなされます。この部分の考え方はシステムASPと基本ユーザーASPの関係に類似しています。以下は、IASPグループを図に示したものです。

IASPグループ概要図

ASPグループの実用的な例としては、ジャーナル項目を含むオブジェクトからジャーナル・レシーバーを分離することがあります。プライマリー・ディスク・プールにはライブラリー、ジャーナル、ジャーナル処理するオブジェクトを配置し、セカンダリー・ディスク・プールには関連するジャーナル・レシーバーを配置することができます。 ジャーナルおよびジャーナル・レシーバーは、パフォーマンスと回復可能度を最大にするために分離されていますが、ディスク・プール・グループ内では一緒に動作します。

IASPの利用

1:IASPの活動化

ここでは、IASPの利用方法について解説していきます。IASPの構成方法については、インフォメーション・センターの以下のリンクを参照してください。

前にも述べたようにIASPはシステムASPから独立して活動化/非活動化することができます。つまりIASPを利用するためには、まずはIASPを活動化する必要があります。IASPを活動化するためには、VRYCFGコマンドを利用します。または、WRKCFGSTSコマンドからも活動化することができます。以下にコマンドの例を記述しますので参考にしてください。

VRYCFGコマンドによる活動化
VRYCFG CFGOBJ(IASP01) CFGTYPE(*DEV) STATUS(*ON)

WRKCFGSTSコマンドによる活動化
WRKCFGSTS CFGTYPE(*DEV) CFGD(*ASP)
構成状況の処理 画面キャプチャー

活動化のプロセスを実行中のIASPのプロセスを以下のコマンドで確認することができます。

DSPASPSTSコマンド
DSPASPSTS ASPDEV(IASP01)

DSPASPSSTSコマンドの例:
ASP構成変更状況の表示 画面キャプチャー

上図を見ていただくとわかるようにIASPの活動化のプロセスは、IPL時のそれと類似していることがわかると思います。また、IASPの活動時には、システム相互参照ファイルのマージ処理が行われます。

この処理は、システムASPとIASP上に配置されているそれぞれのシステム相互参照ファイルをマージすることで全てのユーザー/プログラムがIASP上のデータを参照可能にするための処理となります。実際のIASPへのアクセス方法は後述します。

DSPASPSTSコマンドでIASPの活動化が正常に完了したことを確認することもできますが、先に記述したWRKCFGSTSコマンドでも活動化の完了を確認することができます。

WRKCFGSTS CFGTYPE(*DEV) CFGD(*ASP)

上記コマンドを実行し、IASP装置記述が以下の図のように“AVAILABLE”になっていれば、活動化が正常に完了したことを示しています。
構成状況の処理 状況“AVAILABLE” 画面キャプチャー

 

2:IASPへのアクセス

IASPが活動化できたことを確認したら、早速IASPにアクセスしてみましょう。IASPにアクセスするには、以下の2通りの方法があります。

SETASPGRPコマンドによる接続
特定のIASP(ASPグループ)へ接続するために、SETASPGRPコマンドを使用することができます。このコマンドを実行することで任意の1つのIASPに接続することができます。この場合、一時点では1つのIASPにのみ接続することができます。コマンドの例を以下に示します。

SETASPGRP ASPGRP(IASP01)

実行後、WRKLIBコマンドを実行すると以下のように表示され、IASP内のオブジェクトが表示されていることがわかります。
ライブラリーの処理 画面キャプチャー

IASPへの接続を解除する場合には、以下のようにSETASPGRPコマンドを実行します。

SETASPGRP ASPGRP(*NONE)

ジョブ記述でIASPを指定する
ジョブ記述でIASPを設定することによって、サインオン時に自動的にIASPへアクセスすることができます。以下のようにジョブ記述の「初期ASPグループ(INLASPGRP)」パラメーターに接続するIASPを指定し、このジョブ記述をユーザー・プロファイルに指定しておくことにより、サインオン時に自動的にIASPへ接続することができます。
ジョブ記述作成 画面キャプチャー

 

3:IASPへのオブジェクトの作成

次にIASPへオブジェクトの作成を行ないます。皆さんご存知のようにIBM i のファイル・システムは、IFS(統合ファイル・システム)と呼ばれ、様々な形式のファイルを管理することができます。IBM i のファイル・システムについては、インフォメーション・センターの統合ファイル・システムを参照してください。

ここでは、ライブラリー・ファイル・システムへのオブジェクトの作成方法とIFS上のディレクトリー形式のファイル・システムへのオブジェクトの作成方法について述べていきます。

ライブラリー・ファイル・システム
IASP上のライブラリー・ファイル・システムにオブジェクトを作成するということは、IASP上にライブラリーを作成し、そのライブラリー上にオブジェクトを作成するということになります。つまり、まず始めにIASP上にライブラリーを作成することになります。IASP上にライブラリーを作成するには、以下の図のようにCRTLIBコマンドで、“ASP装置(ASPDEV)”パラメーターにIASPを指定することでIASP上にライブラリーを作成することができます。
ライブラリー作成 画面キャプチャー

ディレクトリー形式のファイル・システム
IASPを活動化すると以下のようにIASPと同じ名前のディレクトリーが/(ルート)配下に作成されます。
オブジェクト・リンクの処理

このディレクトリーの配下にサブディレクトリーもしくはストリーム・ファイルを作成/配置することで、IASP上にオブジェクトを作成/配置することができます。

この/(ルート)配下のIASP名をもったディレクトリーは、IASPが非活動時にはWRKLNKコマンドなどで表示されません。この他にIASP上にユーザー定義ファイル・システム(UDFS)を作成することもできます。UDFSについては、インフォメーション・センターのユーザー・定義ファイル・システム(UDFS)を参照してください。

IASPに配置可能なオブジェクトについて
IASPに配置可能なオブジェクトはIBM i 7.1では以下のオブジェクトになります。

【サポートされるオブジェクト・タイプ】

ALRTBL、BLKSF、BNDDIR、CHRSF、CHTFMT、CLD、CLS、CMD、CRQD、CSI、DIR、DTAARA、DTADCT、DTAQ、FCT、FIFO、FILE、FNTRSC、FNTTBL、FORMDF、FTR、GSS、IGCDCT、JOBD、JOBQ、JRN、JRNRCV、LIB、LOCALE、MEDDFN、MENU、MGTCOL、MODULE、MSGF、MSGQ、NODGRP、NODL、OUTQ、OVL、PAGDFN、PAGSEG、PDG、PGM、PNLGRP、PSFCFG、QMFORM、QMQRY、QRYDFN、SBSD、SCHIDX、SPADCT、SPLF、SQLPKG、SQLUDT、SRVPGM、STMF、SVRSTG、SYMLNK、TBL、USRIDX、USRQ、USRSPC、VLDL、WSCST

【サポートされないオブジェクト・タイプ】

AUTHLR、AUTL、CFGL、CNNL、COSD、CRG、CSPMAP、CSPTBL、CTLD、DDIR、DEVD、DOC、DSTMF1、EDTD、EXITRG、FLR、IGCSRT、IGCTBL、IMGCLG、IPXD、JOBSCD、LIND、MODD、M36、M36CFG、NTBD、NWID、NWSD、PRDAVL、PRDDFN、PRDLOD、RCT、SOCKET、SSND、S36、USRPRF








サポートされる/されないオブジェクトの詳細については、インフォメーション・センターの「サポート/非サポート・オブジェクト・タイプ」を参照してください。

IASPの考慮点

IASPを使用する場合には、オブジェクトの配置や操作について以下のような考慮する点があります。

ライブラリーについて

IASP環境では、単一のIBM i システムにて複数のデータベースを持つこととなります。ASPグループには1つのプライマリーIASPと0個以上のセカンダリーIASPを含めることが可能です。プライマリーIASPとセカンダリーIASPは同じデータベース・スペース名のスペースを共用することとなるので、両者間で同一データベースを共用することとなります。そのため、1つのASPグループは1つのデータベースと同等と言えます。

異なるASPグループであれば各ASPグループ内に同一名称のライブラリーを配置することが可能です。ユーザーは一時点では1つのASPグループのみ使用可能となるため、他のASPグループ内のオブジェクトを認識することはないためです。しかし、*SYSBASはユーザーに常に認識されます(使用可能である)ため、*SYSBAS内にあるライブラリーの名称と同一名称のライブラリーをASPグループに配置することはできません。ASPとライブラリー名の関連については、以下の図を参照してください。

ASPとライブラリー名の概要図

この例では、システムASPが1つとIASPグループが2つある構成を説明しています。*SYSBASにLibname1というライブラリーを作成した場合、それぞれのIASPグループにはLibname1というライブラリーを作成することができません。これは、*SYSBASとIASPグループはName Spaceを共有するため、同じ名前のライブラリーは許されないことを示しています。同様に*SYSBASにLibname2というライブラリーを作成することもできません。

一方、それぞれのIASPグループにLibname2というライブラリーが作成されていますが、これは、IASPグループ間でName Spaceを共有することはないため、IASP Group1、2にそれぞれLibname2というライブラリーを作成することが可能です。(もちろんLibname2を先に*SYSBASに作成した場合は、IASP上にLibname2というライブラリーを作成できません。)

オブジェクト管理について

ジョブ/スレッドに対して使用可能なASPグループとして設定がなされていない場合であっても、ASPグループを識別するためのパラメーターが提供されているシステム・コマンドであればASPグループにアクセスすることが可能です。例として、SAVxxxコマンドやRSTxxxコマンドが挙げられます。これらのコマンドにはASPDEVパラメーターやRSTASPDEV、RSTASPパラメーターが提供されています。

IASPの構成の活動化/非活動化について

IASPはシステムIPLの際には、自動的に活動化されません。スタートアップ・プログラムにてASP装置記述をOnする処理を追加するなど、明示的に活動化する必要があります。

IASPの用途

IASP/ASPグループを有効に使用できる環境には、単一システム環境と複数システム・クラスター環境の2つの環境があります。

単一システム環境

単一システム概要図

単一システム環境では、IASP/ASPグループは単一のサーバーに専用として接続されます。IASP/ASPグループのデータは自己完結型なので、IASP/ASPグループは、他のディスク・プールから独立して使用不可にすることができます。IASP/ASPグループは、システムがアクティブになっていれば、IPLを実行せずに使用可能にすることもできます。このようにIASP/ASPグループを使用することで、例えば通常の日常のビジネス・プロセスを必要としない大量のデータがある場合に役立ちます。こういったデータを含むIASP/ASPグループは、必要になるまでオフラインにしておくことができます。大量のストレージを通常はオフラインにしておくことで、IPL およびストレージの再利用などの操作の処理時間を短縮できます。

単一システムのIASP/ASPグループでは以下のことを行うことが可能です。

  1. 必要な場合のみIASP/ASPグループを活動化できる機能を用いて、使用頻度の低いデータを分離する
  2. システム始動時間を短縮する。
  3. IASP/ASPグループによる保管および復元を管理する。
  4. IASP/ASPグループによるストレージを再利用する。
  5. 複数のデータベース間でデータを分割する。
  6. 特定のアプリケーションに関連するデータまたは特定のユーザーのグループに関連するデータを分離する。
  7. 複数の小規模システムのデータを、大規模システム上のIASP/ASPグループに統合する(複数の営業所がある場合など)。
  8. システム全体に影響を与えないアプリケーションの保守を実行する。

前述したとおり、IASPにはIFSオブジェクトも配置し、使用することも可能です。

  1. Lotus Dominoデータ・ディレクトリー
  2. Linuxファイル・システム
  3. Webアプリケーション(WebSphere関連オブジェクトなど)
  4. WebSphere MQ

その他、UNIXやWindowsからポーティングしたアプリケーションの配置、ネットワーク・サーバー記憶域の配置などにも使用することができます。

複数システム環境

複数システム概要図 地理的ミラーリング機能による遠隔ミラーリング
IASPを複数システム環境で使用する際の選択肢として、i5/OS V5R3よりサポートが開始されたクロス・サイト・ミラーリング(Cross-site Mirroring:XSM)機能が挙げられます。XSMは地理的ミラーリングおよび切り替え、つまりプライマリー・ロケーションでの障害発生時に(別のロケーションに置かれていることが多い)ミラー・コピーへの自動的なフェイルオーバーのサービスを提供するものです。

XSM機能は大きく以下2つの機能から構成されています。

  1. 地理的ミラーリング機能
  2. ミラー・コピーへの切り替え機能

地理的ミラーリングを使用すると、地理的に分離した2つのサイトで、独立ディスク・プールの同一のコピーを2つ保守することができます。重要なデータの2番目のコピーをリモート・ロケーションに保管することにより、データ保護およびシステムの可用性を強化することができます。例えば、自然災害時などに役立ちます。IBM i 7.1では非同期モードを新たにサポートすることにより、災害対策機能としてより強化が図られています。

切り替え可能IASP構成は、IASPを切り替え可能タワー内に構成したもので、オプションが増え、より多数のバックアップ・ノードを使用できるようになります。したがって、別のサイトにあるシステムへの計画/非計画切り替えに加えて、同一サイト内のシステム間での独立ディスク・プールの計画/非計画切り替えが可能になります。

複数システムでのIASPの利用方法として、この他にIBMストレージ製品と組み合わせたLUNレベル・スイッチング機能があります。この機能は、IBM i 7.1より実装された新機能で切り替え可能IASPの後継機能として位置づけられています。LUNレベル・スイッチングのイメージは以下の図のようになります。

本番機障害時にバックアップ機にパスを切り替え

まとめ

IASPは、様々な用途で利用することができます。複数のシステムを統合する際の1つのアプローチとして利用することができます。IASPを利用することで同じライブラリー名を持つ異なるシステムをデータの統合を行うことなくシステム統合することが可能です。また、IASPはPowerHA for i の前提となるテクノロジーです。PowerHA for i はIASPを複数システムで切り替えたり、IASP上のデータを複製したりとIASPをベースとした実装であることを理解していただけたと思います。IASP化に当たっては、難しく考えている方も多いと思いますが、実際には、SETASPGRPコマンドのCLプログラムへの組み込みや対話型ジョブについては、ジョブ記述の変更で対応を行うことができます。

PowerHA for i を使った冗長化/災害対策環境やシステムの統合などにIASPの技術をお役立てください。

IBM、IBMロゴ、ibm.com、DS6000、DS8000、i5/OS、OS/400、PowerHA、Power System、WebSphereは、世界の多くの国で登録されたInternational Business Machines Corporationの商標です。他の製品名およびサービス名等は、それぞれIBMまたは各社の商標である場合があります。現時点でのIBMの商標リストについては、www.ibm.com/legal/copytrade.shtml(US)をご覧ください。
Linuxは、Linus Torvaldsの米国およびその他の国における登録商標です。
UltriumおよびUltriumロゴは、HP, IBM Corp.およびQuantumの米国およびその他の国における商標です。
Windowsおよび Windowsロゴは Microsoft Corporationの米国およびその他の国における商標です。