创建子网及 IP 池¶
本页介绍在创建工作负载使用 IP 池之前,如何创建子网及 IP 池。
- 如部署 SpiderPool 组件时已创建子网及 IP 池,可直接使用 IP 池。
- 如需要创建新的子网及 IP 池可参考此文档。
前提条件¶
- SpiderPool 已成功部署。
- 创建子网及 IP 池前建议做好子网和 IP 规划,并充分了解 IP 池的使用方式。
界面操作¶
- 
登录 DCE UI 后,在左侧导航栏点击 容器管理->集群列表,找到对应集群。然后在左侧导航栏点击容器网络->网络配置。 
- 
进入 网络配置,确认待使用子网是否已创建。- 
如待使用子网已默认创建,可直接创建 IP 池。 
- 
如待使用子网没有默认创建,可进入页面点击 创建子网。
  参数说明: - IPv4/IPv6 类型:待创建子网的子网类型。
- 子网:已经规划好的子网段。
- 如配合 Macvlan/IPVLAN 使用,请提前同网络管理员确认对应网络接口/子接口所对应的网段。
- 网关:子网对应网关,请提前同网络同事确认。
- VLAN ID:子网所对应的 VLAN ID。
 
- 
- 
点击 下一步进入IP 选择,输入待使用的 IP 段(输入上述子网内 IP)。点击确定,完成子网创建。 
- 
点击待使用的子网名称,进入子网详情页面。  
- 
在子网详情页,点击 创建 IP 池。Note 创建 IP 池为可选步骤,可根据需要进行创建。 - 如需要对 IP 进行严管控,可提前完成 IP 池创建。
- 如粗粒度管控 IP 资源,可不用提前创建 IP 池。
 进入创建页面,输入如下参数:  - 
网关:默认继承子网网关,可修改。
- 
自定义路由:当用户有特殊路由需求时,可基于 IP 池粒度的进行自定义。
- 
Multus 实例:Multus CNI 中的具体配置实例,可添加多个,添加后 创建的IPPool和Multus 实例进行关联。创建应用时选择 Multus 实例仅可使用已关联的 IPPool ,更多信息可参考:SpiderIPPool Affinity。
- 
工作负载亲和性:工作负载标签(如app: workload01)。IP 池创建后,仅可被对应的工作负载选择,实现固定 IP 池效果。
- 
节点亲和性:有3种设置方式,分别为不设置;指定节点,可多选(如节点worker1,controller);节点选择器如zone:beijing)。IP 池创建后,工作负载 Pod 需要调度到对应节点才能使用创建的 IP 池。
- 
命名空间亲和性:有3种设置方式,分别为不设置;指定命名空间,可多选,选择后在对应命名空间中的工作负载可使用创建的 IP 池;命名空间选择器,可输入键值自行创建。
 Note 如果创建时不添加任何亲和性,创建后的 IP 池为 共享 IP 池。
- 
点击 IP 池名称,然后点击 添加 IP选择IP 开始地址以及加入 IP 池中的IP 数量,点击确定,完成 IP 添加,再次点击完成 IP 池创建。获取 IP 规则:从IP 开始地址依次获取输入对应数量的 IP,IP 段如不是连续的 IP,则跳过中间断档 IP,依次往后获取。 
- 
创建完成后工作负载即可使用 IP 池。 
YAML 创建¶
也可以直接通过 YAML 来创建子网和 IPPool。
YAML 创建子网¶
apiVersion: spiderpool.spidernet.io/v2beta1
kind: SpiderSubnet
metadata:
  name: subnet-demo-v4
spec:
  subnet: 172.16.0.0/16
  ips:
    - 172.16.41.1-172.16.41.200  # (1)
  subnet: 172.30.120.0/21
  vlan: 0
- 已规划子网 IP,可输入IP 段,如 72.30.120.126-172.30.120.127 段或单个 IP 172.30.120.126
YAML 创建 IPPool¶
apiVersion: spiderpool.spidernet.io/v2beta1
kind: SpiderIPPool
metadata:
  name: standard-ipv4-ippool
spec:
  ipVersion: 4
  subnet: 172.30.120.0/21
  ips:
  - 172.30.120.126-172.30.120.127  # (1)
         # 
- 已添加至子网内的 IP, 可输入 IP 段如 172.30.120.126-172.30.120.127 段或单个 IP 172.30.120.126