Sun Identity Manager 8.1 アップグレード

第 6 章 スキップレベルアップグレードに関する注意事項

この章では、スキップレベルアップグレードの実行に関する注意事項と、次のトピックを説明します。

スキップレベルアップグレードの概要

本稼働環境を、現在の Identity Manager 製品バージョンから、次のメジャーリリースよりも新しいバージョンに直接更新する場合は、「スキップレベル」アップグレード (または、「マルチホップ」アップグレード) を実施します。たとえば、Version 6.0 の Identity Manager を使用しているときに、直接 Version 8.1 にアップグレードする場合は、このアップグレードパスにスキップレベルアップグレードが必要になります。

複数のバージョンをアップグレードする場合、通常は連続してアップグレードする必要があります。ただし、本稼働環境でのアップグレードの回数を最小限にすることが、多くのお客様に望まれています。これは、Identity Manager アプリケーションのダウンタイム、Identity Manager アプリケーションの再テストにかかるコスト、および Identity Manager アプリケーションを使用するユーザーの再トレーニングにかかるコストを最小化することにつながります。

1 回でターゲットの Identity Manager バージョンを更新するアップグレード手順を作成することは、技術的に可能であり、一部のお客様でも可能であることが確認されています。重要な点は、本稼働環境でスキップレベルアップグレードを実行する場合でも、開発環境では各「ホップ」を実行する必要があるということです。たとえば、開発環境では、Identity Manager を Version 7. から Version 7.1、Version 7.1.1、Version 8.0、Version 8.1 の順にアップグレードする必要があります。各ホップの後、累積的なアーティファクトのセットを構築します。

スキップレベルアップグレードのもっとも一般的な実施方法は、Identity Manager のターゲットバージョンまでの各バージョンで動作するように更新された設定とカスタマイズを使用して、アプリケーションのベースラインを更新する方法です。ベースラインには、データベースを更新するための累積的なスクリプトと、update.xml の累積的なサブセットも含まれます。最終的に、一連のアップグレードを実行した場合と同じ変更を行う、単一のアップグレード手順が作成されます。

スキップレベルアップグレードの実行は、標準的なアップグレードやシングルホップアップグレードの場合よりも複雑です。スキップレベルアップグレードでは、Identity Manager 製品アップグレードに使用されるメカニズムに関して、より技術的な理解が必要です。また、アップグレードパスに含まれる Identity Manager 製品の各バージョンについて、アップグレード内容をより詳しく分析する必要もあります。詳細な分析を行うことで、適切に累積された最小限のアーティファクトを生成できます。たとえば、すべてのデータベーステーブルアップグレードスクリプトを単純に 1 つのスクリプトに結合した場合や、各手順の update.xml のサブセットを 1 つのサブセットに結合した場合は、アップグレードで冗長な処理が大量に実行される可能性があります。

この章では、スキップレベルアップグレードに関する注意事項を説明します。アップグレードの進め方を判断できない場合や、これらの注意事項に不明な点がある場合は、アップグレードの計画について Sun のプロフェッショナルサービスにご相談ください。

スキップレベルアップグレードの段階

全体として、スキップレベルアップグレードで実行する手順は、通常のアップグレードで実行する手順と同じです。ただし、一部の手順はスキップレベルアップグレード用に拡張されたり、繰り返し実行されます。

次の図に、スキップレベルアップグレードのプロセスを示します。

図 6–1 スキップレベルアップグレードプロセス

スキップレベルアップグレードの手順を示すフローチャート

計画に関して、通常のアップグレードとスキップレベルアップグレードでもっとも異なるのは、「タスク 2: ターゲットとする Identity Manager のバージョンの選択」を実行する方法です。ターゲットにする Identity Manager のバージョンを選択するときに、アップグレードパスを計画する必要があります。

2 つのアップグレードプロセスのその次に大きな違いは、アップグレードパス上の通過点 (バージョン) ごとに「タスク 6: 開発環境のアップグレード」から「タスク 9: 機能テストの実行」を実行する必要がある点です。アップグレードパス上のバージョンごとに、開発環境と Identity Manager 製品バージョンのアプリケーションベースラインをアップグレードする必要があります。アップグレードパス上の各バージョンでアップグレードを実行したあとに、再テストを実行することもできます。この場合、各バージョンのアップグレード後に、テスト環境をリセットし、Identity Manager アプリケーションをテスト環境にプロモートする必要があります。


ヒント –

アップグレードパス上の各バージョンのアップグレード後に再テストは不要であると考えられる場合もありますが、各バージョンのアップグレード後にアップグレードプロセスのテストと Identity Manager アプリケーションのテストを行うと、問題をすばやく識別できるため、リスクを最小限に抑えることができます。作業する変更のセットを小さくするほど、問題の原因を判定しやすくなります。


タスク 2: ターゲットとする Identity Manager のバージョンの選択 (拡張)

スキップレベルアップグレードを実行する場合は、ターゲットとする Identity Manager のバージョンを決定したあとに、アップグレードパスを計画する必要があります。


注 –

Identity Manager のアップグレードパスについては、『Sun Identity Manager 8.1 リリースノート』「アップグレードパスとサポートポリシー」を参照してください。


一般的に、Identity Manager のフルリリースで提供される標準アップグレードプロセスでは、既存のインストールは、直前のメジャーリリースの任意のバージョンからアップグレードされます。

アップグレードパス上の各通過点には、Identity Manager 製品の異なるバージョンが必要です。スキップレベルアップグレードを計画するには、アップグレードパス上の各通過点で、それぞれの Identity Manager 製品バージョンのリリースノートを確認する必要があります。

たとえば、Identity Manager を Version 6.0 から Version 8.1 にアップグレードする場合は、Identity Manager の次のバージョンのリリースノートを確認する必要があります。

タスク 6: 開発環境のアップグレード (繰り返し)

スキップレベルアップグレードを実行する場合、アップグレードパス上のバージョンごとに「タスク 6」を繰り返す必要があります。

Identity Manager のターゲットバージョンに至るまでにアップグレードが必要な Identity Manager 製品の各バージョンで、「タスク 6: 開発環境のアップグレード」で説明されているステップ 1 ~ 14 を実行します。


注 –

スキップレベルアップグレードでは、これらのステップのうち、「ステップ 9: 変更内容を解析する」だけは拡張する必要があります。拡張した手順については、「ステップ 9: スキップレベルアップグレードでの変更の解析」を参照してください。


ステップ 9: スキップレベルアップグレードでの変更の解析

Identity Manager 製品アップグレードで実行される変更を解析する必要があります。

開発環境のアップグレードを繰り返すときに、Identity Manager アプリケーションのベースラインを繰り返し更新します。更新される内容には次のものがあります。

ベースラインには、データベーステーブルを作成または更新するための SQL スクリプトと、ベースラインに含まれていないリポジトリオブジェクトを更新するための update.xml のサブセットも含まれている必要があります。

サンプルのデータベーステーブルアップグレードスクリプトを含む各繰り返しでは、アップグレード手順全体を変更する必要があります。データベーステーブルアップグレードスクリプトを正しい順序で実行するか、これらのスクリプトを結合することができますが、各サンプルスクリプトを環境に応じて適切に変更する必要があります。

単一の累積的なデータベーステーブルアップグレードスクリプトを作成すると、便利で効率がよいだけでなく、より安全です。つまり、データベーステーブルアップグレードスクリプトを適切な順で実行した場合に、各アップグレードスクリプトで実行されるすべての処理を組み合わせた、単一のスクリプトを作成してください。

実行するデータベースアップグレードスクリプトを 1 つにすることで、アップグレード手順は簡単になり、冗長な処理を排除することができます。たとえば、特定のバージョンの Identity Manager でインデックスを作成したあと、別のバージョンで同じインデックスを削除して作成し直す必要がなくなります。

ベースラインでは管理されない Identity Manager リポジトリのオブジェクトを更新するために必要な、Identity Manager の update.xml の適切なサブセットを、各繰り返しで識別することもできます。スキップレベルアップグレードでは、Identity Manager の update.xml のサブセットが累積的であることを確認する必要があります。


注 –

スキップレベルアップグレードを実施する場合は、「アップデータ」プログラムが変更した設定オブジェクトを、Identity Manager ベースラインに追加する必要があります。

アップデータは、Identity Manager によって提供される、設定オブジェクトを更新するためのプログラムです。アップデータは、update.xml 内または update.xml に含まれるファイル内で、ImportCommand によって呼び出されます。一般的に、アップデータは提供されている Identity Manager のバージョンのみで動作します。したがってスキップレベルアップグレードでは、アップデータが Identity Manager のターゲットバージョンで動作しない場合もあります。変更されたすべての設定オブジェクトをベースラインに追加することが、もっとも安全な方法です。