NGINXを使用したOracle GoldenGateリバース・プロキシの構成
ポート番号を使用せずにOracle GoldenGate Microservicesにアクセスするための、NGINXの使用によるリバース・プロキシ・サービスの構成方法について説明します。
ReverseProxySettingsを使用するための前提条件
MAでは、任意のリバース・プロキシ・サービスを使用できます。次の例では、その他のリバース・プロキシ・サービスを構成するための手順と、対象プロキシ・サーバーのドキュメントを示します。
ノート:
Oracle Linux 8またはRHEL 8にOracle GoldenGate 23aiをインストールする場合は、適切なNGINXモジュール・ストリームを有効にして、NGINXバージョンが1.19.4以上であることを確認します。-
NGINXをインストールします。Oracle LinuxでのNGINX Webサーバーおよびプロキシのインストールを参照してください。Oracle Linuxの場合、NGINXをインストールするコマンドは次のとおりです。
yum -y install nginx
-
JREのバージョンがJRE 8以降であることを確認します。
-
Oracle GoldenGate MAをインストールします。
-
1つ以上のアクティブなMAデプロイメントを作成します。
-
Oracleユーザーに
sudo
権限があることを確認します。 -
NGINXインストール・ディレクトリのパスを含めるように
PATH
環境変数を構成します。
NGINXを構成するためのReverseProxySettingsユーティリティの実行
Oracle GoldenGate Microservices Architectureのインストールには、ReverseProxySettings
ユーティリティが含まれています。ReverseProxySettings
ユーティリティは、$OGG_HOME/lib/utl/reverseproxy
ディレクトリにあります。
ReverseProxySettings
ユーティリティで使用できる追加のコマンドを確認するには、--help
オプションを指定してユーティリティを実行します。
$OGG_HOME/lib/utl/reverseproxy/ReverseProxySettings --help
ReverseProxySettings
ユーティリティで使用可能なオプションは、次のとおりです。
-
-o
or--output
-
出力ファイル名。デフォルトのファイル名は
ogg.conf
です。 -
-P
または--password
-
Service Managerアカウントのパスワード。
-
-l
または--log
-
ログ・ファイル名を指定し、ロギングを開始します。デフォルトではロギングしません。
-
--trailOnly
-
インバウンドの証跡データ専用に構成します。
-
-t
または--type
-
プロキシ・サーバーのタイプ。デフォルトはNginxです。
-
-s
または--no-ssl
-
SSLなしで構成します。
-
-h
または--host
-
リバース・プロキシの仮想ホスト名。
-
-p
または--port
-
リバース・プロキシのポート番号。デフォルトは80または443です。
-
-?
または--help
-
使用情報を表示します。
-
-u
または--user
-
使用するService Managerアカウントの名前
-
-v
または--version
-
バージョンを表示します。
ReverseProxySettingsユーティリティの実行
ReverseProxySettings
ユーティリティを使用するには:
-
NGINXリバース・プロキシ用の構成ファイルを生成するには、
ReverseProxySettings
ユーティリティの場所に移動します。cd $OGG_HOME/lib/utl/reverseproxy
-
次のように、ReverseProxySettingユーティリティを実行します。
ReverseProxySettings -u adminuser -P adminpwd -o ogg.conf http://localhost:9100
このコード・スニペットでは、
adminuser
はデプロイメント・ユーザー名であり、adminpwd
はデプロイメントへのログインに使用されるデプロイメント・ユーザー・パスワードです。 -
次のステップを使用してSSL/TLS設定の
ogg.conf
ファイルを更新します:-
ssl_ciphers
の行を見つけて、それを次のように置き換えます:ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-CHACHA20-POLY1305;
-
この行の下に別の行を追加します:
ssl_conf_command Ciphersuites TLS_AES_128_GCM_SHA256:TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256;
-
自己署名証明書を使用している場合は、次の例で示すように、秘密キーと証明書の
pem
ファイルが/etc/nginx
ディレクトリにコピーされていることを確認します:sudo cp ogg.key /etc/nginx/. sudo cp ogg.pem /etc/nginx/.
次の2行を、正しいファイルの場所を指すように変更します:ssl_certificate /etc/nginx/ogg.pem; ssl_certificate_key /etc/nginx/ogg.key;
-
ルートCA署名証明書を使用している場合は、すべての中間CA証明書がサーバー証明書に追加されていることを確認します:
cat server_cert.pem intermediate_ca_cert1.pem intermediate_ca_cert2.pem > ogg_chain.pem
秘密キーと証明書チェーンを/etc/nginx
にコピーします:sudo cp ogg_chain.pem /etc/nginx/. sudo cp ogg_key /etc/nginx/.
次の2行を、正しいファイルの場所を指すように変更します:ssl_certificate /etc/nginx/ogg_chain.pem; ssl_certificate_key /etc/nginx/ogg.key;
-
-
NGINX構成を検証します。
sudo nginx -t
コマンドが成功した場合、出力は次のようになります。NGINX: the configuration file /etc/NGINX/NGINX.conf syntax is ok NGINX: configuration file /etc/NGINX/NGINX.conf test is successful
-
NGINXサービスを再起動します:
sudo systemctl restart nginx
構成ファイルに対する変更がロードされていない場合は、プロキシを停止して再起動します。
-
NGINXが正常に設定された後にマイクロサービスにアクセスできるかどうかをテストするために、Webブラウザを開きます。
-
次のように、ポート番号443を使用してサービス・マネージャのプロキシURLを入力します。
http://dc.example.com:443
これにより、他のマイクロサービスにもアクセスできる、サービス・マネージャのログイン・ページが開きます。マイクロサービスに直接アクセスする必要がある場合は、以前に生成された
ogg.conf
ファイル内で指定されているとおり、そのマイクロサービスのプロキシURLを入力します。
NGINXリバース・プロキシの構成については、このビデオもご覧ください。
SSL終端
TLSベースの接続を使用するリバース・プロキシとオリジン・サーバーとの間に保護されていない接続がある場合、その接続はリバース・プロキシSSL終端と呼ばれます。
ノート:
SSL終端では、リバース・プロキシとオリジン・サーバーの間の接続は保護されていません。
ノート:
リバース・プロキシを使用する場合、mTLSはサポートされません。