2.6. システムデータベースに Oracle を使用する 3scale の operator によるインストール
Red Hat 3scale API Management 管理者は、Oracle Database を使用する 3scale を operator によりインストールすることができます。デフォルトでは、3scale 2.13 には設定データを 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 サイトへのリンクが含まれていても、Red Hat が Web サイトまたはその組織、製品、もしくはサービスを保証することを意味するものではありません。お客様は、外部サイトまたはコンテンツの使用 (または信頼) によって生じる損失または費用について、Red Hat が責任を負わないことに同意するものとします。
前提条件
- 3scale がインストールされる OCP クラスターからアクセスすることのできる、コンテナーイメージをプッシュするためのコンテナーレジストリー
- 以下の手順で作成されるため、APIManager CR をインストールしないでください。
- 3scale 用レジストリーサービスアカウント
- OpenShift クラスターからアクセスできる Oracle Database のサポート対象バージョン
-
インストール手順のための Oracle Database
SYSTEM
ユーザーへのアクセス。
システムデータベースに Oracle を使用する 3scale を operator によりインストールするには、以下の手順を使用します。
2.6.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 Database インテグレーションをセットアップするには、Oracle
SYSTEM
ユーザーパスワードを指定する場合と指定しない場合の 2 つのオプションがあります。3scale は、通常のユーザーを作成し、それに必要な権限を付与する初期セットアップでのみ
SYSTEM
ユーザーを使用します。次の SQL コマンドは、適切な権限を持つ通常のユーザーをセットアップします。({DB_USER}
と{DB_PASSWORD}
は、実際の値に置き換える必要があるプレースホルダーです)。Copy to Clipboard Copied! Toggle word wrap Toggle overflow SYSTEM
ユーザーの使用:-
system-database
シークレットのORACLE_SYSTEM_PASSWORD
フィールドにSYSTEM
ユーザーのパスワードを指定します。 - インストール前に通常のユーザーが存在する必要はありません。これは 3scale 初期化スクリプトによって作成されます。
-
system-database
シークレットのURL
フィールドの接続文字列 (例:oracle-enhanced://{DB_USER}:{DB_PASSWORD}@{DB_HOST}:{DB_PORT}/{DB_NAME}
) に、通常のユーザー用の必要なユーザー名とパスワードを入力します。 -
通常の Oracle Database 非システムユーザーのパスワードは一意である必要があり、
SYSTEM
ユーザーのパスワードとは一致しないようにする必要があります。 指定されたユーザー名を持つユーザーがすでに存在する場合、3scale 初期化スクリプトは次のコマンドを使用して、パスワードの更新を試みます。
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 パラメーター
PASSWORD_REUSE_TIME
およびPASSWORD_REUSE_MAX
が同じパスワードの再利用を制限するように設定されている場合、データベース設定によっては、このコマンドが正常に完了しない場合があります。
-
通常のデータベースユーザーの手動セットアップ:
-
system-database
シークレットにORACLE_SYSTEM_PASSWORD
を指定する必要はありません。 -
system-database
シークレットのURL
フィールドの接続文字列で指定された通常のデータベースユーザー (SYSTEM
以外) は、3scale のインストール前に存在している必要があります。 - インストールに使用する通常のユーザーは、上記のすべての権限を持っている必要があります。
-
関連情報
- 新しいデータベースの作成については、Oracle Database 19c ドキュメントを参照してください。
2.6.2. カスタムシステムコンテナーイメージの作成 リンクのコピーリンクがクリップボードにコピーされました!
手順
GitHub リポジトリーから 3scale OpenShift テンプレートをダウンロードし、アーカイブをデプロイメントします。
tar -xzf 3scale-2.13.0-GA.tar.gz
tar -xzf 3scale-2.13.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 ソフトウェアコンポーネントのバージョンについては、表を確認してください。
- Oracle Instant Client パッケージ: Basic または Basic Light
- Oracle Instant Client パッケージ: SDK
Oracle Instant Client パッケージ: ODBC
Expand 表2.4 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.5 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 Package ファイルを
system-oracle-3scale-2.13.0-GA/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.13.0-1
$ docker build . --tag myregistry.example.com/system-oracle:2.13.0-1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow システムの Oracle ベースのイメージを、OCP クラスターからアクセス可能なコンテナーレジストリーにプッシュします。このコンテナーレジストリーに、この後 3scale ソリューションがインストールされます。
docker push myregistry.example.com/system-oracle:2.13.0-1
$ docker push myregistry.example.com/system-oracle:2.13.0-1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.6.3. operator を使用した Oracle での 3scale のインストール リンクのコピーリンクがクリップボードにコピーされました!
手順
-
該当するフィールドを使用して
system-database
シークレットを作成し、Oracle Database URL の接続文字列および Oracle Database のシステムパスワードを設定します。Oracle Database については、外部データベースモードでのインストール を参照してください。 APIManager CR を作成して、3scale ソリューションをインストールします。operator を使用した 3scale のデプロイ に記載の手順に従います。
APIManager CR は、以前にビルドしたシステムの Oracle ベースのイメージに設定された
.spec.system.image
フィールドを指定する必要があります。Copy to Clipboard Copied! Toggle word wrap Toggle overflow