You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在eksctl ClusterConfig文件中如何配置同一可用区的多个子网?

在eksctl ClusterConfig中配置同一可用区的多子网映射

没问题,这种同一AZ下存在多个不同CIDR子网的场景,eksctl的ClusterConfig完全支持配置,核心就是按子网用途+可用区的层级来嵌套数组即可。我直接给你对应你提供的子网信息的完整配置示例,再拆解关键要点:

完整配置示例

apiVersion: eksctl.io/v1alpha5
kind: ClusterConfig

metadata:
  name: my-eks-cluster # 替换成你的集群名称
  region: eu-west-1

vpc:
  subnets:
    # 这里假设你的子网都是私有子网(用于节点部署),如果有公共子网可以单独加public分组
    private:
      eu-west-1a:
        - id: "subnet-02a3dacfd211d0870"
          cidr: "192.168.32.0/22"
        - id: "subnet-0c5e28e892372ebf4"
          cidr: "192.168.47.0/25"
      eu-west-1b:
        - id: "subnet-07a7b2710e102cc03"
          cidr: "192.168.36.0/22"
      eu-west-1c:
        - id: "subnet-00b560c1f99779a6d"
          cidr: "192.168.40.0/22"

关键配置要点

  • 按用途分组:vpc.subnets下的private/public是子网用途标识,eksctl会根据这个来分配子网的使用场景(比如private子网用于集群节点,public子网用于暴露负载均衡)。如果你的子网有特殊用途(比如专门给Fargate或ELB用),可以单独添加分组或者用标签标记。
  • 同一AZ多子网用数组:对于同一个可用区(比如eu-west-1a),直接用数组[]列出该AZ下的所有子网,每个子网条目包含id和cidr即可,eksctl会自动识别并使用这些子网。
  • 可选:标记子网特殊用途:如果某个子网需要专门用于ELB或者Fargate,可以给子网添加标签,比如:
    - id: "subnet-0c5e28e892372ebf4"
      cidr: "192.168.47.0/25"
      tags:
        kubernetes.io/role/elb: "1" # 标记为ELB专用子网
    
    这样eksctl会优先将负载均衡的网络接口分配到这个子网中。

注意事项

  • 确保所有子网都属于同一个VPC,并且已经配置了正确的路由规则(比如私有子网要指向NAT网关,公共子网要指向Internet网关),eksctl不会修改子网的路由配置,只会直接使用你指定的子网。
  • 如果同时使用私有和公共子网,每个AZ下至少要有一个对应类型的子网;同一AZ下的同类型子网,eksctl会自动在它们之间做负载均衡。

内容的提问来源于stack exchange,提问作者florin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.06 13:14:09