10 Oracle Connection Managerの構成と管理
Oracle Connection Managerは、データベースまたはプロキシ・サーバーに接続要求を転送するプロキシ・サーバーです。これはセッション・レベルで動作します。通常、データベース・サーバーおよびクライアント・コンピュータとは別のコンピュータに常駐しています。Oracle Connection Managerは、Oracle Database 20c Enterprise Editionをインストールすると使用できるようになります。これはクライアント・ディスク上のカスタム・インストール・オプションです。
Oracle Connection Managerの主要機能は次のとおりです。
-
アクセス制御: ルールベースの構成を使用してユーザーが指定したクライアント要求をフィルタにかけ、フィルタを通過したものを受け入れます。
-
セッションの多重化: 共有サーバーの接続先へのネットワーク接続により、複数のクライアント・セッションを集中化します。
Oracle Connection Manager機能の構成方法について説明します。
- cman.oraファイルについて
Oracle Connection Managerをホストするコンピュータを構成するには、cman.oraファイルのパラメータを設定します。 - Oracle Connection Managerの構成方法
- IPv4およびIPv6のブリッジとしてのOracle Connection Managerの使用
- Oracle Connection Manager制御ユーティリティを使用したOracle Connection Managerの管理
- Traffic DirectorモードのOracle Connection Managerの使用について
Traffic DirectorモードのOracle Connection Managerは、サポートされているデータベース・クライアントとデータベース・インスタンスとの間に配置されたプロキシです。 - CMCTL RESTインタフェースについて
CMCTL RESTインタフェースは、RESTインタフェースを使用してリモート・マシンからOracle Connection Manager (Oracle CMAN)インスタンスを管理するために役立ちます。HTTPSをサポートしているクライアントは、CMCTLと同等のコマンドを発行できます。各REST APIコールには、Basic認証方式が指定されているWWW-AuthenticateHTTPSヘッダーが必要です。 - パッチ適用時のCMANセッションの移行
計画的な、停止時間なしのOracle CMANのアップグレードまたはパッチ適用の間に、確立されたクライアント/サーバー・セッションを、あるOracle Connection Manager (CMAN)インスタンスから別のOracle CMANインスタンスに移行できます。 - Oracle Connection Managerの機能拡張
Oracle Connection Managerにより、Oracle Database Serverに対するリクエストをプロキシ化し選別します。
関連項目:
-
Oracle Connection Managerの概要は、「Oracle Net Servicesの概要」を参照してください
-
Oracle Connection Managerのアーキテクチャの概要は、「通信レイヤーの理解」を参照してください
親トピック: Oracle Net Servicesの構成と管理
10.1 cman.oraファイルについて
Oracle Connection Managerをホストするコンピュータを構成するには、cman.oraファイルのパラメータを設定します。
cman.oraファイルは、Oracle Connection Managerをホストするコンピュータ上のORACLE_BASE_HOME/network/adminディレクトリにあります。cman.oraファイルがORACLE_BASE_HOME/network/adminディレクトリにない場合は、ORACLE_HOME/network/adminディレクトリでファイルを探します。cman.oraファイルが存在しない場合、Oracle Connection Managerは起動しません。このファイルには次のコンポーネントが含まれています。
- リスニング・エンドポイント
- アクセス制御ルール・リスト
- パラメータ・リスト
各Oracle Connection Manager構成は、1つの名前-値(NV)文字列内にカプセル化されており、その文字列は、前述のコンポーネントで構成されています。
1台のコンピュータで任意の数のOracle Connection Managerをホスティングでき、そのそれぞれのエントリがcman.oraファイルに保持されます。このファイルに複数のOracle Connection Managerを定義する場合は、完全修飾ホスト名を1つのみ設定することによって、デフォルトとして割り当てることができます。
クライアントとOracle Connection Manager制御ユーティリティ(CMCTL)の2つの接続に対して複数のルールを指定できます。変更を行う場合、次のガイドラインが適用されます。
- クライアント接続とCMCTL接続に対して、1つ以上のルールを入力する必要があります。ルールを省略すると、省略されたルール・タイプの全接続が拒否されます。
- Oracle Connection Managerでは、ワイルドカードをIPアドレスの一部として使用できません。ワイルドカードを使用する場合は、完全なIPアドレスのかわりとして使用してください。たとえば、クライアントのIPアドレスの場合は、(
SRV=*)と指定します。 - Oracle Connection Managerでは、サブネット・アドレスの表記として
/nnのみを使用できます。例10-1では、最初のルールの/24が左端の24ビットで構成されるサブネット・マスクを表しています。クライアントIPアドレスの先頭の24ビットのみが、ルール内のIPアドレスと比較されます。
注意:
Oracle Connection ManagerはIPv6アドレッシングをサポートしています。「IPv4およびIPv6のブリッジとしてのOracle Connection Managerの使用」を参照してください。例10-1に、CMAN1というOracle Connection Managerの構成エントリが含まれるcman.oraファイルを示します。
例10-1 cman.oraファイルの例
CMAN1=
(CONFIGURATION=
(ADDRESS=(PROTOCOL=tcp)(HOST=proxysvr)(PORT=1521))
(RULE_LIST=
(RULE=(SRC=192.0.2.32/24)(DST=sales-server)(SRV=*)(ACT=accept)
(ACTION_LIST=(AUT=on)(MCT=120)(MIT=30)))
(RULE=(SRC=192.0.2.32)(DST=proxysvr)(SRV=cmon)(ACT=accept)))
(PARAMETER_LIST=
(MAX_GATEWAY_PROCESSES=8)
(MIN_GATEWAY_PROCESSSES=3)))
例10-1は、次のルールを示しています。
- 例の最初のルールでは、次のパラメータを設定しています。
- 2番目のルールでは、次のパラメータを設定しています。
SRC=192.0.2.32およびDST=proxysvrは同じサーバーを表し、Oracle Connection ManagerとCMCTLは同じコンピュータ上にある必要があることを示しています。
関連項目:
「アクセス制御の有効化」
表10-1は、cman.oraファイルのルール・レベル・パラメータを説明します。
表10-1 cman.oraファイルのルール・レベル・パラメータ
| パラメータ | 説明 |
|---|---|
|
SRC |
ソースのホスト名またはクライアントのIPアドレス。IPアドレスはサブネットで、 |
|
DST |
接続先のホスト名またはデータベース・サーバーのIPアドレス。IPアドレスはサブネットで、 |
|
SRV |
初期化パラメータ・ファイル( サービス名は、リスナーへの接続時に、接続記述子の一部としてクライアントによって指定されます。このサービス名は、ルール・リストに指定されたサービス名と比較されます。 |
|
ACT |
前述の3つのパラメータに基づいた、受信要求の受入れ、拒否または削除。 |
複数のルールをRULE_LISTに定義できます。最初に適合したRULEのアクション(ACT)が接続要求に適用されます。ルールが定義されていない場合はすべての接続が受け入れられます。
次の例では、クライアント・コンピュータclient1-pcは、サービスsales.us.example.comへのアクセスが拒否されますが、クライアント192.0.2.45はサービスdb1へのアクセスが許可されます。
(RULE_LIST=
(RULE=(SRC=client1-pc)(DST=sales-server)(SRV=sales.us.example.com)(ACT=reject))
(RULE=(SRC=192.0.2.45)(DST=192.0.2.200)(SRV=db1)(ACT=accept)))
関連項目:
Oracle Connection Managerパラメータの詳細は、『Oracle Database Net Servicesリファレンス』を参照してください。10.2 Oracle Connection Managerの構成方法
Oracle Connection Managerを構成するには、プロキシ・サーバー、データベースおよびクライアントを構成する必要があります。次の項目では、一般的な手順について説明します。
10.2.1 Oracle Connection Managerホスト用のcman.oraファイルの構成
cman.oraファイルは手動で変更します。次の手順では、sqlnet.oraファイルにパラメータを設定する方法について説明します。
ORACLE_BASE_HOME/network/adminディレクトリにあるcman.oraファイルにナビゲートします。cman.oraファイルがORACLE_BASE_HOME/network/adminディレクトリにない場合は、ORACLE_HOME/network/adminディレクトリでファイルを探します。- テキスト・エディタを使用して
cman.oraファイルを開きます。 - リスニング・エンドポイント(ADDRESS)を構成します。
リスニング・エンドポイントでは、Oracle Connection Managerリスナーのプロトコル・アドレスを指定します。Oracle Connection Managerのモニタリング・プロセスCMONでは、このアドレスを使用してリスナーへのゲートウエイ・プロセスに関する情報を登録します。データベースはこのアドレスを使用して、Oracle Connection Managerノードでサービス情報を登録します。
Oracle Connection Managerのリスナーは、常にTCP/IPプロトコルでリスニングします。
(ADDRESS=(PROTOCOL=tcp)(HOST=proxysvr)(PORT=1521))注意:
Oracle Connection Managerは、TCP/IP(バージョン4およびバージョン6)などのプロトコルを使用してデータベースに接続できます。Oracle Database12cリリース2 (12.2)以降、TCPSプロトコルもサポートされています
- アクセス制御ルール・リスト(RULE_LIST)を構成します。
アクセス制御ルール・リストではリスナーにより、受入れ、拒否または削除される接続を指定します。
- パラメータ・リスト(PARAMETER_LIST)を構成します。
パラメータ・リストにより、Oracle Connection Managerの属性を設定します。パラメータの形式は次のとおりです。
10.2.1.1 Oracle Connection Manager (CMAN)でのSecure Sockets Layerの構成
ステップ1: CMANウォレットが作成されていることと、証明書があることを確認してください。
-
Oracle Wallet Managerを起動します。
-
UNIXの場合:
$ORACLE_HOME/binから次のコマンドを入力します。owm -
Windowsの場合: 「スタート」を選択して「プログラム」に移動し、「Oracle-HOME_NAME」をクリックし、「Integrated Management Tools」を選択してから「Wallet Manager」をクリックします。
-
-
「ウォレット」メニューから「オープン」を選択します。
ウォレットにReadyステータスの証明書が含まれ、自動ログインがオンになっている必要があります。自動ログインがオンになっていない場合は、「ウォレット」メニューから選択し、ウォレットを再度保存します。自動ログインがオンになります。
ステップ2: SSL付きTCP/IP (TCPS)を使用するリスニング・エンドポイントを作成し、cman.oraのCMAN側でCMANウォレットの場所を指定します。
次の例は、TCPSプロトコルを使用した cman.oraを示しています。
CMAN_1=
(CONFIGURATION=
(ADDRESS_LIST=
(ADDRESS=(PROTOCOL=tcps)(HOST=proxysvr)(PORT=1522))
(ADDRESS=(PROTOCOL=tcp)(HOST=proxysvr)(PORT=1523))
)
(RULE_LIST=
(RULE=(SRC=*)(DST=*)(SRV=*)(ACT=accept))
)
(PARAMETER_LIST=
(MAX_GATEWAY_PROCESSES=8)
(MIN_GATEWAY_PROCESSSES=3)
)
)
wallet_location =
(SOURCE=
(METHOD=File)
(METHOD_DATA=
(DIRECTORY=wallet_location)
)
)
10.2.1.2 アクセス制御の有効化
TCP/IP環境で指定されたデータベース・サーバーへのクライアント・アクセスを制御するには、RULE_LISTパラメータを使用します。このパラメータでフィルタリング・ルールを入力し、データベース・サーバーへの特定のクライアント・アクセスを許可または制限できます。
次の手順では、アクセス制御の構成方法を説明します。
10.2.2 Oracle Connection Managerを使用する場合のクライアントの構成
Oracle Connection Managerでクライアントをデータベース・サーバーに転送するには、Oracle Connection Managerのプロトコル・アドレスを指定する接続記述子を使用して、tnsnames.oraファイルを構成します。このアドレスを使用して、クライアントからOracle Connection Managerコンピュータに接続できます。接続記述子は次のとおりです。
sales=
(DESCRIPTION=
(ADDRESS=
(PROTOCOL=tcp)
(HOST=cman-pc)
(PORT=1521))
(CONNECT_DATA=
(SERVICE_NAME=example.com)))
次の手順では、Oracle Connection Managerのプロトコル・アドレスを構成する方法について説明します。
-
Oracle Net Managerを起動します。
-
ナビゲータ・ペインで、「ディレクトリ」または「ローカル」メニューから「サービス・ネーミング」を選択します。
-
ツールバーで「+」をクリックするか、「編集」メニューから「作成」を選択します。
「Netサービス名ウィザード」の「ようこそ」ページが表示されます。
-
「ネット・サービス名」フィールドに名前を入力します。
-
「次へ」をクリックします。
「プロトコル」ページが表示されます。
-
Oracle Connection ManagerのTCP/IPプロトコルを選択します。
-
「次へ」をクリックします。
「プロトコル設定」ページが表示されます。
-
Oracle Connection Managerのポートとプロトコルを指定します。Oracle Connection Managerのデフォルトのポート番号は1521、プロトコルはTCP/IPです。
関連項目:
プロトコル・パラメータの設定については、『Oracle Database Net Servicesリファレンス』を参照してください。
-
「次へ」をクリックします。
「サービス」ページが表示されます。
-
「サービス名」フィールドにサービス名を入力し、接続タイプを選択します。
関連項目:
サービス名文字列の設定の詳細は、「接続記述子について」を参照
-
「次へ」をクリックします。
注意:
この時点では接続のテストはできないため、「テスト」はクリックしないでください。
-
「終了」をクリックして構成を保存し、Netサービス名ウィザードを閉じます。
新規のネットワーク・サービス名とOracle Connection Managerプロトコル・アドレスが「サービス・ネーミング」フォルダに追加されます。
10.2.3 Oracle Connection Managerを使用する場合のOracle Databaseサーバーの構成
データベース・サーバーの構成には、リモートからOracle Connection Managerでデータベース情報を登録する方法と、オプションでサーバーの多重化を構成する方法があります。
10.2.3.1 Oracle Connection Managerで使用するためのサービス登録の構成
データベース・サーバーがOracle Connection Managerと通信できるようにするには、tnsnames.oraファイルにサービス名のエントリが含まれ、初期化パラメータ・ファイル(init.ora)に、Oracle Connection Managerのリスニング・アドレスを指定する記述子が含まれている必要があります。次の手順では、サービス登録を構成する方法について説明します。
-
tnsnames.oraファイルのサービス名エントリへのOracle Connection Manager別名を次のように解決します。cman_listener_address= (DESCRIPTION= (ADDRESS_LIST= (ADDRESS=(PROTOCL=tcp) (HOST=proxy_server_name)( PORT=1521))))たとえば、別名
listener_cmanは、tnsnames.oraファイル内の次のエントリに解決されます。listener_cman= (DESCRIPTION= (ADDRESS_LIST= (ADDRESS=(PROTOCOL=tcp)(HOST=proxyserver1)(PORT=1521))))
-
init.oraファイルのOracle Connection Managerの別名を次のように指定します。この別名は、ステップ1のtnsnames.oraファイルで指定した別名です。REMOTE_LISTENER=cman_listener_addressこのアドレスはTCP、ポート1521であり、データベース・サーバーのTCP、ポート1521のデフォルト・ローカル・リスニング・アドレスではないため、別名を指定する必要があります。
たとえば、ホスト
proxyserver1で動作しているOracle Connection Managerリスナーのステップ1で指定した別名は、init.oraファイル上で次のようになっている場合があります。REMOTE_LISTENER=
listener_cman -
データベースがリモート・ノードに存在する場合、
cman.oraのREGISTRATION_INVITED_NODESを構成します。次に例を示します。(registration_invited_nodes=sales.us.example.com,10.245.129.60) -
初期化パラメータ・ファイルがOracle Connection Managerの別名で構成されると、リスナー登録(LREG)プロセスは、Oracle Connection Managerリスナーとしてデータベース情報を登録できます。変更を登録するには、次のコマンドを使用します。
SQL> ALTER SYSTEM REGISTER
10.2.3.2 Oracle Connection Managerのセッションの多重化の有効化
Connection Managerでセッションの多重化を利用できるようにするには、次に示すように初期化パラメータ・ファイル(init.ora)のDISPATCHERSパラメータに、属性PROTOCOLおよびMULTIPLEXを設定します。
DISPATCHERS="(PROTOCOL=tcp)(MULTIPLEX=on)"
表10-2では、多重化の異なるレベルを設定するパラメータを示しています。
表10-2 セッションを多重化するパラメータ
| 属性 | 説明 |
|---|---|
|
PROTOCOL |
ディスパッチャがリスニング・エンドポイントを生成するときに使用するネットワーク・プロトコルです。 |
|
MULTIPLEX |
このパラメータは、次のようにセッションの多重化に使用します。
|
関連項目:
-
共有サーバーの構成の詳細は、「共有サーバー・アーキテクチャの構成」を参照してください
-
パラメータの完全なリストおよびそのデフォルト値と許容値については、『Oracle Database Net Servicesリファレンス』を参照してください。
10.2.4 Traffic DirectorモードのOracle Connection Managerの構成
Traffic DirectorモードのOracle Connection Managerは、データベース・クライアントとデータベース・インスタンスとの間に配置されたプロキシです。
- Traffic DirectorモードのOracle Connection Manager用のcman.oraファイルの構成
- Traffic DirectorモードのOracle Connection Managerのプロキシ認証用のウォレットの構成
- Traffic DirectorモードのOracle Connection Managerのプロキシ認証用のデータベースの構成
- Traffic DirectorモードのOracle Connection Managerでのサービス登録の構成
- Traffic DirectorモードのOracle Connection Managerのプロキシ常駐接続プールの構成
- 計画外イベントのためのTraffic DirectorモードのOracle Connection Managerの構成
- 計画済停止イベントのためのTraffic DirectorモードのOracle Connection Managerの構成
- Traffic DirectorモードのOracle Connection ManagerでのSecure Sockets Layerの構成
- Traffic DirectorモードのOracle Connection Managerの制限事項
10.2.4.1 Traffic DirectorモードのOracle Connection Manager用のcman.oraファイルの構成
Traffic DirectorモードのOracle Connection Managerを設定するには、cman.oraファイルにTDM = YESを設定する必要があります。
cman.ora構成
CMAN_1=
(CONFIGURATION=
(ADDRESS_LIST=
(ADDRESS=(PROTOCOL=tcp)(HOST=TDMHOST)(PORT=1522))
)
(RULE_LIST=
(RULE=(SRC=*)(DST=*)(SRV=*)(ACT=accept))
)
(PARAMETER_LIST=
(TDM=YES)
(TDM_THREADING_MODE=DEDICATED)
(MAX_GATEWAY_PROCESSES=8)
(MIN_GATEWAY_PROCESSSES=3)
)
)
wallet_location =
(SOURCE=
(METHOD=File)
(METHOD_DATA=
(DIRECTORY=wallet_location)
)
)
SQLNET.WALLET_OVERRIDE = TRUE
10.2.4.2 Traffic DirectorモードのOracle Connection Managerのプロキシ認証用のウォレットの構成
Traffic DirectorモードのOracle Connection Managerは、cman.oraファイルで構成する必要があるウォレットを使用してデータベースに接続します。このウォレットには、Traffic DirectorモードのOracle Connection Managerでプロキシ認証に使用されるtdmユーザーのユーザー名およびパスワード情報が含まれています。このtdmユーザーは、Traffic DirectorモードのOracle Connection Managerが接続するすべてのデータベースに存在する必要があります。
次の設定では、Traffic DirectorモードのOracle Connection Managerからのすべてのアウトバウンド接続で、プロキシ認証用に指定された場所のウォレットの資格証明を使用します。
WALLET_LOCATION =
(SOURCE =
(METHOD = FILE)
(METHOD_DATA =
(DIRECTORY = wallet_location)
)
)
SQLNET.WALLET_OVERRIDE = TRUEウォレットは、各サービスに構成されている必要があります。新しいサービスが追加された場合、同じウォレットを使用して新しいサービス用の資格証明を指定する必要があります。
注意:
新しいサービスが追加され、この新しいサービス用の資格証明がウォレットに追加されるたびに、変更を有効にするためにOracle Cloud Traffic Managerを再起動する必要があります。10.2.4.2.1 Traffic DirectorモードのOracle Connection Managerでの外部パスワード・ストアの使用
ステップ1: コマンドラインで次の構文を使用して、Traffic DirectorモードのOracle Connection Managerでウォレットを作成します。
mkstore -wrl wallet_location -createwallet_locationは、ウォレットを作成して格納するディレクトリのパスです。このコマンドにより、指定した場所にOracleウォレットが作成され、自動ログイン機能が使用可能になります自動ログイン機能を使用すると、パスワードを指定せずにTraffic DirectorモードのOracle Connection Managerからウォレットの内容にアクセスできます。
関連項目:
ステップ2: コマンドラインで次の構文を使用して、ウォレットにデータベース接続の資格証明を作成します。
mkstore -wrl wallet_location -createCredential db_service_name username passwordwallet_locationは、ステップ1でウォレットを作成したディレクトリのパスです。db_service_nameは、Oracleネットワーク上のデータベースを識別するために使用するサービス名です。usernameとpasswordは、データベース・ログイン資格証明です。
Traffic DirectorモードのOracle Connection Managerを使用してアクセスする必要があるデータベース・サービスごとに、このステップを繰り返します。
注意:
-
指定されたデータベースのすべてのサービス間で同じtdmユーザーを使用できます。ただし、必要に応じて、各サービスに異なるtdmユーザーを関連付けることもできます。
-
プラガブル・データベース(PDB)のサービスの場合、tdmユーザーの設定には次の2つの選択肢があります。
共通tdmユーザー: tdmユーザーを共通ユーザーにすることができます。この場合、Traffic DirectorモードのOracle Connection Managerは、マルチテナント・コンテナ・データベース(CDB)内の異なるPDBからのユーザーをプロキシ認証するために、資格証明のセットを1つ使用します。
PDBごとのtdmユーザー: tdmユーザーをPDB固有のユーザーにすることができます。この場合、Traffic DirectorモードのOracle Connection Managerは、特定のPDBのユーザーをプロキシ認証するために、PDB固有のプロキシ・ユーザーを使用します。
-
SSL付きTCP/IP(TCPS)構成の場合、Traffic DirectorモードのOracle Connection Managerのウォレットはすでに作成されています。したがって、ステップ1を省略し、mkstoreでwallet_locationを指定する際、TCPS構成に使用したのと同じ場所を使用します。
10.2.4.3 Traffic DirectorモードのOracle Connection Managerのプロキシ認証用のデータベースの構成
アプリケーションがTraffic DirectorモードのOracle Connection Managerを介して接続するすべてのデータベースには、tdmなどのユーザーが必要です。Traffic DirectorモードのOracle Connection Managerはプロキシ認証を使用し、tdmユーザーとしてデータベースに接続します。Traffic DirectorモードのOracle Connection Managerを経由して接続する必要があるすべてのユーザーには、次のようにCONNECT THROUGH tdm権限を付与する必要があります。
ALTER user SCOTT GRANT CONNECT THROUGH tdm
10.2.4.5 Traffic DirectorモードのOracle Connection Managerのプロキシ常駐接続プールの構成
Traffic DirectorモードのOracle Connection Manager 18.1は、プロキシ常駐接続プーリング(PRCP)をサポートしています。PRCPは、ターゲット・データベースへの少数のサーバー接続で構成される接続プールを使用して、ルーティングされる多数のクライアント接続に対して接続サービスを提供します。PRCPは、データベース層での接続負荷(接続時のメモリー使用量)を軽減し、実行時ロード・バランシング(RLB)を実行してパフォーマンスを高めます。これにより、データベースに対する接続負荷を軽減できます。
oraaccess.xml構成ファイルで次のパラメータのセットを指定することで構成されます。
-
<session_pool>– セッション・プール・パラメータを設定します。 -
<enable>–trueまたはfalseを指定して、セッション・プールの構成を有効にします。これは必須のパラメータです。つまり、<session_pool>が構成されている場合、<enable>の構成も必要です。 -
<min_size>— プール内の最小接続数。デフォルト値は0です。Traffic DirectorモードのOracle Connection Managerは異機種間プールのシナリオであるため、他のすべての値は無視されます。 -
<max_size>— プール内の最大接続数。これは必須のパラメータであるため、デフォルト・パラメータはありません。つまり、<session_pool>が構成されている場合、<max_size>の構成も必要です。 -
<increment>— プール拡張時のプール内の接続数の増加数。デフォルト値は1です。 -
<inactivity_timeout>— プール内でアイドル状態の接続が切断されるまでの最大時間(秒単位)。デフォルト値は0です。これは制限されていないことを意味します。 -
<max_use_session>— 接続を取得し、プールに解放できる最大回数。デフォルト値は0です。これは制限されていないことを意味します。 -
<max_life_time_session>— プール内の接続の有効期限(秒単位)。デフォルト値は0です。これは制限されていないことを意味します。
oraaccess.xmlファイルを使用して、必要な接続サービスごとにプロキシ常駐接続プールを構成できます。次の例では、2つのグループの接続パラメータが示され、それぞれがsales_configとhr_configというconfig別名に関連付けられています。アプリケーションが使用する各接続文字列はそれぞれのconfig別名にマップされているため、2つのプロキシ常駐接続プールが示されています。<oraaccess xmlns="http://xmlns.oracle.com/oci/oraaccess"
xmlns:oci="http://xmlns.oracle.com/oci/oraaccess"
schemaLocation="http://xmlns.oracle.com/oci/oraaccess
http://xmlns.oracle.com/oci/oraaccess.xsd">
<default_parameters>
</default_parameters>
<!--
Create configuration descriptions, which are
groups of connection parameters associated with
a config_alias.
-->
<config_descriptions>
<config_description>
<config_alias> sales_config </config_alias>
<parameters>
<session_pool>
<enable>true</enable>
<min_size> 10 </min_size>
<max_size> 100 </max_size>
<increment> 5 </increment>
</session_pool>
</parameters>
</config_description>
<config_description>
<config_alias> hr_config </config_alias>
<parameters>
<session_pool>
<enable>true</enable>
<max_size> 10 </max_size>
</session_pool>
</parameters>
</config_description>
</config_descriptions>
<!--
Now map the connection string used by the application
with a config_alias.
-->
<connection_configs>
<connection_config>
<connection_string>sales.us.example.com</connection_string>
<config_alias>sales_config</config_alias>
</connection_config>
<connection_config>
<connection_string>hr.us.example.com</connection_string>
<config_alias>hr_config</config_alias>
</connection_config>
</connection_configs>
</oraaccess>
関連項目:
Oracle CMAN構成ファイルの概要については、Oracle Database Net Servicesリファレンスを参照してください
10.2.4.6 計画外イベントのためのTraffic DirectorモードのOracle Connection Managerの構成
Traffic DirectorモードのOracle Connection Managerは、高速アプリケーション通知(FAN)イベントに暗黙的にサブスクライブします。このためには、oraaccess.xmlでeventsを有効にする必要があります。
DBMS_SERVICEまたはSRVCTL (Oracle RACデータベースの場合)を使用して、特定のサービスのCOMMIT_OUTCOMEを指定します。
関連項目:
-
DBMS_SERVICEの詳細は、Oracle Database PL/SQLパッケージ・プロシージャおよびタイプ・リファレンスを参照してください -
SRVCTLに関する詳細は、Oracle Clusterware管理およびデプロイメント・ガイドを参照してください
10.2.4.7 計画済停止イベントのためのTraffic DirectorモードのOracle Connection Managerの構成
Traffic DirectorモードのOracle Connection Managerは、高速アプリケーション通知(FAN)イベントに暗黙的にサブスクライブします。このためには、oraaccess.xmlでeventsを有効にする必要があります。
計画済停止イベントの場合、DBMS_SERVICEまたはSRVCTLを使用してサービスを構成し、failover_modeをselectに、commit_outcomeをTRUEに、failover_restoreをLEVEL1に設定します。
関連項目:
-
DBMS_SERVICEの詳細は、Oracle Database PL/SQLパッケージ・プロシージャおよびタイプ・リファレンスを参照してください -
SRVCTLに関する詳細は、Oracle Clusterware管理およびデプロイメント・ガイドを参照してください
10.2.4.8 Traffic DirectorモードのOracle Connection ManagerでのSecure Sockets Layerの構成
ステップ1: Traffic DirectorモードのOracle Connection Managerのウォレットが作成されていることと、証明書があることを確認してください。
-
Oracle Wallet Managerを起動します。
-
UNIXの場合:
$ORACLE_HOME/binから次のコマンドを入力します。owm -
Windowsの場合: 「スタート」を選択して「プログラム」に移動し、「Oracle-HOME_NAME」をクリックし、「Integrated Management Tools」を選択してから「Wallet Manager」をクリックします。
-
-
「ウォレット」メニューから「オープン」を選択します。
ウォレットにReadyステータスの証明書が含まれ、自動ログインがオンになっている必要があります。自動ログインがオンになっていない場合は、「ウォレット」メニューから選択し、ウォレットを再度保存します。自動ログインがオンになります。
ステップ2: SSL付きTCP/IP (TCPS)を使用するリスニング・エンドポイントを作成し、cman.oraのCMAN側でTraffic DirectorモードのOracle Connection Managerのウォレットの場所を指定します。
次の例は、TCPSプロトコルを使用したcman.oraを示しています。
CMAN_1=
(CONFIGURATION=
(ADDRESS_LIST=
(ADDRESS=(PROTOCOL=tcps)(HOST=proxysvr)(PORT=1522))
(ADDRESS=(PROTOCOL=tcp)(HOST=proxysvr)(PORT=1523))
)
(RULE_LIST=
(RULE=(SRC=*)(DST=*)(SRV=*)(ACT=accept))
)
(PARAMETER_LIST=
(MAX_GATEWAY_PROCESSES=8)
(MIN_GATEWAY_PROCESSSES=3)
)
)
wallet_location =
(SOURCE=
(METHOD=File)
(METHOD_DATA=
(DIRECTORY=wallet_location)
)
)
SQLNET.WALLET_OVERRIDE = TRUE10.2.4.9 Traffic DirectorモードのOracle Connection Managerの制限事項
Traffic DirectorモードのOracle Connection Managerでは、次の機能はすべてのドライバでサポートされていません。
-
分散トランザクション
-
アドバンスト・キューイング(AQ)
-
データベースの起動または停止のコール
-
シャーディング
-
XML
-
SQL翻訳
-
プロキシ認証およびSSL外部認証(DNなど)
-
オブジェクトREF
-
セッションの切替え
-
ナビゲーション・アクセスのためのOCIObject*コール
-
OCIPickerImage*コール
-
OCIAnyData*コール
-
OCIDirPath*コール
-
OCISubscription*コール
-
OCILCR*、OCIXStream*コール
-
OCIStmtExecute:
-
スクロール可能カーソル
-
暗黙的結果
-
-
変更通知(CQN)
-
クライアント結果キャッシュ
-
OCI_MIGRATEモード
-
DRCP: マルチプロパティのタグとPL/SQLコールバック
-
アプリケーション・コンティニュイティ
-
OCIConnectionPool
-
SYSDBA、SYSOPERなどの認証
-
Real Application Security (Javaの場合のみ)
-
データ型
-
PL/SQL索引付き表のバインド
-
-
一括コピー(ODP.Netのみ)
-
自己チューニング(ODP.Netのみ)
-
ASO暗号化およびサポートされているアルゴリズム(ASOのみ)
10.3 IPv4およびIPv6のブリッジとしてのOracle Connection Managerの使用
一部のデータベース接続環境では、クライアントとデータベースが異なるバージョンのIPプロトコルを使用できるため、完全な接続性が存在しません。この場合、接続に少なくとも2つのホップが異なるバージョンのIPプロトコルを使用しています。たとえば、要求は、IPv4ソースからIPv6宛先、IPv6ソースからIPv4宛先、またはIPv4ネットワークを通じてIPv6からIPv6に渡されます。
IPv4とIPv6の間のネットワーク・ブリッジとしてOracle Connection Managerを使用できます。Oracle Connection Managerがブリッジとして機能するには、少なくとも1つのIPv4インタフェースと少なくとも1つのIPv6インタフェースで構成されたデュアル・スタック・ホスト上で実行する必要があります。
IPv6アドレスに基づいてフィルタにかけるには、Oracle Connection Managerのフィルタリング機能を使用します。ルールは、完全なIPアドレスまたは部分的なIPアドレスに基づいて設定できます。次の図は、IPv6アドレスの形式を示しています。
図の上部の数字は、アドレス内のビット数を示しています。IPv6アドレスの各16進文字は、4ビットを表します。ビット4から16はアドレスの最上位レベルのアグリゲータ識別子(TLA ID)部分です。ビット25から49は次のレベルのアグリゲータ識別子(NLA ID)部分です。
たとえば、アドレス2001:0db8::203:BAFF:FE0F:C74Bでは、最初の4つの16進文字(2001)のバイナリ表記は次のようになります。
0010000000000001したがって、アドレス内の先頭の3ビットは001になります。アドレスのTLA ID部分は0000000000001になります。
次の手順では、IPv6アドレス用のルール・フィルタを作成する方法について説明します。
ORACLE_BASE_HOME/network/adminディレクトリにあるcman.oraファイルにナビゲートします。cman.oraファイルがORACLE_BASE_HOME/network/adminディレクトリにない場合は、ORACLE_HOME/network/adminディレクトリでファイルを探します。- テキスト・エディタを使用して
cman.oraファイルを開きます。 - IPv6アドレス形式に基づいて、
RULE_LISTでRULEを作成します。たとえば、ソース・ホストがアドレス
2001:0db8::203:BAFF:FE0F:C74BのIPv6専用ホストで、宛先がSALESL1593という名前のIPv4専用ホストであるとします。次のいずれかのルールを作成して、Oracle Connection ManagerをIPv6とIPv4の間のブリッジとして構成します。ルールのタイプ 説明 例 サブネットIDに基づいたフィルタ
フィルタリングはサブネットID以下の64ビットに基づいています。
(RULE = (SRC = 2001:0db8::203:BAFF:FE0F:C74B/64) (DST = SALESL1593) (SRV = SALES) (ACT = ACCEPT) (ACTION_LIST = (AUT=ON)(MOCT=10)(MIT=30)(CONN_STATE=YES)) )NLA IDに基づいたフィルタ
フィルタリングはNLA ID以下の48ビットに基づいています。
(RULE = (SRC = 2001:0db8::203:BAFF:FE0F:C74B/48) (DST = SALESL1593) (SRV = SALES) (ACT = ACCEPT) (ACTION_LIST = (AUT=ON)(MOCT=10)(MIT=30)(CONN_STATE=YES)) )TLA IDに基づいたフィルタ
フィルタリングはTLA ID以下の16ビットに基づいています。
(RULE = (SRC = 2001:0db8::203:BAFF:FE0F:C74B/16) (DST = SALESL1593) (SRV = SALES) (ACT = ACCEPT) (ACTION_LIST = (AUT=ON)(MOCT=10)(MIT=30)(CONN_STATE=YES)) )ビット数に基づいたフィルタ
フィルタリングはアドレスの先頭の60ビットに基づいています。
(RULE = (SRC = 2001:0db8::203:BAFF:FE0F:C74B/60) (DST = SALESL1593) (SRV = SALES) (ACT = ACCEPT) (ACTION_LIST = (AUT=ON)(MOCT=10)(MIT=30)(CONN_STATE=YES)) )
関連項目:
-
IPv6の詳細は、「TCP/IPプロトコルについて」を参照してください
10.4 Oracle Connection Manager制御ユーティリティを使用したOracle Connection Managerの管理
Oracle Connection Manager制御ユーティリティによって、Oracle Connection Managerを管理できます。オペレーティング・システムからコマンドを発行する場合、このユーティリティの基本構文は次のとおりです。
cmctl [command] [argument1 . . . argumentN] [-c instance_name]
前述のコマンドで、-cはOracle Connection Managerのインスタンスを指定しています。パスワードがすでに設定されている場合は、パスワードの入力を求められます。
警告:
コマンドラインでパスワードを指定するオプションがあります。ただし、これにより画面上にパスワードが表示されるため、潜在的なセキュリティ上のリスクがあります。コマンドラインでパスワード・オプション(-p)を使用しないことをお薦めします。
たとえば、次のコマンドは、リスナー、CMADMIN(Connection Manager Administration)およびcman1という名前のインスタンスのゲートウェイ・プロセスを起動します。
cmctl STARTUP -c cman1
CMCTLプロンプトから、Oracle Connection Managerユーティリティ・コマンドを発行することもできます。プロンプトを取得するには、オペレーティング・システムのコマンドラインから引数なしでcmctlを入力します。セキュア・インストール・オプションでOracle Connection Managerをインストールした場合は、ユーティリティによってパスワードが求められることがあります。CMCTLを実行すると、ユーティリティが起動され、CMCTLプロンプトから必要なコマンドを入力できます。CMCTLプロンプトの例を次に示します。
cmctl
CMCTL> STARTUP注意:
STARTUPコマンドを発行する前に、次の手順に従います。
-
cman.oraファイルを作成します。サンプル・ファイルは、Oracle Connection Managerをインストールした後のORACLE_BASE_HOME/network/admin/samplesディレクトリにあります。 -
ADMINISTERコマンドを実行して、起動するインスタンスを選択します。
関連項目:
-
Oracle Connection Managerプロセスの概要については、「Oracle Connection Managerのアーキテクチャの理解」を参照してください
-
Oracle Connection Manager制御ユーティリティのコマンドの詳細な説明は、『Oracle Database Net Servicesリファレンス』を参照してください。
10.5 Traffic DirectorモードのOracle Connection Managerの使用について
Traffic DirectorモードのOracle Connection Managerは、サポートされているデータベース・クライアントとデータベース・インスタンスとの間に配置されたプロキシです。
現在のデータベースのOCIクライアントまたはサポートされている古いバージョンのOCIクライアント(Oracle Database 11gリリース2 (11.2)以降)は、Traffic DirectorモードのOracle Connection Managerに接続できます。Traffic DirectorモードのOracle Connection Managerでは、高可用性(HA)が改善され(計画済、計画外を問わず)、接続の多重化がサポートされ、ロード・バランシングが提供されます。また、この機能には、Oracle Connection Manager (CMAN)やサービスの停止イベントに関する計画済停止についてOCIクライアントに伝えるインバンド・クライアント通知メカニズムが用意されています。Traffic DirectorモードのOracle Connection Managerを構成するには、cman.ora構成ファイルで追加のCMANパラメータを指定する必要があります。
Traffic DirectorモードのOracle Connection Managerとして機能するCMANを構成するには、tdmやtdm_threading_modelなどの新しいパラメータをcman.ora構成ファイルに追加する必要があります。Oracle Connection Manager (CMAN)は、Oracle RACデータベースとRAC以外のデータベースの両方のための標準Oracle Netプロキシです。
Traffic DirectorモードのOracle Connection Managerが接続するデータベースには、アプリケーション・ユーザーとして接続できるよう、CONNECT THROUGH権限を付与されたtdmなどのユーザーが存在する必要があります。Traffic DirectorモードのOracle Connection Managerはプロキシ認証を使用し、このユーザーとして接続します。
関連項目:
Traffic DirectorモードのOracle Connection Managerをサポートするcman.oraファイル内の既存のパラメータについては、Oracle Database Net Servicesリファレンスを参照してください。
CONNECT THROUGHの詳細は、Oracle Databaseセキュリティ・ガイドを参照してください。
このリリースでは、Traffic DirectorモードのOracle Connection Managerは次のようなサポートを提供します。
-
透過的パフォーマンスの強化および接続の多重化
-
アプリケーション停止時間ゼロ
-
計画済のデータベース・メンテナンスまたはPDBの再配置
-
大部分が読取りのワークロードでの計画外データベース停止
-
-
単一障害点のないTraffic DirectorモードのOracle Connection Managerの高可用性
-
セキュリティと分離
操作のモード
-
プールされた接続モード
これには、次のデータベース・クライアント・リリースを使用する任意のアプリケーションが含まれます。-
OCIおよびオープン・ソース・ドライバ(11.2.0.4以降)
-
JDBC (12.1以降)
-
ODP.NET (12.2以降)
-
-
プールされていない接続(または専用)モード
これには、データベース・クライアント・リリース11.2.0.4以降を使用する任意のアプリケーションが含まれます。このモードでは、接続の多重化などの一部の機能は使用できません。
透過的パフォーマンスの強化およびセッションの多重化
-
文キャッシュ、行のプリフェッチおよび結果セット・キャッシュがすべての操作モードで自動的に有効になります。
-
プロキシ常駐接続プール(PRCP、プロキシ・モードのDRCP)を使用したデータベース・セッションの多重化(プールされたモードのみ)。アプリケーションは、TDMとデータベースとの間における透過的な接続時 ロード・バランシングおよび実行時ロード・バランシングを利用できます。
-
Traffic DirectorモードのOracle Connection Managerの複数のインスタンス: クライアント側の接続時ロード・バランシングにより、またはロード・バランサ(BigIP、NGINXなど)により、アプリケーションのスケーラビリティが向上します
アプリケーション停止時間ゼロ - 計画済のデータベース・メンテナンスまたはPDBの再配置
-
プールされたモード
Traffic DirectorモードのOracle Connection Managerは、計画済停止のONSイベントに応答し、作業をリダイレクトします。要求が完了すると、Traffic DirectorモードのOracle Connection Managerのプールから接続がドレインされます。
サービスの再配置は、データベース・リリース11.2.0.4以降でサポートされています。
PDBの再配置: PDBが再配置されると、ONSが構成されていなくても、Traffic DirectorモードのOracle Connection Managerはインバンド通知に応答します(18.1以降のサーバーの場合のみ)
-
プールされていないモードまたは専用モード
クライアントからのリクエスト境界情報は受信しません。Traffic DirectorモードのOracle Connection Managerは、多くのアプリケーションの計画済停止をサポートしています(リクエストまたはトランザクションの境界を越えて単純なセッション状態やカーソル状態のみを保持する必要がある場合)。これには、次の操作が含まれます。-
トランザクション境界でサービスまたはPDBを停止するか、Oracle Database 18cの「継続的なアプリケーション可用性」を利用してリクエスト境界でサービスを停止します。
-
Traffic DirectorモードのOracle Connection Managerは、「TAFのフェイルオーバーのリストア」を利用して、再接続して単純な状態をリストアします。
-
計画外のデータベース停止
プールされたモードとプールされていない(専用)モードの両方で、Traffic DirectorモードのOracle Connection Managerは、「TAFのフェイルオーバーのリストア」を利用して単純なセッション状態またはカーソル状態をリストアし、SELECT文と最初のDML文をリプレイすることで、大部分が読取りのアプリケーションの計画外停止をサポートします。
セキュリティと分離
Traffic DirectorモードのOracle Connection Managerには、次のような機能があります。
-
TCP/TCPSとプロトコルの変換をサポートするデータベース・プロキシ
-
IPアドレス、サービス名およびSSL/TLSウォレットに基づくファイアウォール
-
マルチテナント環境でのテナントの分離
-
サービス拒否攻撃とファジング攻撃からの保護
-
オンプレミス・データベースとOracle Cloudの間のデータベース・トラフィックのセキュア・トンネリング
Traffic DirectorモードのOracle Connection Managerの高可用性
-
ロード・バランサやクライアント側ロード・バランシング、接続文字列でのフェイルオーバーを使用した、Traffic DirectorモードのOracle Connection Managerの複数のインスタンス
-
Traffic DirectorモードのOracle Connection Managerのインスタンスのローリング・アップグレード
-
計画済停止におけるクライアントからTraffic DirectorモードのOracle Connection Managerへの既存の接続のクローズ
-
Oracle Databaseリリース18c以降のクライアントへのインバンド通知。以前のリリースのクライアントの場合、現在のリクエストのレスポンスとともに通知が送信されます。
- Traffic DirectorモードでのOracle Connection Managerの機能拡張
Traffic DirectorモードのOracle Connection Managerでは、高可用性およびデータベースへのフェイルオーバーを拡張するデータベース・リンクがサポートされるようになりました。
10.5.1 Traffic DirectorモードでのOracle Connection Managerの機能拡張
Traffic DirectorモードのOracle Connection Managerでは、高可用性およびデータベースへのフェイルオーバーを拡張するデータベース・リンクがサポートされるようになりました。
- 固定ユーザー: ユーザーは、データベース・リンクの作成時に指定されたユーザー名とパスワードを使用して、リモート・データベースに接続します。
- 接続ユーザー: ユーザーは、データベース・リンクにアクセスするユーザーの資格証明を使用してリモート・データベースに接続します。これらの資格証明には、ユーザー名とパスワード、または外部(Kerberosチケットなど)があります。
次のシナリオでは、Traffic Directorモードでデータベース・リンクを使用できます。
- シナリオ1:
クライアントがデータベースに直接接続する場合
このシナリオでは、固定ユーザー・データベース・リンクと接続ユーザー・データベース・リンクの両方が機能します。
- シナリオ2:
クライアントがTraffic Directorモードを使用してデータベースに接続する場合
このシナリオでは、固定ユーザー・データベース・リンクのみが機能します。接続ユーザー・データベース・リンクが機能しないのは、TDMとデータベース間のセッションがプロキシ・ユーザー・セッションであるためです。セキュリティ上の理由で、プロキシ・ユーザー・セッションはデータベース・リンクで許可されません。
注意:
データベース・リンクがTDMと連携するようにするには、TDMが特定のデータベース・サービスのプロキシ常駐接続プール(PRCP)モードで実行されていない必要があります。
10.6 CMCTL RESTインタフェースについて
CMCTL RESTインタフェースは、RESTインタフェースを使用してリモート・マシンからOracle Connection Manager (Oracle CMAN)インスタンスを管理するために役立ちます。HTTPSをサポートしているクライアントは、CMCTLと同等のコマンドを発行できます。各REST APIコールには、Basic認証方式が指定されているWWW-Authenticate HTTPSヘッダーが必要です。
- CMCTL RESTインタフェースの構成
CMCTL RESTインタフェースを構成するには、次のステップを実行します。 - CMCTLコマンドのREST API
CMCTL RESTインタフェースを使用すると、クラウド・デプロイメントにおけるCMANタスクを自動化できます。この機能は、CMANのcmctl制御ユーティリティに似ています。
10.6.2 CMCTLコマンドのREST API
CMCTL RESTインタフェースを使用すると、クラウド・デプロイメントにおけるCMANタスクを自動化できます。この機能は、CMANのcmctl制御ユーティリティに似ています。
CMCTL RESTインタフェースでは、RESTインタフェース・プロセスとOracle CMANリスナーとの間でローカル・オペレーティング・システム認証が使用されます。
REST構成を含むOracle CMANインスタンスを起動した後は、HTTPS基本認証を使用してRESTコールを行うことができます。
CMAN REST APIを確認するには、curlコマンドライン・ツールを使用します。たとえば、実行中のサービスを一覧表示するには、次のコマンドを使用します。
注意:
curlコマンドは、テストおよび検証の目的にのみ使用されます。
curl -X GET -u username:password https://cmanhostname:rest_port/show/services10.7 パッチ適用時のCMANセッションの移行
計画的な、停止時間なしのOracle CMANのアップグレードまたはパッチ適用の間に、確立されたクライアント/サーバー・セッションを、あるOracle Connection Manager (CMAN)インスタンスから別のOracle CMANインスタンスに移行できます。
移動中のデータがある実行中のセッションは、サービスを中断することなく移行できます。クライアントまたはサーバーで実行されている操作は、サービスが失われることなく、移行中にシームレスに引き続き実行されます。移行中に新しいクライアント接続を追加することもできます。
クライアント/サーバー・セッションを移行するには、次のステップを実行します。
- クライアントからOracle CMANおよびOracle CMANからサーバーの両方でTCPが使用される場合。
- クライアントまたはサーバーの一方でTCPS (TLS)、他方でTCPが使用される場合。TCPSを使用するクライアントとTCPSを使用するサーバーの両方にOracle Database 19c以降をインストールする必要があります。
サポートされていない接続は、タイムアウトするまで接続されたままになります。
注意:
- クライアントからOracle CMANおよびOracle CMANからサーバーの両方でTCPSが使用される場合、移行はサポートされません。
- 現在、Microsoft Windowsではセッションの移行はサポートされません。
10.8 Oracle Connection Managerの機能強化
Oracle Connection Managerは、Oracle Databaseサーバーへのリクエストをプロキシおよび選別します。
-
SSLプロトコルのサポートにより、サーバーへのアクセスのセキュリティが強化されています。このサポートにより、データベース・クライアントは、Oracle Connection Managerを経由したTCPSプロトコルによるサーバーとの通信が可能になります。また、Oracle Connection Managerは、一方がSSL接続、もう一方が非SSL接続になるように構成することもできます。これは、外部クライアント向けの内部データベース・サーバーをインターネットから隠すための安全策としても機能します。
多重化: データベース・クライアントがリクエストしたエンドポイントに、すでにゲートウェイがTCPS接続している場合、新しい接続はゲートウェイによって同じ接続で多重化されます。
-
複数のプロトコル・アドレス上でのリッスンが可能になっています。複数のリスニング・エンドポイントにより、Oracle Connection ManagerはTCPとTCPSの両方を同時にサポートできるようになりました。従来の単一プロトコル・アドレスの構成も引き続きサポートされます。次に例を示します。
CMAN_ALIAS= (configuration= (address_list= (address=(protocol=TCP)(host=a.b.c.d)(port=12522)) (address=(protocol=TCPS)(host=a.b.c.d)(port=12523)) ) .. ) -
ネットワーク・データの圧縮機能も追加されています。これにより、ネットワーク・スループットが向上し、Oracle DatabaseクライアントとOracle Databaseサーバーとの間のデータ転送が高速化されます。これは、データベース・クライアント、データベース・サーバー、およびネクスト・ホップの圧縮機能に応じて、様々な方法で実現されます。圧縮は、あらゆる2つのノード間でネゴシエートされたときに有効化されます。
連続した3つ以上のノードが圧縮をサポートしていてネゴシエートした場合、このケースは、中間ノードが圧縮解除を実行することなく単に圧縮されたデータを中継するという方法で処理されます。
圧縮は、Oracle DatabaseクライアントがOracle Database 12cリリース以前で圧縮をサポートできない場合でも、Oracle Connection Managerとサーバーとの間でサポートされます。
-
最大2 MBのSDUがサポートされているため、Oracle DatabaseクライアントとOracle Databaseサーバーは、Oracle Connection Managerによって接続を確立するときに、より高いSDUをネゴシエートできます。
-
このリリースから、登録に対する有効ノード・チェックがOracle Connection Managerのデフォルトで有効化されます。デフォルトでは、Oracle Connection Managerに登録できるデータベースは、ローカル・ノード上にあるデータベースにかぎられます。リモート・ノード上のデータベースは、パラメータの
.REGISTRATION_INVITED_NODESとREGISTRATION_EXCLUDED_NODESを使用することで、Oracle Connection Managerへの登録を許可または拒否できます。これらのパラメータの詳細は、『Oracle Database Net Servicesリファレンス』を参照してください。 -
Oracle Database 20c以降では、Oracle Connection Managerを使用して、サービス全体での帯域幅の配分を管理できます。
Oracle Connection Managerには、次のような機能拡張があります。
- CMCTLコマンドのREST API
- ルールのGROUP構文
- サービス・レベルでの1秒当たりのバイト数で示すBANDWIDTH
