スタックのアップグレード
既存のスタックをリスト・バージョンにアップグレードするには、このオプションを使用します。Essbase VMを含め、サポートされているスタック機能がリスト・バージョンにアップグレードされます。
ノート:
スタックのアップグレード・オプションは、Autonomous Databaseを使用するOCIデプロイメントのEssbaseでのみサポートされます。
ノート:
スタックのアップグレード・プロセスを続行する前に、関連トピック(以前にアップグレードしたスタックをアップグレードする前に、「スタックのアップグレード前」および「スタックのアップグレード後」)も参照してください。
スタックのアップグレードオプションでは、Oracle Cloud Infrastructure (OCI)スタック・デプロイメント上のソース・インスタンスの既存のスタック構成に基づいて、Oracle Essbaseターゲット・インスタンスが作成されます。
アップグレードでサポートされているバージョン
サポートされているバージョン | アップグレード前のソース・インスタンスに必要なタスク |
---|---|
19.3.0.0.2 |
スクリプトupgrade-metadata-19c02.shを実行します。 拡張メタデータを収集します。 |
19.3.0.2.3 |
スクリプトupgrade-metadata-19c23.shを実行します。 拡張メタデータを収集します。 |
19.3.0.3.4 |
スクリプトupgrade-metadata-19c.shを実行します。 拡張メタデータを収集します。 |
19.3.0.4.5 |
スクリプトupgrade-metadata-19c.shを実行します。 拡張メタデータを収集します。 |
19.3.0.5.6以降のリリースの19c | 拡張メタデータを収集します。 |
21.x | 拡張メタデータを収集します。 |
ターゲット・インスタンスの作成
ターゲット・インスタンスの作成の一部として、次のことが行われます。
- ソース・インスタンスが停止されます
- ソース・インスタンスのブロック・ボリュームのクローンが作成されます
- OCIでのEssbaseの最新の公開されたイメージを使用して、ターゲット・インスタンスが作成されます。
- ソース・インスタンスのサブネットと同じVCNの使用
- ターゲット・インスタンスのブロック・ボリュームのクローンの使用
- ソース・インスタンスと同じデータベースの使用
ターゲット・インスタンスの初期化後、ターゲット・インスタンスでEssbaseが起動されます。その後、ソース・インスタンスからのEssbaseアプリケーションおよびデータが、ターゲット・インスタンスで使用可能になります。ソース・インスタンスへのログインに使用された同じsshキー、パスワードおよび資格証明を使用してログインし、ターゲット・インスタンスを使用できます。
ノート:
新しいアップグレード・バージョンに固有で、スタックの追加構成が必要な機能は、スタックのアップグレードを使用して作成されたターゲット・インスタンスでは使用できません。たとえば、カタログ・オブジェクト・ストレージは21.4、21.5ではサポートされず、Smart View for Office 365は21.5ではサポートされません。
スタックのアップグレードのプロセス
- マーケットプレイス、適切なバージョンのソース・インスタンス、およびコンパートメントからデプロイメントするためにスタックのアップグレードオプションを選択し、スタックに任意の名前を入力した後、次の手順を実行します。
- 続行する前に、「スタックのアップグレード前」を確認してください。
- 「確認」ページのステップで、「スタックの作成」トピックの最後まで進みます。
スタックのアップグレード前
ここでは、アップグレードを実行する前のいくつかのタスクと考慮事項を示します。
- ソース・インスタンスでstop.shを使用して、Essbaseサーバーを停止します。これは、スタックのアップグレードを実行する前にお薦めします。
- ソース・インスタンスでロード・バランサが使用されていた場合は、ロード・バランサの詳細を記録します。これらの詳細は、スタックのアップグレード後に、新しいターゲット・ノードのプライベートIPをロード・バランサのバックエンド・セットに追加するために使用します。
- プロビジョニングされたLDAPユーザー/グループを記録し(それがソース・インスタンスに含まれている場合)、それらをアップグレード後に使用できるようにします。
- 元のデプロイメントの命名規則に従ってソース・インスタンスのコンポーネントに名前を付けます(それらを変更した場合)。ソース・インスタンスに当てはまる既知の問題について、最新のリリース・ノートを確認します。
- 次のように、動的グループのポリシーを追加します:
Allow dynamic-group <dyn group> to manage instance-family in compartment <name> Allow dynamic-group <dyn group> to manage virtual-network-family in compartment <name>
- 「バックアップからリストアされたソース・インスタンス」、「Essbaseバージョン19.3.0.n.nでのソース・インスタンス」または「以前にアップグレードされたスタック」に記載されている手順がご自分のアップグレードに当てはまるかどうかを確認してください。当てはまる場合は、それらを実行する必要があります。
- Essbase on OCIスタック・バージョン19.3.0 3.4または19.3.0.4.5にあるソース・インスタンスの場合は、アップグレードの前に、「Essbaseバージョン19.3.0.n.nでのソース・インスタンス」に記載されているスクリプトを実行する必要があります。
- Essbase on OCIスタック・バージョン19.3.0.2.3にあるソース・インスタンスの場合は、アップグレード前に、oracleユーザーとしてpipをアップグレードし、19.3.0.2.3ソース・インスタンスでoci cliをアップグレードする必要があります(19.3.0.2.3用のアップグレード・メタデータ・スクリプトを実行する前)。
oracleユーザーとしてpipをアップグレードするには:
oracleユーザーとしてoci cliをアップグレードするには:sudo su oracle pip install --upgrade pip
sudo su oracle pip install oci-cli --upgrade
Essbaseバージョン19.3.0.n.nでのソース・インスタンス
ソース・インスタンスがEssbaseバージョン19.3.0.0.2、19.3.0.2.3、19.3.0.3.4または19.3.0.4.5で実行されている場合は、次の手順を実行します。
- sshを使用してソース・インスタンスにログインします。
- 次のように、oracleユーザーに変更します:
sudo su oracle
- 次の該当するリンクからスクリプトをコピーし、指示に従って保存します:
- 19.3.0.0.2の場合は、次のリンクからスクリプトをコピーし、
upgrade-metadata-19c02.sh
として保存しますhttps://github.com/oracle-quickstart/oci-essbase/tree/main/scripts/upgrade-metadata-19c02.sh
- 19.3.0.2.3の場合は、次のリンクからスクリプトをコピーし、
upgrade-metadata-19c23.sh
として保存しますhttps://github.com/oracle-quickstart/oci-essbase/tree/main/scripts/upgrade-metadata-19c23.sh
- 19.3.0.3.4または19.3.0.4.5の場合は、次のリンクからスクリプトをコピーし、
upgrade-metadata-19c.sh
として保存しますhttps://github.com/oracle-quickstart/oci-essbase/tree/main/scripts/upgrade-metadata-19c.sh
ノート:
そのスクリプトを実行する前に、キーを管理するポリシーを追加してあることを確認します。このスクリプトでは、それが実行されているソース・インスタンスに関連付けられたボールト内で、シークレットが変更および作成されます。Allow group <group> to manage keys in compartment <compartment name>
- 19.3.0.0.2の場合は、次のリンクからスクリプトをコピーし、
- 次のように、スクリプトを実行します:
- 19.3.0.0.2の場合は、次のようにスクリプトを実行します:
sudo su oracle bash -e upgrade-metadata-19c02.sh
- 19.3.0.2.3の場合は、次のようにスクリプトを実行します:
sudo su oracle bash -e upgrade-metadata-19c23.sh
- 19.3.0.3.4または19.3.0.4.5の場合は、次のようにスクリプトを実行します:
bash -e upgrade-metadata-19c.sh
ノート:
このスクリプトでは、ソース・インスタンスのメタデータが変更されます。元のインスタンス・メタデータは、そのスクリプトの実行後は、次のファイル内にあります。そのスクリプトの初回実行後に、それをコピーして参照用に保持しておいてください。スクリプト実行中にエラーが発生した場合には、これらを使用してインスタンスの元のメタデータをリストアできます。/tmp/upgrade/core_metadata.json /tmp/upgrade/extended_metadata.json
ノート:
このスクリプトは1回のみ実行できます。元のメタデータがリストアされていない場合、後続の実行ではエラーが発生します。 - 19.3.0.0.2の場合は、次のようにスクリプトを実行します:
- 「ソース・インスタンスのメタデータの収集」で説明されているとおりに、メタデータの収集に進みます。
バックアップからリストアされたソース・インスタンス
ソース・インスタンスがバックアップからリストアされているか、ディザスタ・リカバリ・インスタンスを使用している場合は、次の手順を実行します。
- Essbaseソース・インスタンスを停止します。
/u01/config/domains/essbase_domain/esstools/bin/stop.sh
- データ・ボリュームをアンマウントします。
sudo umount /u01/data with opc user
- ISCSIコマンドを使用してデータ・ボリュームの接続を切断します。
- 次のように、OCIコンソールを使用してデタッチします:
/etc/fstab
の構成およびデータのブロック・ボリュームのエントリを一時的に無効にします。- ターゲット・コンピュートに(opcユーザーとして) ssh接続します。
- 次を実行します。
sudo vi /etc/fstab
/u01/config
および/u01/data
のエントリの前に#を挿入します。- ファイルを保存します。
- データおよび構成のブロック・ボリュームをターゲットEssbaseコンピュートからデタッチします。iSCSIの警告をメモし、OCIコンソールを使用してデタッチする前に、必ず各ボリュームをアンマウントして切断します。
- アンマウントするには:
- ターゲット・コンピュートに(opcユーザーとして) ssh接続します。
- 次を実行します。
lsblk
- 次を実行します。
sudo umount /u01/data
- これらのステップを繰り返して、データ・ブロック・ボリュームをアンマウントします。
- iSCSIを切断するには:
- OCIコンソールで、ターゲット・コンピュートを選択します。
- 「リソース」→「アタッチされたブロック・ボリューム」を選択します。
- 構成ブロック・ボリュームの「アクション」メニュー
, から、「iSCSIコマンドおよび情報」を選択します。
- 切断するためのiSCSIコマンドをコピーします。
- ターゲット・コンピュートに(opcユーザーとして) ssh接続します。
- コピーした切断コマンドを貼り付けて[Enter]を押します。
- これらのステップを繰り返して、データ・ボリュームを切断します。
- デタッチするには:
- OCIコンソールで、ターゲット・コンピュートを選択します。
- 「リソース」→「アタッチされたブロック・ボリューム」を選択します。
- 構成ブロック・ボリュームの「アクション」メニュー
から、「デタッチ」を選択します。
- これらのステップを繰り返して、データ・ブロック・ボリュームをデタッチします。
- アンマウントするには:
- OCIコンソール・ページでデータ・ボリュームの名前を
tag-data-volume
に変更(クローン)します。 - (opcユーザーとして).次のOCI CLIコマンドを使用して、データ・ボリュームを再度アタッチします
- 19.3.0.0.2または19.3.0.2.3の場合
oci compute volume-attachment attach-iscsi-volume --instance-id $instanceid --volume-id $datavolumeid --display-name data-volume-1-attachment --auth instance_principal
- 19.3.0.3.4または19.3.0.4.5の場合
oci compute volume-attachment attach-iscsi-volume --instance-id $instanceid --volume-id $datavolumeid --display-name data-volume-attachment --auth instance_principal
- 19.3.0.5.6または19.3.0.6.0の場合
oci compute volume-attachment attach-iscsi-volume --instance-id $instanceid --volume-id $datavolumeid --display-name data-volume --auth instance_principal
- 21.1の場合
oci compute volume-attachment attach-iscsi-volume --instance-id $instanceid --volume-id $datavolumeid --display-name data-volume-attachment --auth instance_principal
- 21.2以上の場合
oci compute volume-attachment attach-iscsi-volume --instance-id $instanceid --volume-id $datavolumeid --display-name data-volume --auth instance_principal
- 19.3.0.0.2または19.3.0.2.3の場合
- OCIコンソール・ページからそれらのICSIIコマンドをコピーし、そのセッションでそれらを入力し、ISCSIを使用して接続します。
- データ・ボリュームのUUIDで/etc/fstabを更新します。
sudo vi /etc/fstab
- データ・ボリュームをマウントします。
sudo systemctl daemon-reload
sudo mount -a
- サーバーを起動します。
/u01/config/domains/essbase_domain/esstools/bin/start.sh
- 「ソース・インスタンスのメタデータの収集」で説明されているとおりに、メタデータの収集に進みます。
以前にアップグレードされたスタック
これは、以前にアップグレードしたスタックをEssbase 19.3.0.0.2、19.3.0.2.3、19.3.0.3.4および19.3.0.4.5からアップグレードするための前提条件です。バックアップに使用するオブジェクト・ストレージ・バケットは、アップグレード・スタックが成功するように構成する必要があります。
スタックを前述のバージョンから21.4以上にアップグレードした後、再度21.5.xにアップグレードする前に、次の手順を実行してインスタンス・メタデータを編集し、インスタンスをアップグレード用に準備します。
- sshを使用してターゲット・インスタンスにログインします。
- 作業ディレクトリに移動し、次のファイルを作成します:
oci compute instance get --instance-id $(oci-metadata -j | jq -r '.instance.id') --auth instance_principal | jq '.data."extended-metadata"' > ext_metadata.json
- ファイル
ext_metadata.JSON
を編集して、バケット情報のJSONフィールドを追加します。次に例を示します:{ ... ... ... "backup_bucket": { "id": "n/<namespace>/b/essbase_xxxx_backup", "name": "essbase_xxxx_backup", "namespace": <namespace>"}, ... ... ... }
前述のxxxxを、テナンシ内の任意のバケットのバケット詳細に置き換えます。
ノート:
既存のバックアップ・バケット属性がext_metadata.jsonファイルにどのように表示されるか(null、空のブロック、データベース属性の内部または外部など)に関係なく、前述の詳細をext_metadata.jsonファイルに個別の属性として追加する必要があります。 - アップグレードしようとしているスタックの現在のソース・インスタンスで次のコマンドを実行します。
oci compute instance update --instance-id $(oci-metadata -j | jq -r '.instance.id') --extended-metadata file://./ext_metadata.json --auth instance_principal --force
ソース・インスタンスのメタデータの収集
ここでは、ソース・インスタンスのメタデータを収集する手順を示します。
- SSHを使用してソース・インスタンス(アップグレード対象)にアクセスします。oracleユーザーに変更し、次のコマンドを使用してEssbaseサービスを停止します:
sudo su oracle /u01/config/domains/essbase_domain/esstools/bin/stop.sh
- stop.shが完了したら、次のコマンドを実行します:
oci compute instance get --instance-id $(oci-metadata -j | jq -r '.instance.id') --auth instance_principal | jq '.data."extended-metadata"'
ノート:
前述のコマンドは、opcユーザーとして実行することもできます。 - 前述の出力はJSON形式です。後で新しくスタックのアップグレードと作成を実行する際に
ソース・インスタンスのメタデータ
フィールドで使用するために、出力内容全体(中カッコ{}を含む)をコピーします。
スタックのアップグレード後
ここでは、アップグレードを実行した後のいくつかのタスクと考慮事項を示します。
-
ターゲット・インスタンスの初期起動でエラーが発生した場合は、stop.shおよびstart.shを使用してEssbaseサーバー・プロセスを再起動してみるか、コンピュート・インスタンスを再起動してみます。
ノート:
ターゲット・インスタンスの実行中は、ソース・インスタンスを起動しないでください。ターゲット・インスタンスとソース・インスタンスの両方を同時に操作すると、同期の問題が発生する場合があります。 - プロビジョニングされたLDAPユーザー/グループがソース・インスタンスにあった場合は、手動でバックアップしてターゲット・インスタンスで復元する必要があります
-
ソース・インスタンスにロード・バランサがあった場合は、ターゲット・インスタンスの新しいプライベートIPを使用してロード・バランサを手動で更新する必要があります。
- 「ネットワーキング」→「ロード・バランサ」に移動し、編集するロード・バランサを選択します。
- (左側のメニューの)「リソース」で、
- 「バックエンド・セット」を選択し、セットessbaseを選択します。
- 「バックエンド」を選択し、「バックエンドの追加」を選択します。
- 「ターゲット・インスタンス」を選択し、ポートを443に設定して、「追加」をクリックします。
- ソース・インスタンスのプライベートIPをバックエンド・リストから削除します。
- アップグレードの完了後、同じ秘密キーで新しいインスタンスにssh接続できます。
-
機密アプリケーション – クライアント構成(前のスタックのもの)に移動し、必要に応じて、それを新しいIPアドレスで更新します。
以前に"インスタンスファミリの管理"についての動的グループ・ポリシーが必要だった場合は、それを削除してかまいません。