3.6.15 Amazon RDS for PostgreSQLに接続する場合の条件と設定
ここでは,Amazon RDS for PostgreSQLに接続する場合の条件と設定について説明します。
- 〈この項の構成〉
(1) Amazon RDS for PostgreSQLに接続するための前提条件
J2EEサーバを推奨モードで使用する場合だけ接続をサポートします。V9互換モードの場合はサポート対象外です。
Amazon RDS for PostgreSQLに接続する場合のサポート条件を次の表に示します。
項目 |
条件 |
---|---|
接続に使用できるJDBCドライバと接続先のAmazon RDS for PostgreSQLのDBMSバージョン |
リリースノートの前提ソフトウェアの項目に記載されているAmazon RDS for PostgreSQLに接続する場合の条件に従ってください。 |
接続に使用するDB Connector |
DBConnector_PostgreSQL_CP.rar |
- 注意事項
-
接続に使用するDB ConnectorであるDBConnector_PostgreSQL_CP.rarでは,グローバルトランザクションを利用できません。
DB Connectorの設定条件を次の表に示します。設定方法については,「(4)アプリケーションサーバの設定」を参照してください。
設定項目 |
設定条件 |
---|---|
コネクションプーリング |
有効 |
障害検知 |
コネクション取得要求時 |
(2) Amazon RDS for PostgreSQLの使用条件
アプリケーションサーバ稼働中のAmazon RDS for PostgreSQLの操作実行可否を次の表に示します。なお,次の表で「Amazon RDS for PostgreSQLの操作」列に存在しない操作についても,アプリケーションサーバの稼働中には実行できません。
Amazon RDS for PostgreSQLの操作 |
アプリケーションサーバ稼働中の操作実行可否 |
---|---|
フェイルオーバー |
○ |
パラメータの変更 |
× |
DBインスタンスのメンテナンス |
× |
DBインスタンスの名前変更 |
× |
リードレプリカとの接続 |
○ |
DBインスタンスのスケールアップおよびスケールダウン |
× |
DBインスタンスのストレージ容量のスケールアップ |
× |
DBインスタンスのストレージタイプの変更 |
× |
バックアップの作成 |
○ |
DB接続のSSL暗号化 |
○ |
(凡例) ○:実行できる ×:実行できない
複数のリージョン間で機能を使用する場合や,複数のリージョン間での使用を前提とする機能を使用する場合は,利用者側で動作に問題がないことを十分確認することを前提としてください。動作確認で問題があったDB Connectorの機能についてはサポート対象外になります。
データベース認証オプションは,パスワード認証だけ使用できます。
(3) 使用できるアプリケーションサーバの機能
アプリケーションサーバにはデータベースを前提とする機能があります。Amazon RDS for PostgreSQLと接続した場合の使用可否を次の表に示します。
アプリケーションサーバの機能 |
使用可否 |
---|---|
DB Connectorによるデータベース接続 |
○ |
Cosminexus Reliable Messaging |
× |
Entity Bean |
× |
アプリケーションサーバのJPAプロバイダ |
○ |
Java Batch機能 |
× |
データベース監査証跡連携機能 |
× |
データベースセッションフェイルオーバ機能 |
× |
(凡例) ○:使用できる ×:使用できない
(4) アプリケーションサーバの設定
Amazon RDS for PostgreSQLに接続するために必要な,アプリケーションサーバに関する設定について説明します。
(a) DB Connectorの設定
DB Connectorの設定については,マニュアル「アプリケーションサーバ アプリケーション設定操作ガイド」の「4.2 データベースと接続するための設定」を参照してください。ただし,インポートするDB Connectorと,DB Connectorのプロパティ定義は次の説明に従ってください。
- インポートするDB Connector
-
DBConnector_PostgreSQL_CP.rar
- DB Connectorのプロパティ定義
-
Connector属性ファイルの<hitachi-connector-property>−<resourceadapter>−<outbound-resourceadapter>−<connection-definition>−<connector-runtime>−<property>タグに,次の表に示すDB Connectorの実行時プロパティを設定してください。
表3‒58 設定が必要なDB Connectorの実行時プロパティ property-name
property-type
property-value
デフォルト値
MaxPoolSize
int
プール内のコネクションの最大数を指定します。1〜2147483647の整数値を指定してください。0以下の整数値は指定できません。
10
MinPoolSize
int
プール内のコネクションの最小数を指定します。1〜2147483647の整数値を指定してください。0以下の整数値は指定できません。
10
ValidationType
int
コネクション障害検知機能の障害検知のタイミングを指定します。1(コネクション取得要求時にチェック)を指定してください。
1
MaxPoolSizeおよびMinPoolSizeのプロパティを設定すると,コネクションプーリング機能が有効になります。コネクションプーリング機能の詳細は,「3.14.1 コネクションプーリング」を参照してください。また,ValidationTypeのプロパティを設定すると,コネクション障害検知機能が有効になります。コネクション障害検知機能の詳細は,「3.15.1 コネクションの障害検知」を参照してください。
(b) Developer's Kit for Javaの設定
Amazon RDSのマルチAZ構成を利用する場合は,Java環境にドメインネームシステム(DNS)の名前解決結果のキャッシュ時間の設定が必要です。Amazon RDS for PostgreSQLからの案内に従い,Developer's Kit for Javaに対してドメインネームシステム(DNS)の名前解決結果のキャッシュ時間を設定してください。設定先のファイルを次に示します。
<Developer's Kit for Javaインストールディレクトリ>/conf/security/java.security
(5) データベースの設定
データベースおよび接続に使用するクライアントのタイムアウトを適切に設定してください。特に接続に使用するクライアントからの応答が返らなかった場合,アプリケーションサーバやDB Connectorが応答を待ち続けてしまうことがあるため注意してください。Amazon RDS for PostgreSQLに接続する場合は,接続に使用するクライアントのタイムアウトとしてソケット読み込みタイムアウトを設定してください。
接続に使用するクライアントのタイムアウト値を検討する際には,アプリケーションサーバが持つ各タイムアウトの区間との内包関係を確認してください。各タイムアウトが適切に動作するために,タイムアウト値の大小関係に注意が必要です。タイムアウトを設定する場合の指針については,マニュアル「アプリケーションサーバ システム設計ガイド」の「8.6 タイムアウトを設定する」を参照してください。Amazon RDS for PostgreSQLに接続する場合に設定できるタイムアウトについては,Amazon RDS for PostgreSQLやPostgreSQLのドキュメントを参照してください。
(6) Amazon RDS for PostgreSQLでフェイルオーバーが発生した場合のDB Connectorの動作
Amazon RDS for PostgreSQLでフェイルオーバーが発生した場合のDB Connectorの動作については,「3.6.18 マネージドデータベースサービスがフェイルオーバーした場合のDB Connectorの動作」を参照してください。