十分な準備を行うことにより、スムーズなアップグレードを実施できます。アップグレードの目標を示す一覧を作成すると、会社のニーズに最適な決定を行う際に役立ちます。
アップグレードプロセスの計画段階には、次のタスクが含まれます。
Identity Manager の新しいリリースへのアップグレードでは、環境内のプラットフォームに変更が必要となる場合があります。本稼働環境を評価してドキュメント化することにより、最適なアップグレードパスを決定したり、アップグレードの複雑さを見積もったりすることができます。
この節では、本稼働環境の検証で実行する手順について説明します。
ソース管理および CBE を使用してこの情報を管理すると、Identity Manager のインストールのドキュメントおよびカスタムコンポーネントのドキュメントとして利用できます。特に本稼働環境に注意して、これらの情報を検証し、Identity Manager アプリケーションを配備する各環境を十分に把握してください。
最適なアップグレードパスを決定するには、第 7 章評価用ワークシートに示すワークシートを使用して、現在のプラットフォームのコンポーネントの一覧を作成します。コンポーネントには、次のようなものがあります。
インストールするアップグレードバージョンに対して、正しいバージョンのコンポーネントを使用していることを確認してください。詳細は、『Sun Identity Manager 8.1 リリースノート』の「サポートされているソフトウェアと環境」を参照してください。
Oracle® リポジトリを使用している場合、Identity Manager リポジトリの DDL が使用するデータ型は、古い Oracle JDBC ドライバでは適切に処理されません。ojdbc14.jar に含まれる JDBC ドライバは、ログテーブルの一部の列を正しく読み取ることができません。
Identity Manager を正しく動作させるには、JDK 5 ドライバを ojdbc5.jar にアップグレードする必要があります。
アプリケーションサーバーのバージョンと、追加されているパッチまたはサービスパックをすべて記録します。さらに、次の情報も記録します。
アプリケーションサーバーで必要な Java Development Kit (JDKTM) のバージョン。Identity Manager をアップグレードする場合は、同じベンダーから提供された JDK を使用する必要があります。
データベースサーバーのバージョンと、追加されているパッチまたはサービスパックをすべて記録します。
次の手順を実行して、動作している Identity Manager Gateway のバージョンを確認します。
コマンドウィンドウを開き、Gateway サーバーごとに次のコマンドを実行します。
gateway -v |
結果を記録します。
各 Gateway サーバーのオペレーティングシステムのバージョンを記録します。
Gateway サーバーのバージョンは、常に Identity Manager のバージョンと同じにしてください。
lh コンソールで必要な、現在インストールされている JRETM のバージョンを記録します。また、インストールされている JRE のベンダーの名前も記録します (Sun、IBM、Oracle など)。Identity Manager をアップグレードするときに、同じベンダーが提供する JRE を使用する必要があります。
サポートされているリソースの名前とバージョン、および追加されているパッチまたはサービスパックをすべて記録します。
Web サーバーのバージョンと、追加されているパッチまたはサービスパックをすべて記録します。
最適なアップグレードパスを決定するには、第 7 章評価用ワークシートに示すワークシートを使用して、現在の Identity Manager のインストールのコンポーネントの一覧を作成します。
次の節では、この情報を収集する方法について説明します。
現在の Identity Manager インストールのバージョン番号を確認するには、Identity Manager コンソールを使用します。
Identity Manager には、インストールの情報を一覧表示および記録するための、次のユーティリティーが用意されています。
installed ユーティリティー: $WSHOME/bin ディレクトリでマニフェストを検索し、リリース、パッチ、サービスパック、およびホットフィックスのバージョン情報を表示します。
inventory ユーティリティー: リリースのパッケージに含まれているファイルを使用してファイルシステムを調査し、システムに追加されたファイルまたはシステムから削除されたファイルを表示します。このユーティリティーは、Identity Manager に標準装備されたマニフェストに基づいて、変更されたファイルを判定します。
installed および inventory ユーティリティーにアクセスするには、次の手順を実行します。
プロンプトで、次のコマンドを実行します。
プロンプトで、次のいずれかのコマンドを入力します。
installed [ option] [option ]...
inventory [ option] [option ]...
次の表に、installed ユーティリティーと inventory ユーティリティーで使用できるオプションを示します。
installed ユーティリティーのオプション
オプション |
機能 |
説明 |
---|---|---|
-h |
ヘルプ |
使用法を表示します。 |
-r |
リリース |
インストールされているリリースだけを表示します。 |
-p |
パッチ |
インストールされているパッチだけを表示します。 |
-s |
サービスパック |
インストールされているサービスパックだけを表示します。 |
-f |
ホットフィックス |
インストールされているホットフィックスだけを表示します。 |
必ず、すべてのサービスパックまたはパッチに関連するマニフェストファイルの名前を記録してください。たとえば、次のとおりです。
Identity_Manager_8_0_0_0_20080530.manifest |
inventory ユーティリティーのオプション
オプション |
機能 |
説明 |
---|---|---|
-a |
追加 |
追加されたファイルだけを表示します。 |
-d |
削除 |
削除されたファイルだけを表示します。 |
-h |
ヘルプ |
使用法を表示します。 |
-m |
変更 |
変更されたファイルだけを表示します。 |
-u |
変更なし |
変更されていないファイルだけを表示します。 |
第 7 章評価用ワークシートに示すワークシートを使用して、カスタムコンポーネントの一覧を作成します。カスタムコンポーネントには、次のものがあります。
Identity Manager IDE または古いバージョンの Consolidated Build Environment (CBE) を使用している場合、これらのコンポーネントのカスタマイズはすでにベースラインの一部になっています。この場合は、CBE のベースラインをドキュメントとして利用できます。
現在の Identity Manager インストールに大量のカスタム作業がある場合は、アップグレードについて Sun のプロフェッショナルサービスにご相談ください。
Version 7.1 および 8.0 の Identity Manager では、Identity Manager データベーステーブルの定義が大きく変更されました。
これまでに Identity Manager リポジトリのデータベーステーブルの定義を変更している場合は、更新された新しいテーブルで同じ変更を行うかどうかを判断する必要があります。
カスタマイズしたファイルシステムオブジェクトは、新しい Identity Manager リリースで正しく機能するように更新する必要があります。次の節で説明するように、環境内にあるカスタマイズしたファイルシステムオブジェクトの名前を一覧に示します。
Identity Manager の最近のバージョンでは、API が変更されている場合があります。インストール内の .jsp ファイルを変更している場合は、アップグレード中にこれらのファイルの更新が必要となる場合があります。Identity Manager から提供された JSP を配備中に変更している場合 (または、Identity Manager API を使用するカスタム JSP がある場合)、ターゲットリリースの新しい JSP 構造と API の変更に対応するように、これらの JSP ファイルを変更する必要があります。
API の変更については、アップグレードするリリースの『Identity Manager リリースノート』を参照してください。
inventory -m コマンド (「Identity Manager の評価ツール」を参照) を使用して、配備中に行なった JSP の変更を識別します。
JSP のカスタマイズについては、『Sun Identity Manager 8.1 Technical Deployment Overview』の第 11 章「Editing Configuration Objects」を参照してください。
デフォルトの Waveset.properties ファイルに対する変更をすべて記録します。
デフォルトの WPMessages.properties ファイルに対する変更をすべて記録します。
システムのその他のプロパティーファイルに対して行った変更をすべて記録します。
ターゲットの Identity Manager のバージョンに応じて、カスタムリソースアダプタの再コンパイルが必要となる場合があります。Identity Manager の API を使用するすべてのカスタム Java コード (カスタムリソースアダプタを含む) は、アップグレード中に再コンパイルが必要です。また、Identity Manager ライブラリを使用するその他の Java クラスも、再コンパイルの必要性を確認してください。
Identity Manager のスタイルシートに対する変更をすべて記録します。
カスタマイズしたリポジトリオブジェクトは、ターゲットの Identity Manager リリースで適切に動作するように保守が必要となる場合があります。次の節で説明するように、環境内にあるカスタマイズしたリポジトリオブジェクトをすべて記録します。
Identity Manager の SnapShot 機能を使用して、配備中のカスタマイズしたリポジトリオブジェクトのベースラインまたは「スナップショット」を作成できます。これらはアップグレードの計画に利用できます。詳細は、「ステップ 5: スナップショット作成」を参照してください。
現在の製品の拡張機能を利用するには、カスタマイズしたフォームの更新が必要となる場合があります。
現在の製品の拡張機能を利用するには、カスタマイズしたワークフローの更新が必要となる場合があります。
現在の製品の拡張機能を利用するには、カスタマイズした電子メールテンプレートのエクスポートが必要となる場合があります。
Identity Manager の Version 7.0 と Version 8.0 の間には、スキーマに関する重大な変更がありました。古いバージョンの Identity Manager からアップグレードする場合は、スキーマを更新する必要があります。
作成または更新したその他のカスタムリポジトリオブジェクトの名前をすべて記録します。場合によっては、次のオブジェクトを現在のインストールからエクスポートし、アップグレード後に新しいバージョンの Identity Manager に再インポートする必要があります。
管理グループ |
リソースフォーム |
管理ロール |
ロール |
設定 |
規則 |
ポリシー |
タスク定義 |
プロビジョニングタスク |
タスクテンプレート |
Remedy 設定 |
ユーザーフォーム |
リソースアクション |
|
Identity Manager の SPML 2.0 実装は、Version 8.0 で変更されました。それより前のリリースでは、SMPL メッセージで使用される SPML の objectclass 属性が、Identity Manager の User オブジェクトの objectclass 属性に直接マップされていました。現在、objectclass 属性は spml2ObjectClass 属性に内部的にマップされ、ほかの目的で内部的に使用されるようになりました。
アップグレードプロセスの間、objectclass 属性の値は、既存のユーザーに合わせて自動的に名前変更されます。objectclass 属性を参照するフォームが SPML 2.0 設定に含まれている場合、それらの参照を手動で spml2ObjectClass への参照に変更する必要があります。
Identity Manager はアップグレードの間に、サンプルの spml2.xml 設定ファイルを置き換えません。アップグレード前の環境で spml2.xml 設定ファイルを使用していた場合、このファイルには objectclass への参照を伴うフォームが含まれており、それを spml2ObjectClass への参照に変更する必要があることに注意してください。(属性が内部的に使用される) フォーム内の objectclass 属性を変更し、(属性が外部に公開される) ターゲットスキーマ内の objectclass 属性は変更しないでください。
Identity Manager の SnapShot 機能を使用すると、次のオブジェクトタイプをシステムからコピーして比較できます。
AdminGroup |
ResourceAction |
AdminRole |
Resourceform |
Configuration |
Role |
EmailTemplate |
Rule |
Policy |
TaskDefinition |
ProvisionTask |
TaskTemplate |
RemedyConfig |
UserForm |
手順については、「ステップ 5: スナップショット作成」を参照してください。
Identity Manager のアップグレードパスに関する最新情報は、『Sun Identity Manager 8.1 リリースノート』の「アップグレードパスとサポートポリシー」を参照してください。
一般的には、テストのタイムフレーム中に利用できる最新のリリースの Identity Manager にアップグレードしてください。たとえば、現在 Version 7.1.1 でテスト中で、この Identity Manager のバージョンが、現在のテストサイクルを開始した時点で最新のリリースであったと想定します。ここで、次の新しい リリース (7.1.2) が 7 月 10 日に予定されていて、次のテストサイクルの開始日が 7 月 15 日に予定されているとします。この場合、次のテストサイクルを開始するときに、7.12 にアップグレードするように計画してください。
必ず、本稼働環境のプラットフォームが新しいバージョンの Identity Manager 製品をサポートすることを確認してください。サポートされていない場合は、Identity Manager アプリケーションをアップグレードする前に、各環境のプラットフォームを更新するよう計画してください。ターゲット環境をアップグレードする前に、本稼働プラットフォームに一致するように各ターゲット環境を再設定します。一般的には、各ターゲット環境で実行するアップグレード手順の一部として、プラットフォームを更新する必要があります。
現在の Identity Manager 製品のバージョンとターゲットとする Identity Manager のバージョンの両方が、更新されたプラットフォームをサポートする場合は、Identity Manager アプリケーションをアップグレードする前に、独立した変更としてプラットフォームを更新し、この変更を本稼働環境までプロモートすることができます。
Identity Manager の各フルリリースに含まれる標準アップグレードプロセスでは、通常、既存のインストールが以前のメジャーリリースの任意のバージョンからアップグレードされます。
アップグレードを計画している Identity Manager のターゲットバージョンに関するリリースノートを確認してください。リリースノートには、リリースに固有のアップグレードに関する注意事項が説明されています。また、補足ドキュメント、バグの修正、既知の問題なども説明されています。
設定とカスタマイズを検証して、これらの設定とカスタマイズに影響を与える可能性のある Identity Manager 製品の変更を確認してください。
現在のリリースにインストールされているホットフィックスを確認してください。各ホットフィックスに関連するバグ番号を検索し、ターゲットにする Identity Manager の新しいバージョンに必要なホットフィックスがすべて含まれていることをリリースノートで確認してください。
Sun の新しい「パッチプロセス」は、以前のホットフィックスプロセスに代わるものです。パッチプロセスは累積的であるため、個別の修正プログラムに伴う問題がほとんど発生しないと期待できます。パッチプロセスの導入により、実際のバグ番号によって修正をより簡単に追跡できるようになります。ただし、古いバージョンに対して行われた修正が、新しいバージョンではまだ提供されていないという場合もあります。現在使用している Identity Manager のバージョンでどのプロセスを採用しているかに関係なく、必要なバグ修正のすべてが新しいターゲットの Identity Manager IDE のバージョンに含まれていることを確認する必要があります。
Identity Manager アプリケーションを 1 レベルを超えて (つまり、現在のバージョンの次のメジャーバージョンよりも新しいバージョンに直接) アップグレードする場合は、「スキップレベルアップグレードの段階」を参照してください。この参照先では、この節で説明したタスクがスキップレベルアップグレードでどのように変更されるかを説明しています。
アップグレードの次の段階に進む前に、現在の総合的なテスト計画を準備する必要があります。テスト計画の目的は、現在の Identity Manager アプリケーションのすべての機能が、アップグレードプロセス後も完全に維持されることを確認することです。
既存のテスト計画がある場合は、「既存のテスト計画の検証」に進んでください。
テスト計画を準備していない場合は、「テスト計画の作成」の説明に従ってテスト計画を作成してください。
既存のテスト計画は、テストする項目のすべてを扱っていますか。最新の内容ですか。固有の内容ですか。これらの条件を満たさない場合は、テスト計画を適切に修正する必要があります。
特定の機能セットのパフォーマンスについて特に注意が必要な場合や、Identity Manager アプリケーションが消費するシステムメモリーやデータベース領域などの項目に注意が必要な場合は、テスト計画でこれらの項目が測定されることを確認する必要があります。
Identity Manager 製品をアップグレードしたあと、または Identity Manager の設定とカスタマイズに重要な変更を行ったあとに、必ず Identity Manager アプリケーションを再テストしてください。
Identity Manager アプリケーションのテスト計画を準備していない場合は、計画を作成する必要があります。一般的なテスト計画は次のような内容です。
はじめに
このドキュメントの説明
関連ドキュメント
スケジュールとマイルストーン
ハードウェア
ソフトウェア (テストツール)
担当者
テストする機能とテストの手法
新しい機能のテスト
回帰テスト
テストしない機能
テストの配布物
依存関係とリスク
入口条件と出口条件
アップグレードの次の段階に進む前に、現在の総合的なアップグレード手順を準備する必要があります。詳細は、「アップグレードプロセスとアップグレード手順」を参照してください。
アップグレード手順の目的は、Identity Manager アプリケーションを各環境でアップグレードするときに、誰が何をするかを正確に指定することです。Identity Manager アプリケーションを各環境でアップグレードするときに、このアップグレード手順を作成および保守します。
既存のアップグレード手順がある場合は、「既存のアップグレード手順の検証」に進んでください。
アップグレード手順を準備していない場合は、「アップグレード手順の作成」の説明に従ってアップグレード手順を作成してください。
既存のアップグレード手順には、各環境で Identity Manager アプリケーションをアップグレードするときに、誰がいつ何をするかが正確に指定されていますか。環境ごとの手順の違いと、その違いの理由が明確に説明されていますか。アップグレード手順は最新ですか。アップグレード手順に、本稼働環境で実行する場合と同じ手順が、テスト環境と品質管理環境用に含まれていますか。これらの条件を満たさない場合は、アップグレード手順を適切に修正する必要があります。
本稼働環境に固有の重要な注意事項がありますか。注意事項がある場合、アップグレード手順では、同じ手順を品質管理環境でリハーサルする必要があります。「本稼働環境に関する特殊な注意点」を参照してください。本稼働環境でアップグレード手順にかかる時間が重要である場合は、各環境で各手順にかかった時間を記録するように、アップグレード手順で指示してください。特に品質管理環境のアップグレードは、本稼働環境のアップグレードにかかる時間についてのよい参考となります。
Identity Manager アプリケーションのアップグレード手順を準備していない場合は、アップグレード手順を作成する必要があります。
一般的に、アップグレード手順は次のように作成します。
補足的なドキュメントを含めることもできますが、アップグレード手順を実行する管理者は、明確に記述された完全で簡潔な指示を望みます。
「タスク 8: アップグレード手順の実行」で説明する手順の (全部ではなくとも) 大部分を含めます。
一般的に、アップグレード手順はそれぞれに固有の内容を含み、各環境で誰が何をする必要があるかを正確に記述します。たとえば、アップグレード手順には、各環境で管理者が実行する必要のある固有のコマンドと固有のパラメータ値を指定する必要があります。
補足的な手順を追加します。
たとえば、Identity Manager アプリケーションが外部アプリケーションと統合されていると、外部プロセスの停止と再起動が必要となる場合があります。また、Identity Manager アプリケーションやその他の影響を受けるアプリケーションをオフラインにする前に、ユーザーまたはシステムの担当者に通知する必要もあります。
ホスト名や接続情報などの特定のパラメータ値は環境ごとに異なります。ただし、アップグレード手順で実行するそれぞれの手順は、各環境で同じになるようにしてください。たとえば、テスト環境や品質管理環境では、アプリケーションのダウンタイムについて通知する相手がいない場合でも、それぞれの環境でこの手順をリハーサルしてください。
タイムテーブルを含める。
各手順にかかる時間を予測し、それぞれの手順で実際にかかった時間を記録します。品質管理環境での計測値は、本稼働環境でかかる時間を予想する上で特に重要です。