クラウドネイティブゲートウェイとそのバックエンドサービスは、通常、異なるセキュリティグループ内のノードに配置されています。セキュリティグループルールを設定することで、ゲートウェイがバックエンドサービスにアクセスできるようになります。
背景情報
セキュリティグループは、Elastic Compute Service (ECS) インスタンスや Elastic Network Interface (ENI) などのリソースのインバウンドトラフィックとアウトバウンドトラフィックを制御する仮想ファイアウォールとして機能します。セキュリティグループは、ステートフルインスペクションとパケットフィルタリングを提供することでセキュリティを強化します。セキュリティグループとセキュリティグループルールを使用して、クラウド内にセキュリティドメインを定義できます。詳細については、セキュリティグループの概要をご参照ください。
クラウドネイティブゲートウェイを購入する際は、VPC とセキュリティグループタイプを選択する必要があります。バックエンドサービスと同じセキュリティグループタイプを使用することを推奨します。選択内容に基づいて、クラウドネイティブゲートウェイは対応するマネージドセキュリティグループを作成し、ゲートウェイのインスタンスノードを管理します。ゲートウェイとそのバックエンドサービスは異なるセキュリティグループ内のノードに配置されているため、バックエンドサービスのセキュリティグループ内で必要なポート範囲へのアクセスをゲートウェイに許可する必要があります。

ステップ 1: バックエンドサービスのセキュリティグループの取得
クラウドネイティブゲートウェイに関連付けられたアップストリームサービスは、通常、コンテナまたは ECS インスタンス上にデプロイされています。デプロイタイプに基づいてセキュリティグループ ID を取得できます。
マネージド Container Service for Kubernetes (ACK) クラスター
ACKコンソールにログインします。 左側のナビゲーションウィンドウで、[クラスター] をクリックします。
[クラスター] ページで、管理するクラスターの名前をクリックします。 左側のナビゲーションウィンドウで、 を選択します。
-
[ノードプール] ページで、対象のノードプールをクリックし、基本情報 タブをクリックしてセキュリティグループ ID を確認します。
ACK サーバーレスクラスター
ACKコンソールにログインします。 左側のナビゲーションウィンドウで、[クラスター] をクリックします。
-
Clusters ページで、対象のクラスター名をクリックします。 基本情報 タブで、セキュリティグループ ID を確認します。
セキュリティグループ ID は、[ネットワーク] セクションの [コントロールプレーンセキュリティグループ] フィールドにあります。
ECS インスタンス
ECS コンソールにログインします。
左側メニューで、 を選択します。
-
インスタンス ページで、バックエンドサービスがデプロイされている ECS インスタンスをクリックし、Security Group タブをクリックしてセキュリティグループ ID を確認します。
ステップ 2: セキュリティグループルールの追加
MSE コンソール にログオンします。
左側のナビゲーションウィンドウで、Cloud-Native Gateway > ゲートウェイリスト を選択します。 上部のナビゲーションバーで、リージョンを選択します。
-
ゲートウェイリスト ページで、対象のゲートウェイの名前をクリックします。左側のナビゲーションペインで 基本概要 をクリックし、次に セキュリティグループの権限付与 タブをクリックします。
-
セキュリティグループの権限付与 をクリックします。[Security Group ID] 列のテキストボックスに、ステップ 1 で取得したセキュリティグループ ID を貼り付け、対応するセキュリティグループを選択します。
セキュリティグループを選択した後、[プロトコルタイプ]([tcp] など)を設定し、ポート範囲 に開放するポート範囲を入力して Enter キーで生成し、必要に応じて [説明] を入力してから、保存 をクリックします。
-
承認用の ポート範囲 を
start value/end value形式で入力します。複数のポート範囲を入力できます。各入力後に Enter キーを押してください。
例えば、
1/65535と8080/8080を入力します。複数のポート範囲を同時に追加できます。 -
保存 をクリックします。
クラウドネイティブゲートウェイが対応するルールを生成します。
保存後、[セキュリティグループ承認] タブで承認済みのセキュリティグループルールの一覧を表示でき、その一覧にはポート範囲が
1/65535(すべてのポート) と8080/8080の 2 つの TCP プロトコルルールが含まれています。この新しいルールは、バックエンドサービスノードのセキュリティグループにも表示されます。
セキュリティグループルールの削除
MSE コンソール にログオンします。
左側のナビゲーションウィンドウで、Cloud-Native Gateway > ゲートウェイリスト を選択します。 上部のナビゲーションバーで、リージョンを選択します。
ゲートウェイリスト ページで、ゲートウェイの名前をクリックします。
-
左側のナビゲーションペインで、基本概要をクリックし、セキュリティグループの権限付与タブをクリックします。削除するルールの操作列で、削除をクリックしてからOKをクリックします。
この操作では、デフォルトでクラウドネイティブゲートウェイの認可ルールのみが削除されます。バックエンドサービスのセキュリティグループから対応するルールも削除するには、[このセキュリティグループの対応するインバウンドルールを連鎖削除する] チェックボックスを選択する必要があります。
よくある質問
権限付与後にサービスにアクセスできない
次の手順で問題をトラブルシューティングできます。
-
バックエンドサービスがデプロイされているノードの正しいセキュリティグループに権限を付与したことを確認します。
例えば、ノード B のセキュリティグループに権限を付与したが、実際にはサービスがノード A で実行されている可能性があります。
-
対象のノードが複数のセキュリティグループに属しているかどうかを確認します。
属している場合は、各セキュリティグループに権限を付与することを推奨します。
突然サービスへのアクセスに失敗する
次の手順で問題をトラブルシューティングできます。
-
サービス自体が正常に実行されていることを確認します。
同じセキュリティグループ内の別のノードから
curlコマンドを使用して、サービスに到達可能かどうかを確認できます。 -
サービスが公開しているポートが変更されていないかを確認します。
例えば、クラウドネイティブゲートウェイにポート 8080 へのアクセスを許可したが、サービスが後にポート 8081 を使用するように変更された場合、セキュリティグループ権限付与ルールのポートを更新する必要があります。この問題を回避するには、権限付与を設定する際に 1/65535 などのより広いポート範囲を指定することを検討してください。