Terway网络下所有节点默认使用命名空间kube-system中名称为eni-config的ConfigMap,如果需要按节点维度配置所使用的虚拟交换机、安全组,则可以通过创建新的ConfigMap实现。本文介绍Terway网络下如何实现节点级别的网络配置。

前提条件

已创建虚拟交换机、安全组。详细信息,请参见创建和管理交换机创建安全组

场景图

给特定Pod独立的NAT出口IP和带宽:13

使用限制

仅新建ENI时会使用您指定的虚拟交换机、安全组。如果ENI已经存在,则将使用原有ENI配置。

操作步骤

  1. 在命名空间kube-system中创建名称为foo的ConfigMap。
    1. 登录容器服务管理控制台
    2. 在控制台左侧导航栏中,单击集群
    3. 集群列表页面中,单击目标集群名称或者目标集群右侧操作列下的详情
    4. 在集群管理页左侧导航栏中,选择配置管理 > 配置项
    5. 配置项页面中,命名空间选择kube-system,然后单击页面右上角的创建
    6. 创建页面,配置项名称设置为foo。单击添加名称设置为eni_conf中填入以下内容并将虚拟交换机和安全组参数替换为实际值。
      {
          "vswitches": {
              "cn-hangzhou-g": [
                  "vsw-10000"
              ],
              "cn-hangzhou-i": [
                  "vsw-10001"
              ]
          },
          "security_group": "sg-10000",
          "security_groups": [
              "sg-10000",
              "sg-10001"
          ]
      }
      参数名称说明
      vswitches

      配置虚拟交换机的可用区和实例ID。

      您可以登录专有网络管理控制台,在控制台左侧导航栏选择交换机,在交换机列表中查看虚拟交换机所在的可用区和实例ID。配置虚拟交换机的可用区和实例ID时注意以下事项:

      • 请确保填写的虚拟交换机包含需使用的节点所在的可用区,如果节点可用区和您填写的虚拟交换机可用区不一致,则不生效。
      • 如无需修改,则无需配置vswitches相关的键值。
      security_group
      • 当您只需要新增一个安全组时,请使用security_group。当您需要新增多个安全组时,请使用security_groups
      • 系统将使用重新指定后的security_groupsecurity_groups中的所有安全组,请确保所有安全组在相同的VPC下,且安全组类型相同,并且总数量不超过5个。更多配置多安全组的信息,请参见为弹性网卡(ENI)配置多个安全组
      • 如无需修改,则无需配置安全组相关的键值。
      security_groups
    7. 单击确定
  2. 为节点配置标签。
    • 为已有节点配置标签。
      1. 配置标签。
        1. 在集群管理页左侧导航栏中,选择节点管理 > 节点,然后单击页面右上角标签与污点管理
        2. 标签页签中,选择目标节点,单击添加标签
        3. 添加页面中,名称设置为terway-config设置为foo,单击确定
      2. 重启Terway容器组以使配置生效。
        1. 在集群管理页左侧导航栏中,选择工作负载 > 容器组
        2. 在容器组页面顶部设置命名空间kube-system,在搜索框中搜索terway-eniip。选中所有搜索到的结果,单击右侧操作列下的删除
        3. 删除容器组对话框中单击确定。删除后,系统会自动重新创建Terway容器组。

          在容器组页面以terway-eniip开头的容器组,其状态列显示Running,说明重启Terway容器组成功。新配置的虚拟交换机和安全组,也会在新建Terway容器组时生效。

    • 为新建节点配置标签。

      请在创建节点池时添加节点标签,设置为terway-config设置为foo。新建节点池,请参见操作步骤

  3. 检查Terway容器组分配的ENI是否使用了指定的虚拟交换机、安全组。
    1. 登录ECS管理控制台,在左侧导航栏中选择实例与镜像 > 实例
    2. 单击目标实例。在实例页面单击弹性网卡页签,在此页面下查看Pod分配的ENI是否使用了指定的虚拟交换机、安全组。