Amazon RDS を IBM App Connect Enterprise と併用する
Amazon リレーショナル・データベース・サービス (RDS) は、 AWS クラウド上でリレーショナル・データベースをセットアップ、実行、およびスケーリングするために使用できる、 Amazon Web Services による管理対象 SQL データベースです。 コスト効率の良いセキュリティー、高可用性と耐久性、業界標準のリレーショナル・データベースのサイズ変更可能な容量を提供し、一般的なデータベース管理タスクを管理します。 IBM® App Connect Enterprise Amazon RDS リクエスト ノードを提供しており、これを使用して Amazon RDS に接続し、データベース クラスター、データベース インスタンス、データベース スナップショット、エクスポート、タグなどのオブジェクトに対してアクションを実行するリクエストを発行できます。
このタスクの概要
IBM App Connect Enterprise Windows、 AIX、および Linux® システムで利用可能な「 Amazon RDS Request 」ノードを介して、 Amazon RDS と同期的に通信します。
- データベース・クラスター
- データベース・クラスターの開始、停止、取得、またはリブート
- データベース・インスタンス
- データベース・インスタンスの作成、取得、更新、削除、開始、停止、またはリブート
- データベース・スナップショット
- データベース・スナップショットの作成、取得、または削除
- エクスポート
- Amazon S3 へのエクスポート
- タグ
- タグの追加、取得、または削除
Amazon RDS Request ノードの構成について詳しくは、 Amazon RDS Request ノードを参照してください。
手順
- IBM App Connect Enterprise ツールキットで、 Amazon RDS リクエストノードを含むフローを作成します。
- フロー内の 「Amazon RDS Request」 ノードを選択して、エディターにノード・プロパティーを表示します。
- 「基本」 タブで、 「コネクター・ディスカバリーの起動」をクリックします。コネクターのディスカバリー中に使用するポリシー・プロジェクトの名前とボールトの詳細を指定するパネルが表示されます。
- コネクターのディスカバリー中に使用するポリシー・プロジェクトとボールトの詳細を指定します。
- 「ポリシー・プロジェクト」 フィールドに、コネクター・ディスカバリー中に作成されるポリシーを保管するために使用されるポリシー・プロジェクトを指定します。あるいは、「新規」をクリックし、新規ポリシー・プロジェクトの名前を指定して、新規ポリシー・プロジェクトを作成することもできます。 次に、「完了」をクリックします。
- コネクターのディスカバリー中に使用するボールトを指定します。 デフォルトでは、コネクターのディスカバリー中に使用される資格情報は、 外部ディレクトリー・ボールトに保管されます。これは、どの統合サーバーでも使用できる App Connect Enterprise ボールトです。 あるいは、資格情報を統合サーバー・ボールトに保管することもできます。統合サーバー・ボールトは、統合サーバーの作業ディレクトリーに作成され、その特定の統合サーバーでのみ使用できます。資格情報の保管に使用するボールトを指定するには、以下のいずれかのトピックの「 コネクター・ディスカバリー・ウィザードの使用 」セクションの手順を実行します。
- 「ボールト鍵 (Vault key)」 フィールドに、ボールトに保管されている資格情報にアクセスするために使用するボールト鍵を入力します。 ボールト鍵の長さは 8 文字以上でなければなりません。
- オプション: デフォルトでは、指定されたボールト・ロケーションとボールト・キーが Toolkit の設定として保存されるため、コネクター・ディスカバリーの起動時に値が事前設定されます。 設定を保存しない場合は、ボールト設定に保存 を選択解除します。
- 「ポリシー・プロジェクト」 フィールドに、コネクター・ディスカバリー中に作成されるポリシーを保管するために使用されるポリシー・プロジェクトを指定します。
- Amazon RDS コネクターの「コネクター・ディスカバリー」ウィザードを開始するには、 「ディスカバリーの起動」 をクリックします。「コネクター・ディスカバリー」 ウィンドウが表示されます。 既存の Amazon RDS 接続 (アカウント) が使用可能な場合は、それらの接続のリストが表示されます。 既存の接続がない場合、 Amazon RDS コネクターの状況は
Not connectedと表示されます。- 1 つ以上の Amazon RDS 接続 (アカウント) が使用可能な場合は、以下のステップを実行します。
- 接続 (アカウント) をクリックして、使用する接続を選択します。
- 必要なオブジェクト・タイプをクリックし、オブジェクトに対して実行するアクションを選択します。 例えば、 Amazon RDSからデータベース・インスタンスを取得するには、 「データベース・インスタンス」 をクリックし、 「データベース・インスタンスの取得」をクリックします。
- 既存の接続 (アカウント) がない場合は、以下のステップを実行します。
- 必要なオブジェクト・タイプをクリックし、そのオブジェクトに対して実行するアクションを選択します。 例えば、 Amazon RDSからデータベース・インスタンスを取得するには、 「データベース・インスタンス」 をクリックし、 「データベース・インスタンスの取得」をクリックします。
- Connectをクリックするとメニューが表示されるので、そこから以下のAuthorizationタイプのいずれかを選択する:
- App Connect が使用する認証情報を提供する(BASIC)
- App Connect が使用する認証情報を提供する(BASIC OIDC)
- 認証タイプとして「 Provide credentials for App Connect to use (BASIC) 」を選択した場合は、以下の詳細を入力する:
- 秘密のアクセスキー : Amazon RDS アカウントのシークレットアクセスキー。 AWS 管理コンソールの Security Credentials ページからシークレットアクセスキーを取得します。
- アクセスキーID : Amazon RDS アカウントのアクセスキーID。 AWS 管理コンソールのセキュリティ資格情報ページからアクセスキー ID を取得します。
- リージョン : Amazon RDS インスタンスのリージョン。例えば、
us-east-1。 Region パラメータの値は、 AWS 管理コンソールにログインしている場合、 URL の最後に表示されます(例: https://us-east-2.console.aws.amazon.com/console/home?region=us-east-2# )。
- 認証タイプとして「 Provide credentials for App Connect to use (BASIC OIDC) 」を選択した場合、以下の詳細を入力する:
- リージョン : Amazon RDS インスタンスのリージョン。例えば、
us-east-1。 Region パラメータの値は、 AWS 管理コンソールにログインしている場合、 URL の最後に表示されます(例: https://us-east-2.console.aws.amazon.com/console/home?region=us-east-2# )。 - クライアントID : OpenID Connect (OIDC) システム内のアプリケーションに割り当てられた一意の識別子を指定します
- クライアントシークレット :クライアントアプリケーションの認証に使用するクライアントシークレットを指定します
- IDトークン : OpenID Connect (OIDC)のセキュリティトークンで、ユーザーの身元やセッションの有効性など、ユーザーの認証に関する主張が含まれており、通常はJSON Web Token (JWT)として表される
- リフレッシュ・トークン :アプリケーションのクライアントIDとクライアント・シークレットから生成されるリフレッシュ・トークン
- ロールARN : AWS の IAM ロールを指定する Amazon Resource Name (ARN) で、 OpenID Connect 互換の ID プロバイダを介して認証されたユーザーに付与される権限を定義する
- OIDC サーバー URL : 認証を処理し、クライアントにトークンを提供する OpenID Connect (OIDC) サーバーまたは ID プロバイダーの URL を指定する
- リージョン : Amazon RDS インスタンスのリージョン。例えば、
- 「接続」 をクリックします。
これらの接続の詳細を特定する方法については、 IBM App Connect in containers Continuous Delivery (CD) のドキュメントにある IBM App Connect Amazon RDS で使用する方法」を参照してください。
- 1 つ以上の Amazon RDS 接続 (アカウント) が使用可能な場合は、以下のステップを実行します。
- データを取得するための条件を追加するには、 「条件の追加」 をクリックし、フィルターに掛けるプロパティーを選択します。 例えば、 「データベース・インスタンス・リソース ID」 を選択し、取得するデータベース・インスタンスの ID を指定します。 また、取得するレコードの最大数と、その制限を超えた場合に実行するアクションを指定するプロパティーを設定することもできます。
- 「コネクター・ディスカバリー」ウィザードでプロパティーを指定し終えたら、 「保存」をクリックします。Amazon RDS への接続に使用される資格情報はボールトに保管され、その他の接続詳細は Amazon RDS ポリシーに保存されます。 ウィザードで設定したプロパティの値は、 IBM App Connect Enterprise Toolkit の 「Amazon RDS Request 」ノードに返されます。
- ディスカバリーを終了してプロパティー値を保存したら、ウィンドウの右上隅にある X をクリックするか、 Alt+F4を押して、「コネクター・ディスカバリー」ウィザードを終了します。
- 「 IBM App Connect Enterprise Toolkit 」内の 「Amazon RDS Request 」ノードの編集画面に戻る。「コネクター・ディスカバリー」ウィザード (ステップ 6) で設定したコネクター・プロパティーが、プロパティー・エディターの Amazon RDS Request ノードに表示されるようになりました。 「基本」 タブには、ウィザードで設定した 「アクション」 プロパティーと 「オブジェクト」 プロパティーの値が表示されます。 たとえば、ウィザードで Database instances > Retrieve database instances を選択した場合、ノードの Basic タブには以下のプロパティが表示されます:
- 処置 -
RETRIEVEALL - オブジェクト -
DatabaseInstance
処置 プロパティーおよび オブジェクト プロパティーの値は、読み取り専用形式で表示されます。 これらの値を変更するには、「コネクター・ディスカバリーの起動」を再度クリックし、「コネクター・ディスカバリー」ウィザードで新しい値を設定します。
「スキーマ・ベース名」 プロパティーは、 Amazon RDS コネクターとの間で送受信される要求メッセージと応答メッセージの形式を記述するスキーマ・ファイルのベース名を指定します。 スキーマ・ベース名は、ノードのディスカバリーを初めて実行するときに自動的に設定され、現在のフロー名とノード名に基づいています。 ディスカバリーを初めて実行する前にこのプロパティーを手動で設定した場合は、設定した値が使用されます。 ディスカバリー後にスキーマの名前を変更する場合は、プロジェクト内の名前変更されたスキーマによって使用されるスキーマ・ベース名と一致するように、このプロパティーを編集する必要があります。 ディスカバリー後にこのプロパティーを変更する場合は、一致するようにスキーマ名を変更するか、再度ディスカバリーを実行する必要があります。
「コネクター・ディスカバリー」ウィザードは、ディスカバリー中に選択されたアクションに応じて、要求スキーマと応答スキーマ、または応答スキーマのみのいずれかを生成します。 要求スキーマは、選択したアクションおよびオブジェクトが要求メッセージを必要とする場合にのみ生成されます。 生成された要求スキーマは、要求メッセージの妥当性検査に使用されます。 アクションが
RETRIEVEまたはDELETEであった場合は、応答スキーマのみがコネクターによって返されます。生成されたスキーマ・ファイルはプロジェクトに追加され、入力データまたは出力データを変換するために Mapping ノードで使用できます。 スキーマの完全なファイル名は、スキーマのベース名 (
gen/MyMessageFlow.AmazonRDS_Requestなど) から派生し、 response.schema.json または request.schema.jsonのいずれかの接尾部が付きます。 「要求スキーマを開く」 または 「応答スキーマを開く」をクリックして、スキーマを開くことができます。 - 処置 -
- Amazon RDS Request ノードのプロパティー設定が正しいことを確認してから、メッセージ・フローを保存します。
- Amazon RDS Request ノードの 「接続」 タブで、 「ポリシー」 プロパティーに、接続に使用されるセキュリティー ID の詳細を含むポリシーの名前が表示されます。 ポリシーのタイプは
Amazon RDSです。 詳しくは、 Amazon RDS ポリシーをご覧ください。 - オプション: 「接続」 タブの 「タイムアウト」 プロパティーを設定して、ノードが Amazon RDS による操作の処理を待機する時間 (秒単位) を指定します。
- Amazon RDS Request ノードの 「フィルター」 タブには、メッセージ・フローがデータを選択する方法を制御するプロパティーが含まれています。 これらのプロパティーの初期値は、「コネクター・ディスカバリー」ウィザードで Amazon RDS コネクターに対して設定されたプロパティー値から取得されます。これには、フィルター・オプション・プロパティーと、指定された条件 (ステップ 6で説明) が含まれます。 その後「コネクター・ディスカバリー」ウィザードに戻り、プロパティーの値を変更すると (例えば、新しい条件を追加することによって)、それらの更新はノード上のプロパティー・セットに反映されます。
「フィルター・オプション」 プロパティーは、 Amazon RDS Request ノードの実行時に操作するオブジェクトを制御します。 「フィルター制限」 プロパティーは、取得する項目の最大数と、制限を超えた場合に実行するアクションを制御します。
値を変更するには、 「フィルター・オプション」 セクションで変更する値の横にある 「編集」 をクリックし、 「フィルター制限」 セクションで設定したプロパティー値を変更します。
プロパティー値は、実行時に Amazon RDS Request ノードに渡されるメッセージの内容から解決されるテキスト値、ESQL 式、または XPATH 式のいずれかにすることができます。
- 「要求」 タブで、 「データの場所」 プロパティーを設定して、 Amazon RDSで作成されるオブジェクト・データを含む着信メッセージ・ツリー内の場所を指定します。 このデータは、 Amazon RDS Request ノードから Amazon RDS システムに送信される要求を形成します。
- 「結果」 タブで、 「出力データのロケーション」 プロパティーを設定して、 Amazon RDSで作成されたレコードのデータが含まれる出力メッセージ・ツリー内のロケーションを指定します。
- デフォルトでは、要求メッセージは、コネクター・ディスカバリー中に生成された要求スキーマに照らして検証されます。 Amazon RDS Request ノードの 「妥当性検査」 プロパティーを使用して、要求の妥当性検査をオフにしたり、妥当性検査の設定を変更したりすることができます。
- メッセージ・フローを保存 します。