2.7. システムデータベースに Oracle を使用する 3scale の operator によるインストール
Red Hat 3scale API Management 管理者は、Oracle Database を使用する 3scale を operator によりインストールすることができます。デフォルトでは、3scale 2.12 には設定データを MySQL データベースに保管する system
というコンポーネントが含まれています。このデフォルトのデータベースをオーバーライドし、情報を外部の Oracle Database に保管することができます。
- operator のみで 3scale のインストールを実行する場合には、Oracle Database は OpenShift Container Platform (OCP) のバージョン 4.2 および 4.3 ではサポートされません。詳細は、Red Hat 3scale API Management のサポート対象設定 のアーティクルを参照してください。
-
このドキュメントでは、レジストリー URL の例として
myregistry.example.com
が使用されています。これは、お使いのレジストリー URL に置き換えてください。 - 免責条項:以下に示す外部の Web サイトへのリンクは、お客様の利便性のみを目的として提供しています。Red Hat はリンクの内容を確認しておらず、コンテンツまたは可用性について責任を負わないものとします。外部の Web サイトへのリンクを含めることは、Web サイトまたはそれらの法的主体、製品またはサービスについて Red Hat が承認したことを意味するものではありません。お客様は、外部サイトまたはコンテンツの使用 (または信頼) によって生じる損失または費用について、Red Hat が責任を負わないことに同意するものとします。
前提条件
- 3scale がインストールされる OCP クラスターからアクセスすることのできる、コンテナーイメージをプッシュするためのコンテナーレジストリー
- APIManager カスタムリソースは以降の手順で作成されるので、インストールしないでください。
- 3scale 用レジストリーサービスアカウント
- OpenShift クラスターからアクセスできる Oracle Database のサポート対象バージョン
- インストール手順に必要な Oracle Database の system ユーザーへのアクセス
システムデータベースに Oracle を使用する 3scale を operator によりインストールするには、以下の手順を使用します。
2.7.1. Oracle Database の準備 リンクのコピーリンクがクリップボードにコピーされました!
3scale 管理者は、Oracle Database をデフォルトとして使用することを決定した場合、3scale インストール用に Oracle Database を完全に準備する必要があります。
手順
- 新しいデータベースを作成します。
次の設定を適用します。
ALTER SYSTEM SET max_string_size=extended SCOPE=SPFILE;
ALTER SYSTEM SET max_string_size=extended SCOPE=SPFILE;
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 3scale を使用して Oracle データベースをインストールする前に、通常の非システムユーザーを作成します。
-
通常の Oracle Database の非システムユーザーのパスワードは一意で、
system
パスワードとは一致しないようにする必要があります。 Oracle データベースの初期化スクリプトは、次の SQL コマンドを実行します。
ALTER USER {DB_USER} IDENTIFIED BY {DB_PASSWORD}
ALTER USER {DB_USER} IDENTIFIED BY {DB_PASSWORD}
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 3scale のインストールを開始する前に、この SQL コマンドが正しく実行することを確認してください。
-
{DB_USER}
および{DB_PASSWORD}
は、通常の非システムユーザーのユーザー名およびパスワードです。 -
パラメーター
PASSWORD_REUSE_TIME
およびPASSWORD_REUSE_MAX
が同じパスワードの再利用を制限するように設定されている場合、データベース設定によっては、このコマンドが正常に完了しない場合があります。 Oracle Database の
system
ユーザーは、システム権限でコマンドを実行します。- 一部は、こちらの GitHub リポジトリー に詳細があります。
- テーブルがデータベースで初期化されると、Oracle Database のイニシャライザー で最新のものを実行できます。これらのリンクにリストされていない他のコマンドが存在する可能性があります。
-
スキーマ移行がある場合に、アップグレードするには
system
ユーザーが必要であるため、直前のリンクに含まれていない他のコマンドを実行することもできます。
-
通常の Oracle Database の非システムユーザーのパスワードは一意で、
関連情報
- 新しいデータベースの作成については、Oracle Database 19c ドキュメントを参照してください。
2.7.2. カスタムシステムコンテナーイメージの作成 リンクのコピーリンクがクリップボードにコピーされました!
手順
GitHub リポジトリーから 3scale OpenShift テンプレートをダウンロードし、アーカイブを展開します。
tar -xzf 3scale-amp-openshift-templates-3scale-2.12.0-GA.tar.gz
tar -xzf 3scale-amp-openshift-templates-3scale-2.12.0-GA.tar.gz
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Instant Client Downloads ページから、以下をダウンロードします。
- クライアント:basic-lite または basic のいずれかを使用できます。
- ODBC ドライバー
Oracle Database 19c の SDK
- 3scale の場合は、Instant Client Downloads for Linux x86-64(64-bit) を使用します。
- ppc64le および 3scale の場合は、Power Little Endian (64 ビット) 上の Linux の Oracle Instant Client Downloads for Linux を使用します。
以下の Oracle ソフトウェアコンポーネントについては、Red Hat 3scale API Management のサポート対象設定 を確認してください。
- Oracle Instant Client パッケージ:Basic または Basic Light
- Oracle Instant Client パッケージ:SDK
Oracle Instant Client パッケージ:ODBC
Expand 表2.3 3scale 向けの Oracle 19c パッケージの例 Oracle 19c パッケージ名 圧縮ファイル名 Basic
instantclient-basic-linux.x64-19.8.0.0.0dbru.zip
Basic Light
instantclient-basiclite-linux.x64-19.8.0.0.0dbru.zip
SDK
instantclient-sdk-linux.x64-19.8.0.0.0dbru.zip
ODBC
instantclient-odbc-linux.x64-19.8.0.0.0dbru.zip
Expand 表2.4 ppc64le および 3scale 用 Oracle 19c パッケージの例 Oracle 19c パッケージ名 圧縮ファイル名 Basic
instantclient-basic-linux.leppc64.c64-19.3.0.0.0dbru.zip
Basic Light
instantclient-basiclite-linux.leppc64.c64-19.3.0.0.0dbru.zip
SDK
instantclient-sdk-linux.leppc64.c64-19.3.0.0.0dbru.zip
ODBC
instantclient-odbc-linux.leppc64.c64-19.3.0.0.0dbru.zip
注記ローカルにダウンロードされて保存されたクライアントパッケージバージョンが、3scale が想定するバージョンと一致しない場合には、以下の手順で 3scale は適切なバージョンを自動的にダウンロードして使用します。
-
Oracle Database の Instant Client パッケージファイルを
3scale-amp-openshift-templates-3scale-2.12-GA/amp/system-oracle/oracle-client-files
ディレクトリーに配置します。 レジストリーサービスアカウントの作成 で作成したクレデンシャルを使用して、
registry.redhat.io
アカウントにログインします。docker login registry.redhat.io
$ docker login registry.redhat.io
Copy to Clipboard Copied! Toggle word wrap Toggle overflow システムの Oracle ベースのカスタムイメージをビルドします。以下の例に示すように、固定のイメージタグを設定する必要があります。
docker build . --tag myregistry.example.com/system-oracle:2.12.0-1
$ docker build . --tag myregistry.example.com/system-oracle:2.12.0-1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow システムの Oracle ベースのイメージを、OCP クラスターからアクセス可能なコンテナーレジストリーにプッシュします。このコンテナーレジストリーに、この後 3scale ソリューションがインストールされます。
docker push myregistry.example.com/system-oracle:2.12.0-1
$ docker push myregistry.example.com/system-oracle:2.12.0-1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.7.3. operator を使用した Oracle での 3scale のインストール リンクのコピーリンクがクリップボードにコピーされました!
手順
-
該当するフィールドを使用して
system-database
シークレットを作成し、Oracle Database URL の接続文字列および Oracle Database のシステムパスワードを設定します。Oracle Database については、外部データベースモードでのインストール を参照してください。 APIManager カスタムリソースを作成して、3scale ソリューションをインストールします。operator を使用した 3scale のデプロイ に記載の手順に従います。
APIManager カスタムリソースでは、
.spec.system.image
フィールドを前のステップでビルドしたシステムの Oracle ベースのイメージに設定する必要があります。Copy to Clipboard Copied! Toggle word wrap Toggle overflow