Menu Close

15.11. 分配出口 IP 地址

作为集群管理员,您可以为从一个命名空间中,或从一个命名空间内的特定 pod 中离开集群的网络流量分配一个出口 IP 地址。

15.11.1. 为一个命名空间分配出口 IP 地址

您可以将一个或多个出口 IP 地址分配给一个命名空间,或分配给命名空间中的特定 pod。

先决条件

  • 安装 OpenShift CLI(oc)。
  • 以集群管理员身份登录集群。
  • 至少配置一个节点来托管出口 IP 地址。

流程

  1. 创建 EgressIP 对象:

    1. 创建一个 <egressips_name>.yaml 文件,其中 <egressips_name> 是对象的名称。
    2. 在您创建的文件中,定义一个 EgressIP 对象,如下例所示:

      apiVersion: k8s.ovn.org/v1
      kind: EgressIP
      metadata:
        name: egress-project1
      spec:
        egressIPs:
        - 192.168.127.10
        - 192.168.127.11
        namespaceSelector:
          matchLabels:
            env: qa
  2. 运行以下命令来创建对象。

    $ oc apply -f <egressips_name>.yaml 1
    1
    <egressips_name> 替换为对象的名称。

    输出示例

    egressips.k8s.ovn.org/<egressips_name> created

  3. 可选:保存 <egressips_name>.yaml 文件,以便在以后进行修改。
  4. 向命名空间添加需要出口 IP 地址的标签。要在第 1 步中定义的 EgressIP 对象 的命名空间中添加标签,请运行以下命令:

    $ oc label ns <namespace> env=qa 1
    1
    <namespace> 替换为需要出口 IP 地址的命名空间。