16.2.2.2. 对外部 IP 地址分配的限制

作为集群管理员,您可以指定允许和拒绝的 IP 地址块。

限制只针对没有 cluster-admin 权限的用户。集群管理员始终可以将服务 spec.externalIPs[] 字段设置为任何 IP 地址。

您可以使用一个通过指定 spec.ExternalIP.policy 字段来定义的一个policy 对象来配置 IP 地址策略。策略对象有以下内容:

{
  "policy": {
    "allowedCIDRs": [],
    "rejectedCIDRs": []
  }
}

在配置策略限制时,会应用以下规则:

  • 如果设置了 policy={},那么创建带有 spec.ExternalIPs[] 设置的 Service 对象将失败。这是 OpenShift Container Platform 的默认设置。这与设置 policy=null 的行为相同。
  • 如果设置了policy,并且设置了 policy.allowedCIDRs[]policy.rejectedCIDRs[],则应用以下规则:

    • 如果同时设置了 allowedCIDRs[]rejectedCIDRs[],则 allowedCIDRs[] 的设置高于 rejectedCIDRs[]
    • 如果设置了 allowedCIDRs[],只有在允许指定的 IP 地址时,创建带有 spec.ExternalIPs[]Service 对象才能成功。
    • 如果设置了 rejectedCIDRs[],只有在指定的 IP 地址未被拒绝时,创建带有 spec.ExternalIPs[]Service 对象才能成功。