2.3. テンプレートベースのインストール環境での Oracle Database を使用した 3scale のアップグレード
本セクションでは、OpenShift 3.11 とテンプレートベースのインストール環境の組み合わせにおいて、Oracle Database で 3scale システムイメージを使用している場合に、Red Hat 3scale API Management をアップグレードする方法について説明します。
前提条件
Oracle Database を使用した 3scale インストール環境。Oracle Database を使用した 3scale システムイメージの設定 を参照してください。
テンプレートベースのインストール環境で Oracle Database を使用して 3scale のシステムイメージをアップグレードするには、以下の手順を実行します。
2.3.1. Oracle 19c を使用した 3scale のアップグレード リンクのコピーリンクがクリップボードにコピーされました!
以下の手順では、Oracle Database 19c の更新、既存の 3scale 2.10 インストール環境から 3scale 2.11 への変更について説明します。
重要: データベースへの接続が失われると、3scale が破損する可能性があります。アップグレードを進める前にバックアップを作成します。詳細は、Oracle Database のドキュメント Oracle Database Backup and Recovery User's Guide を参照してください。
前提条件
- 3scale 2.10 のインストール
Oracle Database 19c のインストール
- Oracle を使用した 3scale の設定に関する詳細は、Oracle Database の準備 を参照してください。
手順
GitHub リポジトリーから 3scale OpenShift テンプレートをダウンロードし、アーカイブを展開します。
tar -xzf 3scale-amp-openshift-templates-3scale-2.11.1-GA.tar.gz
tar -xzf 3scale-amp-openshift-templates-3scale-2.11.1-GA.tar.gzCopy to Clipboard Copied! Toggle word wrap Toggle overflow -
Oracle Database の Instant Client パッケージファイルを
3scale-amp-openshift-templates-3scale-2.11.1-GA/amp/system-oracle/oracle-client-filesディレクトリーに配置します。 -fオプションでbuild.ymlOpenShift テンプレートを指定して、oc processコマンドを実行します。oc process -f build.yml | oc apply -f -
$ oc process -f build.yml | oc apply -f -Copy to Clipboard Copied! Toggle word wrap Toggle overflow -fオプションでamp.ymlOpenShift テンプレートを指定し、-pオプションでWILDCARD_DOMAINパラメーターに OpenShift クラスターのドメインを指定して、oc new-appコマンドを実行します。oc new-app -f amp.yml -p WILDCARD_DOMAIN=mydomain.com
$ oc new-app -f amp.yml -p WILDCARD_DOMAIN=mydomain.comCopy to Clipboard Copied! Toggle word wrap Toggle overflow 注記以下の手順は任意です。インストール後やシステムアップグレード後に
ORACLE_SYSTEM_PASSWORDを削除する場合に使用します。以下の
oc patchコマンドを入力します。SYSTEM_PASSWORDはOracle Database の準備 で設定した Oracle Database のsystemパスワードに置き換えます。oc patch dc/system-app -p '[{"op": "add", "path": "/spec/strategy/rollingParams/pre/execNewPod/env/-", "value": {"name": "ORACLE_SYSTEM_PASSWORD", "value": "SYSTEM_PASSWORD"}}]' --type=json oc patch dc/system-app -p '{"spec": {"strategy": {"rollingParams": {"post":{"execNewPod": {"env": [{"name": "ORACLE_SYSTEM_PASSWORD", "value": "SYSTEM_PASSWORD"}]}}}}}}'$ oc patch dc/system-app -p '[{"op": "add", "path": "/spec/strategy/rollingParams/pre/execNewPod/env/-", "value": {"name": "ORACLE_SYSTEM_PASSWORD", "value": "SYSTEM_PASSWORD"}}]' --type=json $ oc patch dc/system-app -p '{"spec": {"strategy": {"rollingParams": {"post":{"execNewPod": {"env": [{"name": "ORACLE_SYSTEM_PASSWORD", "value": "SYSTEM_PASSWORD"}]}}}}}}'Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下のコマンドを入力します。
DATABASE_URLはOracle Database の準備で指定した Oracle Database を参照するように置き換えます。oc patch secret/system-database -p '{"stringData": {"URL": "DATABASE_URL"}}'$ oc patch secret/system-database -p '{"stringData": {"URL": "DATABASE_URL"}}'Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc start-buildコマンドを入力し、新しいシステムイメージをビルドします。oc start-build 3scale-amp-system-oracle --from-dir=.
$ oc start-build 3scale-amp-system-oracle --from-dir=.Copy to Clipboard Copied! Toggle word wrap Toggle overflow ビルドが完了するまで待ちます。ビルドの状態を確認するには、以下のコマンドを実行します。
oc get build <build-name> -o jsonpath="{.status.phase}"$ oc get build <build-name> -o jsonpath="{.status.phase}"Copy to Clipboard Copied! Toggle word wrap Toggle overflow - ビルドが Complete の状態になるまで待ちます。
Oracle Database で 3scale システムイメージを設定したら、
system-appDeploymentConfig からORACLE_SYSTEM_PASSWORDを削除します。新しいバージョンの 3scale にアップグレードするまで、もう一度は必要ありません。oc set env dc/system-app ORACLE_SYSTEM_PASSWORD-
$ oc set env dc/system-app ORACLE_SYSTEM_PASSWORD-Copy to Clipboard Copied! Toggle word wrap Toggle overflow
関連情報
3scale と Oracle Database のサポートについては、Red Hat 3scale API Management のサポート対象設定 を参照してください。