ここでは、Identity Manager のアップグレードに関する用語について説明します。
一部の節では、Identity Manager 「製品」と Identity Manager 「アプリケーション」を区別して説明しています。
Identity Manager 製品とは、標準状態の製品と、標準のサンプル、JSP ファイル、JAR、および設定オブジェクトを表します。
Identity Manager アプリケーションとは、お客様による Identity Manager の配備を表します。これらは一意に設定され、カスタマイズ、カスタムコードおよび修正した JAR ファイルの追加、ラベルの変更などが行われています。
本書では、次に示す異なるタイプの環境が使用されていることを想定しています。
「開発環境」は、ソース管理を設定、カスタマイズ、および使用して、ほかの環境にプロモートする Identity Manager アプリケーションのイメージを構築する環境です。各ターゲット環境で実行するアップグレード手順も、この環境で作成します。
「テスト環境」は、管理されたデータに対してアップグレード手順をテストし、作成した Identity Manager アプリケーションの管理されたテストを実行する環境です。
「品質管理環境」では、本稼働環境を厳密にシミュレートしたデータ、ハードウェア、およびソフトウェアに対してアップグレード手順をテストし、作成した Identity Manager アプリケーションのテストを指定したユーザーに許可します。
本書では、特定のバージョンの Identity Manager アプリケーションを生成し、そのバージョンを開発環境からテスト環境、テスト環境から品質管理環境、品質管理環境から本稼働環境に移動するプロセスを、「プロモート」と呼びます。
設定、カスタム設定オブジェクト、カスタムコード、テスト計画、および自動化されたテストはすべて、ソース管理ツールを使用して管理するようにしてください。CVS や Subversion などのソース管理ツールはいずれも、任意の数のテキストファイルまたはバイナリファイルに対する個々の変更を追跡し、特定のバージョンの Identity Manager アプリケーションを再生成することができます。本書では、これらのツールを総称して「ソース管理」と呼びます。
これらのソース管理されたファイルの一部は、各環境に応じて作成する必要があります。特に、設定オブジェクトには各環境で異なる値が格納されます。特定の Identity Manager リソースオブジェクトは、開発環境、テスト環境、および本稼働環境のそれぞれで、異なるホストマシンをポイントする場合があります。
多くのお客様は、NetBeansTM 用および Eclipse 用の Identity Manager IDE プラグインを使用して、各環境に応じた Identity Manager アプリケーションを生成しています。Identity Manager IDE プラグインには、設定ビルド環境 (Configuration Build Environment、CBE) が含まれます。一部のお客様は、Identity Manager IDE プラグインよりも前の、古いバージョンの CBE を使用しています。少数のお客様は、専用のメカニズムや自社製のメカニズムなどの、その他のツールや方法を使用しています。本書では、これらのツールを総称して CBE と呼び、また Identity Manager IDE もその本質として CBE と表します。
Identity Manager IDE プラグインや古いバージョンの CBE は、環境に固有の値をプレースホルダの値で置き換えることにより、設定オブジェクトをパラメータ化し、コードをパラメータ化できます。各環境に適切な Identity Manager アプリケーションのイメージを生成するために、これらのツールはプレースホルダを各環境に適切な設定値で置き換えます。パラメータ化されたオブジェクトをソース管理で管理すると、予測および反復可能なプロセスを使用して、同じバージョンの Identity Manager アプリケーションを各ターゲット環境用に構築することができます。
本書では、タグが付けられたレベルのアーティファクトを「ベースライン」と呼び、ソース管理された設定オブジェクト、ライブラリ、およびカスタムコードを含み、特定のバージョンの Identity Manager アプリケーションに対応します。CBE はこのベースラインから、各ターゲット環境に適切な Identity Manager アプリケーションの「イメージ」を生成できます。イメージは、特定の環境に合わせて作成されたアプリケーションの完全な作業コピーです。
ソース管理には少なくとも、Identity Manager アプリケーションの、現在本稼働環境に配備しているバージョンのベースラインが含まれている必要があります。ソース管理には、以前のバージョンの Identity Manager アプリケーションのベースラインや、新しい機能 (変更された設定、変更されたワークフロー、変更されたフォーム、統合用の新しいカスタムコードなど) をロールアウトするために開発しているバージョンのベースラインを含めることもできます
ベースラインはいずれも、対応するバージョンの Identity Manager アプリケーションを完全に再構築できるようにしてください。一部のお客様は、Identity Manager 製品自体をベースラインに含めています。また、Identity Manager 製品のイメージを別に保存して、ベースラインのアーティファクトを使用して製品イメージに独自の設定やカスタマイズを追加している場合もあります。
「スキップレベル (「マルチホップ」) アップグレード は、本稼働環境を現在の Identity Manager 製品のバージョンから、次のメジャーリリースよりも新しいバージョンに直接更新します。一般的に、スキップレベルアップグレードでは連続したアップグレードが必要ですが、ターゲット環境を 1 回でターゲットの Identity Manager バージョンに直接更新するアップグレード手順を作成することは、技術的に可能であり、一部のお客様でも可能であることが確認されています。
マルチホップアップグレードに関する特別な注意事項については、第 6 章スキップレベルアップグレードに関する注意事項で説明します。アップグレードの進め方を判断できない場合や、これらの注意事項に不明な点がある場合は、アップグレードの計画と実行について Sun のプロフェッショナルサービスにご相談ください。
本書では、Identity Manager 製品の設定オブジェクトを編集することを、「設定」と呼びます。設定オブジェクトを編集するには、Identity Manager 管理者インタフェースを使用するか、公開されているドキュメントに従ってリポジトリオブジェクトを編集します。たとえば、設定には System Configuration や Reconciliation Policy の値の指定が含まれます。また、ターゲットシステムを表すリソースオブジェクトの定義や、Identity Manager が管理するアプリケーションの定義なども、設定に含まれます。
本書の趣旨として、「カスタマイズ」はユーザーが作成したコード、ファイル、またはリポジトリオブジェクトを表します。カスタマイズには、独自の Java コードの追加、JSP ファイルの追加または変更、およびワークフロー、フォーム、規則などの独自の XPRESS コードの作成が含まれます。独自の設定オブジェクトやメッセージカタログの作成も、カスタマイズと見なされます。
Sun のプロフェッショナルサービスでは、これらの用語の定義が多少異なります。たとえば、Sun のプロフェッショナルサービスでは、お客様に固有のワークフローが「設定」と見なされる場合があります。
本書での基本的な区別は、お客様が既知のオブジェクトや既知のタイプのオブジェクトのインスタンス内で指定した値を、Identity Manager 製品アップグレードが自動的に保存および更新することです。これらは「設定」です。Identity Manager 製品アップグレードは、お客様が作成したコードまたはオブジェクトを変更しようとしません。これらは「カスタマイズ」です。
本書では、Identity Manager 製品のすべてのバージョンの一部であるアップグレードメカニズムを、「アップグレードプロセス」と呼びます。新しいバージョンの Identity Manager にはそれぞれ、更新されたコードだけでなく、update.xml スクリプトも含まれます。この update.xml スクリプトは、既存のリポジトリオブジェクトを更新後のコードで動作するように更新するときに、ユーザーの設定を慎重に保存します。Identity Manager のフルリリースには、サンプルのデータベーステーブルスクリプトが含まれる場合もあります。これらのサンプルデータベーステーブルスクリプトは、既存のデータを慎重に移行して、データベースの定義を更新されたコードで動作するように更新します。
本書では、作成および保守するドキュメントを表すために、「アップグレード手順」という用語を使用します。多くの場合、アップグレード手順はチェックリストの形式をとります。アップグレード手順には、Identity Manager アプリケーションをアップグレードするために各ターゲット環境で実行する計画を正確に記述します。「タスク 4: アップグレード手順の準備」を参照してください。
本書では、「アップグレードプロジェクト」の段階について説明します。アップグレードプロジェクトは、ベースとしている Identity Manager 製品の新しいバージョンで動作するように、Identity Manager アプリケーションをアップグレードするための作業です。アップグレードプロジェクトには、開発環境で Identity Manager のアップグレードプロセスを実行したあとに、設定とカスタマイズを保守および再テストする作業が含まれます。アップグレードプロジェクトには、各ターゲット環境で実行するアップグレード手順を保守および再テストする作業も含まれます。