管理EIPPool
更新EIPPool
考虑到用户实际场景,EIPPool对象当前只允许用户调整EIP的数量,即对EIPPool进行扩缩容。用户如果需要调整EIP其他参数,可新建EIPPool对象后在负载配置中替换即可。
EIPPool缩容时,如果EIP资源被占用,则不会删除对应的EIP,直到占用解除。
apiVersion: crd.yangtse.cni/v1
kind: EIPPool
metadata:
name: eippool-demo1
namespace: xxx
spec:
amount: 5 # EIP资源池中的EIP数量
eipAttributes: # EIP的一些属性
...
执行以下命令,查看EIPPool详情,-n表示EIPPool所在的命名空间。
回显信息中名称为eippool-demo1的EIPPool,USAGE由0/3更新为0/5,表示EIPPool更新成功。
# kubectl get eippool -n $namespace_name NAME EIPS USAGE AGE eippool-demo1 0/5 39m
以静态创建的eippool-demo2为例,更新EIPPool就是增加或减少EIPPool中纳管的公网IP。
apiVersion: crd.yangtse.cni/v1
kind: EIPPool # 创建的对象类别
metadata: # 资源对象的元数据定义
name:eippool-demo2
spec: # EIPPool的配置信息
eips: # 纳管的公网IP
- 10.246.173.254
- 10.246.172.3
- 10.246.172.59
删除EIPPool
直接删除EIPPool时,会级联删除该池下的EIP资源。当有EIP被Pod占用时,无法触发EIPPool的删除,当有EIP被其他资源占用时,EIPPool无法删除成功。