翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon MQ for RabbitMQ のプライベートネットワーキング
プライベートネットワーキングにより、Amazon MQ for RabbitMQ ブローカーは VPC 内のプライベートリソースに接続できます。これらのリソースには、プライベート ID プロバイダー (LDAP または OAuth2)、他の Amazon MQ for RabbitMQ ブローカー、またはセルフホスト RabbitMQ ブローカーが含まれます。パブリックインターネットを経由することなく、リソースにプライベートに接続できます。
可用性
-
プライベートネットワーキングは、Amazon MQ for RabbitMQ ブローカーでのみ使用できます。ActiveMQ ブローカーはサポートされていません。
-
プライベートネットワーキングは、AWSGovCloud (米国) リージョンでは使用できません。
-
プライベートネットワーキングは、Amazon VPC Lattice が利用可能なAWSリージョンでのみ使用できます。VPC Lattice が利用可能なリージョンの詳細については、 AWS全般のリファレンスの「Amazon VPC Lattice エンドポイントとクォータ」を参照してください。
プライベートネットワーキングの仕組み
プライベートネットワーキングは、Amazon VPC Lattice、AWSResource Access Manager (AWSRAM)、および AWSPrivateLink を使用して、ブローカーを VPC 内のプライベート送信先に接続します。
セットアップには、次のコンポーネントが含まれます。
-
VPC 内の VPC Lattice リソースゲートウェイは、ブローカーからプライベートリソースへのトラフィックのエントリポイントとして機能します。
-
1 つ以上の VPC Lattice リソース設定は、リソースゲートウェイを介して到達可能なプライベート送信先 (IP アドレスまたは DNS 名) を定義します。
-
AWSRAM リソース共有はリソース設定をパッケージ化し、
UpdateBrokerAPI オペレーションを通じてブローカーに関連付けられます。 -
ブローカーの再起動中、Amazon MQ はブローカーの VPC にリソース VPC エンドポイントを作成します。これらのエンドポイントは、リソースゲートウェイから設定された宛先へのネットワークパスを確立します。
前提条件
プライベートネットワークを設定する前に、以下を確認してください。
-
Amazon MQ for RabbitMQ ブローカーが
RUNNING状態にある。 -
少なくとも 1 つのサブネットを持つ VPC がある。この VPC はリソースゲートウェイをホストするため、ブローカーと同じ VPC である必要はありません。高可用性を実現するには、複数のアベイラビリティーゾーンでサブネットを使用します。
-
VPC Lattice リソースゲートウェイは、ブローカーと少なくとも 1 つのアベイラビリティーゾーンを共有する必要があります。これは単一インスタンスブローカーにのみ関係します。クラスターブローカーは、使用可能なすべてのアベイラビリティーゾーンを使用します。
注記
ブローカーはプライベートである必要はありません。パブリックにアクセス可能なブローカーは、プライベートネットワークを使用することもできます。
プライベートネットワークの設定
Amazon MQ for RabbitMQ ブローカーのプライベートネットワークを設定するには、次の手順に従います。
ステップ 1: VPC Lattice リソースゲートウェイを作成する
プライベートリソースに到達できる VPC に VPC Lattice リソースゲートウェイを作成します。リソースゲートウェイは、透過的なプロキシとして機能します。ブローカーから設定された宛先にトラフィックをルーティングします。
-
Amazon VPC コンソール
を開きます。 -
ナビゲーションペインの VPC Lattice で、リソースゲートウェイを選択します。
-
[リソースゲートウェイを作成] を選択します。
-
VPC、サブネット、セキュリティグループを使用してリソースゲートウェイを設定します。少なくとも 1 つのサブネットがブローカーと共有されているアベイラビリティーゾーンにあることを確認します。
詳細については、「Amazon VPC Lattice ユーザーガイド」の「リソースゲートウェイ」を参照してください。
ステップ 2: VPC Lattice リソース設定を作成する
ブローカーが到達する必要があるプライベート送信先を定義する 1 つ以上のリソース設定を作成します。各リソース設定は、リソースゲートウェイをセットアップする VPC 内から解決可能な IP アドレスまたは DNS 名を指定します。
オプションで、リソース設定にカスタムドメイン名を追加できます。ブローカーからの DNS 解決に使用できるのは、検証済みドメイン名のみです。リソース設定に使用可能なドメイン名がない場合、Amazon MQ は DescribeSharedResources API オペレーションを通じて DNS 名を提供します。この DNS 名はブローカー設定で使用できます。
詳細については、「Amazon VPC Lattice ユーザーガイド」の「Resource configurations」を参照してください。
ステップ 3: RAM AWSリソース共有を作成する
AWSRAM リソース共有を作成し、VPC Lattice リソース設定を追加します。リソース共有は、Amazon MQ ブローカーに関連付けるものです。
重要
リソース共有では、外部プリンシパルを許可する必要があります。組織 (allowExternalPrincipals=false) に制限されたリソース共有は、Amazon MQ では使用できません。
詳細については、「 Resource AWSAccess Manager ユーザーガイド」の「リソース共有の作成」を参照してください。
ステップ 4: リソース共有をブローカーに関連付ける
UpdateBroker API オペレーションを使用して、RAM AWSリソース共有をブローカーに関連付けます。リソース共有 ARNs のリストを指定することで、複数のリソース共有を関連付けることができます。
例を使用してリソース共有を関連付けるAWS CLI
aws mq update-broker \ --broker-idb-a1b2c3d4-5678-90ab-cdef-EXAMPLE11111\ --resource-share-arnsarn:aws:ram:us-east-1:123456789012:resource-share/a1b2c3d4-5678-90ab-cdef-EXAMPLE22222
プレースホルダーを独自の値に置き換えます。
-
--broker-id– ブローカーの一意の ID (b-a1b2c3d4-...値)。 -
--resource-share-arns– RAM リソース共有の Amazon AWSリソースネーム (ARN) (arn:aws:ram:...値)。
詳細については、Amazon MQ REST API リファレンスのUpdateBroker」を参照してください。
複数のリソース共有を関連付けるには、ARNsで区切ります。
aws mq update-broker \ --broker-idb-a1b2c3d4-5678-90ab-cdef-EXAMPLE11111\ --resource-share-arnsarn:aws:ram:us-east-1:123456789012:resource-share/a1b2c3d4-5678-90ab-cdef-EXAMPLE22222arn:aws:ram:us-east-1:123456789012:resource-share/a1b2c3d4-5678-90ab-cdef-EXAMPLE33333
注記
再起動UpdateBroker前に複数回 を呼び出すと、最後の呼び出しのみが有効になります。resourceShareArns パラメータは完全な置換 (入力) であり、加算オペレーションではありません。を呼び出すたびに、ブローカーに関連付けるリソース共有 ARNs の完全なリストを指定する必要がありますUpdateBroker。
注記
リソース共有の関連付けを変更するには、ブローカーを再起動する必要があります。を呼び出すUpdateBrokerと、リソース共有がブローカーに関連付けられますが、ネットワークパスはすぐに確立されません。
ステップ 5: ブローカーを再起動する
ブローカーを再起動して、保留中のリソース共有の変更を適用します。再起動中、Amazon MQ はブローカーの VPC にリソース VPC エンドポイントを作成します。次に、プライベートリソースへのネットワークパスを確立します。
例を使用してブローカーを再起動するAWS CLI
aws mq reboot-broker --broker-idb-a1b2c3d4-5678-90ab-cdef-EXAMPLE11111
再起動すると、単一インスタンスブローカーのダウンタイムと、クラスターブローカーの短い利用不能 (フェイルオーバー) が発生します。ブローカーが RUNNING状態に戻るのを待ってから次に進みます。これには通常 10~20 分かかります。
詳細については、Amazon MQ RebootBroker」を参照してください。
ステップ 6: セットアップを確認する
DescribeSharedResources API オペレーションを使用して、リソースが使用可能であることを確認します。これを使用して、ブローカー設定で使用する DNS 名を取得することもできます。
例を使用して共有リソースを検証するAWS CLI
aws mq describe-shared-resources --broker-idb-a1b2c3d4-5678-90ab-cdef-EXAMPLE11111
セットアップが完了すると、リソース共有は AVAILABLE状態になります。各リソース設定には、関連付けられた DNS 名が表示されます。
詳細については、Amazon MQ REST API リファレンス」の「DescribeSharedResources」を参照してください。
ユースケース
以下のセクションでは、プライベートネットワーキングの一般的なユースケースについて説明します。
プライベート ID プロバイダーへの接続
プライベートネットワークを使用して、ブローカーをパブリックインターネットに公開することなく、プライベート LDAP または OAuth2 ID プロバイダーに接続できます。プライベートネットワークを設定したら、ブローカーの認証設定で DescribeSharedResources API レスポンスの DNS 名を使用します。
認証の設定の詳細については、Amazon MQ for RabbitMQ の LDAP 認証と認可「」および「」を参照してくださいAmazon MQ for RabbitMQ に対する OAuth 2.0 の認証と認可。
別の Amazon MQ for RabbitMQ ブローカーへの接続
プライベートネットワークを使用して、Shovel または Federation プラグインを使用してブローカーを別の Amazon MQ for RabbitMQ ブローカーに接続できます。これにより、いずれのブローカーもパブリックインターネットに公開することなく、プライベートbroker-to-broker通信が可能になります。
別の Amazon MQ ブローカーのリソース設定を作成するときは、カスタムドメイン名としてブローカーエンドポイント ( などb-xxxx.mq.us-east-1.on.aws) を指定します。これにより、TLS 証明書の検証が成功します。RabbitMQ 4 以降では、Shovel 接続とフェデレーション接続に対してこの検証がデフォルトで適用されます。詳細については、「AMQP クライアント SSL 設定」を参照してください。
API DescribeSharedResourcesレスポンスの DNS 名を Shovel またはフェデレーション設定の送信先として使用します。
注記
RabbitMQ バージョン 4 より前の場合、TLS 証明書ピア検証は Shovel および Federation ではデフォルトで適用されません。ブローカーエンドポイントをカスタムドメイン名として指定するか、設定を通じてピア検証をオフにすることができます。詳細については、「AMQP クライアント SSL 設定」を参照してください。
セルフホスト RabbitMQ ブローカーへの接続
プライベートネットワークを使用して、Shovel または Federation プラグインを使用して、Amazon MQ ブローカーを VPC 内のセルフホスト RabbitMQ ブローカーに接続できます。セルフホスト型ブローカーの IP アドレスまたは DNS 名を指すリソース設定を作成します。Shovel またはフェデレーション設定で DescribeSharedResources API レスポンスの DNS 名を使用します。
RabbitMQ 4 以降では、デフォルトで TLS 証明書ピア検証が適用されます。検証済みドメイン名を使用するか、設定を通じてピア検証をオフにする必要があります。詳細については、「AMQP クライアント SSL 設定」を参照してください。
共有リソースの変更
ブローカーに関連付けられたリソース共有はいつでも変更できます。更新されたリソース共有 ARN のリストを使用して UpdateBroker API オペレーションを呼び出します。 ARNs 変更は、次のブローカーの再起動後に有効になります。
ブローカーからすべてのリソース共有の関連付けを解除するには、リソース共有 ARNs の空のリストUpdateBrokerで を呼び出し、ブローカーを再起動します。
重要
RAM AWSリソース共有はいつでも変更できます。リソース共有から VPC Lattice リソース設定を追加または削除できます。Amazon MQ は、ブローカーを呼び出しUpdateBrokerて再起動するまで、これらの変更を検出しません。ただし、ブローカーに以前に適用されたリソース設定を削除すると、そのリソースへのブローカーのアクセスは直ちに取り消されます。この取り消しでは、 を呼び出しUpdateBrokerたり再起動したりする必要はありませんが、 のリソースステータスDescribeSharedResourcesは、 を呼び出しUpdateBrokerて再起動するまで更新されません。
クォータ
プライベートネットワークには、次のクォータが適用されます。
| リソース | デフォルトの制限 | 説明 |
|---|---|---|
| AWSブローカーあたりの RAM リソース共有 | 10 | この制限を超えると、UpdateBrokerAPI コールは失敗します。 |
| ブローカーあたりの VPC Lattice リソース設定 | 100 | 関連付けられたすべてのリソース共有の合計。過剰なリソース設定は、DescribeSharedResourcesレスポンスERRORで としてマークされます。 |
リソースの状態
DescribeSharedResources API オペレーションを使用して、共有リソースの状態を確認します。次の表に、考えられる状態を示します。
| State | 説明 |
|---|---|
SETUP_IN_PROGRESS |
リソースは設定中です。この状態は、 を呼び出した後UpdateBrokerに表示され、ブローカーの再起動が完了するまで保持されます。 |
AVAILABLE |
リソースはアクティブであり、ブローカーは設定された宛先に到達できます。 |
DELETION_IN_PROGRESS |
リソースはブローカーから削除されています。 |
PENDING_CREATE |
リソースは VPC エンドポイント作成のためにキューに入れられます。この状態は短く、ブローカーの再起動ワークフロー中に表示されます。 |
PENDING_DELETE |
リソースは VPC エンドポイントの削除のためにキューに入れられます。この状態は短く、ブローカーの再起動ワークフロー中に表示されます。 |
ERROR |
リソースの設定に失敗しました。エラーの詳細については、 DescribeSharedResources を呼び出します。UpdateBroker を再度呼び出すと、リソースは に戻りますSETUP_IN_PROGRESS。 |
トラブルシューティング
- リソース設定が再起動後に ERROR 状態になる
-
DescribeSharedResourcesAPI オペレーションを使用してエラーの詳細を確認します。一般的な原因には、以下が含まれます。-
VPC Lattice リソースゲートウェイは、ブローカーとアベイラビリティーゾーンを共有しません。
-
すべてのリソース共有のリソース設定の総数がクォータを超えています。
問題を解決したら、
UpdateBroker再度 (同じリソース共有 ARNs であっても) を呼び出してリソースを に戻してからSETUP_IN_PROGRESS、ブローカーを再起動します。 -
- UpdateBroker が検証エラーで失敗する
-
以下のことを確認してください。
-
リソース共有 ARN は有効であり、 アカウントによって所有されています。
-
リソース共有はブローカーと同じリージョンにあります。
-
リソース共有では、外部プリンシパルが許可されます。
-
ブローカーあたりのリソース共有クォータを超えていません。
-
- ブローカーが再起動後にプライベートリソースに到達できない
-
以下について確認します。
-
リソースの状態は
DescribeSharedResourcesレスポンスAVAILABLEにあります。 -
リソースゲートウェイのセキュリティグループは、必要なポートの送信先へのアウトバウンドトラフィックを許可します。
-
リソース設定の送信先 IP または DNS 名は、リソースゲートウェイがデプロイされている VPC からアクセスできます。
-
ブローカー設定の
DescribeSharedResourcesレスポンスから正しい DNS 名を使用しています。
-