グローバルサービスからイベントを受信する Amazon EventBridge ルールが us-east-1 リージョン以外の AWS リージョンでは機能していないため、理由を知りたいです。
解決策
注: AWS Identity and Access Management (IAM) や Amazon Route 53 などの AWS グローバルサービスは、us-east-1 リージョンでのみ使用できます。us-east-1 リージョン用のデフォルトのイベントバスは、グローバルサービスが生成するすべてのイベントを受信します。
us-east-1 リージョンの EventBridge ルールとターゲットを再作成する
次の手順を実行します。
- us-east-2 リージョンの EventBridge リソースを削除します。
- 同じルール、パターン、ターゲットを us-east-1 リージョンで再作成します。
重要: ターゲットが us-east-1 リージョンの外にある場合は、次のセクションの手順を実行してください。
詳細については、「Amazon EventBridge でイベントバスを削除する」および「Amazon EventBridge でルールを無効化または削除する」を参照してください。
イベントを us-east-1 リージョンから us-east-2 リージョンのイベントバスにルーティングする
クロスリージョンルーティング機能を使用して、us-east-2 リージョンに EventBridge リソースを設定します。その後、us-east-1 リージョンのイベントを us-east-2 リージョンのイベントバスにルーティングします。こうすることで、us-east-1 リージョンで発生したイベントが us-east-2 リージョンのターゲットを呼び出すことができます。
次の手順を実行します。
- us-east-1 リージョンで EventBridge コンソールを開きます。
- [ルール] を選択します。ルールは、us-east-1 リージョンの default イベントバスに作成する必要があります。
- [ルールを作成] を選択します。次に、us-east-2 リージョンの [カスタムパターン] にあるパターンを入力します。
- [ターゲットタイプ] で [EventBridge イベントバス] を選択します。次に、[別のアカウントまたはリージョン内のイベントバス] を選択します。
- [イベントバス] に us-east-2 リージョンのデフォルトイベントバスの ARN を入力します。
- デフォルトオプション [この特定のリソースに新しいロールを作成] は変更しないでください。上記を実行すると、ルールがターゲットバスにイベントを配置するのに必要な IAM アクセス許可が作成されます。
- [次へ] を選択し、[ルールを更新] を選択します。
注: us-east-2 リージョンの EventBridge ルールは削除しないでください。ルールは両方のリージョンに同時に配置する必要があります。
新しい構成では、us-east-1 リージョンのすべてのイベントが us-east-2 リージョンのイベントバスにルーティングされます。イベントにより、us-east-2 リージョンの既存のルールが呼び出されます。次に、そのイベントにより、同じリージョン内のターゲットが呼び出されます。