すべてのプロダクト
Search
ドキュメントセンター

Container Service for Kubernetes:ENIに複数のセキュリティグループを設定する

最終更新日:Oct 31, 2024

Terwayネットワークプラグインを使用するクラスターでは、Terwayはelastic network Interface (ENI) を使用してコンテナにIPアドレスを割り当てます。 Terwayによって作成されたENIには、最大5つのセキュリティグループを関連付けることができます。 これにより、ポッドのアクセス制御を柔軟に調整できます。 このトピックでは、Terwayモードで複数のセキュリティグループをENIに関連付ける方法について説明します。

前提条件

Terwayのバージョンが1.1.1以降の場合にのみ、複数のセキュリティグループをENIに関連付けることができます。 Terwayの更新方法の詳細については、「コンポーネントの管理」をご参照ください。

背景情報

デフォルトでは、TerwayはENIを作成するときに1つのセキュリティグループのみをENIに関連付けます。 複数のセキュリティグループをENIに関連付けるようにTerwayを設定できます。

説明

セキュリティグループの設定を変更すると、設定は新しく作成されたENIにのみ適用されます。 既存のENIは前の設定を使用します。 設定を有効にするには、ノードを再起動します。 詳細については、「ノードの削除」および「既存のECSインスタンスをACKクラスターに追加」をご参照ください。

複数のセキュリティグループをENIに関連付ける

  1. 次のコマンドを実行して、Terway設定のeni_conf ConfigMapを変更します。

    kubectl edit cm eni-config -n kube-system
  2. 次のコンテンツをeni_conf ConfigMapに追加します。

    "security_groups": ["sg-foo","sg-bar"]

    例:

    "security_group": "sg-bp19k3sj8dk3dcd7****",
    "security_groups": ["sg-bp1b39sjf3v49c33****","sg-bp1bpdfg35tg****"],
    説明

    Terwayは、security_groupおよびsecurity_groupsで指定されたすべてのセキュリティグループを使用します。 すべてのセキュリティグループが同じVPCにあり、同じタイプであることを確認してください。 最大5つのセキュリティグループを指定できます。

  3. 次のコマンドを実行して、有効にするセキュリティグループ設定のTerwayポッドを再作成します。

    kubectl delete pod -n kube-system -l app=terway-eniip

    設定の確認

    1. ECSコンソールにログインします。 左側のナビゲーションウィンドウで、[インスタンスとイメージ] > [インスタンス] を選択します。

    2. [インスタンス] ページで、管理するECSインスタンスを見つけてクリックします。

    3. ECSインスタンスの詳細ページで、[ENI] タブをクリックします。

      [ENI] タブで、ConfigMapで指定されたセキュリティグループがセカンダリENIに関連付けられていることがわかります。ENI配置.png

クラスターの作成時に複数のセキュリティグループをENIに関連付ける

APIを呼び出してクラスターを作成するときに、複数のセキュリティグループをENIに関連付けることができます。 SecurityGroupIDsパラメーターは、ENIに関連付けるセキュリティグループを指定します。 次のコードブロックに例を示します。

{
  "name": "your_cluster_name",
  "cluster_type": "ManagedKubernetes",
  "addons": [
    {
      "name": "terway-eniip",
      "config": "{\"IPVlan\":\"true\",\"NetworkPolicy\":\"false\",\"ENITrunking\":\"true\",\"SecurityGroupIDs\": \"[\\\"sg-foo\\\"]\" }"
    }
  ],
  ....
}