×

作为集群管理员,您可以配置 Red Hat OpenShift Networking OVN-Kubernetes 网络插件,以允许 Linux 和 Windows 节点分别托管 Linux 和 Windows 工作负载。

使用 OVN-Kubernetes 配置混合网络

您可以配置集群以使用 OVN-Kubernetes 网络插件实现混合网络。这允许支持不同节点网络配置的混合集群。

此配置对于在同一集群中运行 Linux 和 Windows 节点都是必需的。

先决条件
  • 安装 OpenShift CLI (oc)。

  • 以具有 cluster-admin 权限的用户身份登录集群。

  • 确保集群使用 OVN-Kubernetes 网络插件。

步骤
  1. 要配置 OVN-Kubernetes 混合网络覆盖,请输入以下命令:

    $ oc patch networks.operator.openshift.io cluster --type=merge \
      -p '{
        "spec":{
          "defaultNetwork":{
            "ovnKubernetesConfig":{
              "hybridOverlayConfig":{
                "hybridClusterNetwork":[
                  {
                    "cidr": "<cidr>",
                    "hostPrefix": <prefix>
                  }
                ],
                "hybridOverlayVXLANPort": <overlay_port>
              }
            }
          }
        }
      }'

    其中

    cidr

    指定用于附加覆盖网络上节点的 CIDR 配置。此 CIDR 必须与集群网络 CIDR 不重叠。

    hostPrefix

    指定要分配给每个节点的子网前缀长度。例如,如果 hostPrefix 设置为 23,则每个节点将从给定的 cidr 中分配一个 /23 子网,这允许 510 个 (2^(32 - 23) - 2) pod IP 地址。如果您需要从外部网络访问节点,请配置负载均衡器和路由器来管理流量。

    hybridOverlayVXLANPort

    为附加覆盖网络指定自定义 VXLAN 端口。这对于在 vSphere 上安装的集群中运行 Windows 节点是必需的,并且不能为任何其他云提供商配置。自定义端口可以是任何开放端口,但不包括默认的 4789 端口。有关此要求的更多信息,请参阅 Microsoft 文档中的 主机之间 Pod 到 Pod 的连接在我的在 vSphere 上运行的 Kubernetes 集群中断

    示例输出
    network.operator.openshift.io/cluster patched
  2. 要确认配置处于活动状态,请输入以下命令。更新可能需要几分钟才能应用。

    $ oc get network.operator.openshift.io -o jsonpath="{.items[0].spec.defaultNetwork.ovnKubernetesConfig}"