3.5. 在子网间建立通信


在典型的 OpenShift Container Platform 集群设置中,所有节点(包括 control plane 和 worker 节点)都驻留在同一网络中。但是,对于边缘计算场景,找到接近边缘的 worker 节点会很有用。这通常涉及为与 control plane 和本地 worker 节点使用的子网不同的远程 worker 节点使用不同的网络片段或子网。此类设置可以降低边缘的延迟并允许增强的可扩展性。

在安装 OpenShift Container Platform 前,您必须正确配置网络,以确保包含远程节点的边缘子网可以访问包含 control plane 节点的子网,并从 control plane 接收流量。

重要

在集群安装过程中,将永久 IP 地址分配给 install-config.yaml 配置文件的网络配置中的节点。如果不这样做,节点可能会被分配一个临时 IP 地址,该地址可能会影响流量到达节点的方式。例如,如果节点分配了临时 IP 地址,并且为节点配置了绑定接口,则绑定接口可能会收到不同的 IP 地址。

此流程详细介绍了允许第二个子网中的远程 worker 节点与第一个子网中的 control plane 节点有效通信所需的网络配置,并允许第一个子网中的 control plane 节点与第二个子网中的远程 worker 节点有效通信。

在此过程中,集群跨越两个子网:

  • 第一个子网 (10.0.0.0) 包含 control plane 和本地 worker 节点。
  • 第二个子网 (192.168.0.0) 包含边缘工作程序节点。
重要

所有 control plane 节点必须在同一子网中运行。当使用多个子网时,您还可以使用清单将 Ingress VIP 配置为在 control plane 节点上运行。详情请参阅"配置要在 control plane 上运行的网络组件"。

使用多个子网部署集群需要使用虚拟介质。

流程

  1. 配置第一个子网与第二个子网通信:

    1. 运行以下命令,以 root 用户身份登录 control plane 节点:

      $ sudo su -
    2. 运行以下命令,获取网络接口的名称:

      # nmcli dev status
    3. 运行以下命令,通过网关向第二个子网(192.168.0.0)添加路由:

      # nmcli connection modify <interface_name> +ipv4.routes "192.168.0.0/24 via <gateway>"

      <interface_name> 替换为接口名称。使用实际网关的 IP 地址替换 <gateway>

      示例

      # nmcli connection modify eth0 +ipv4.routes "192.168.0.0/24 via 192.168.0.1"

    4. 运行以下命令来应用更改:

      # nmcli connection up <interface_name>

      <interface_name> 替换为接口名称。

    5. 验证路由表以确保路由已被成功添加:

      # ip route
    6. 对第一个子网中的每个 control plane 节点重复前面的步骤。

      注意

      调整命令以匹配您的实际接口名称和网关。

  2. 将第二个子网配置为与第一个子网通信:

    1. 运行以下命令,以 root 用户身份登录远程 worker 节点:

      $ sudo su -
    2. 运行以下命令,获取网络接口的名称:

      # nmcli dev status
    3. 运行以下命令,通过网关向第一个子网(10.0.0.0)添加路由:

      # nmcli connection modify <interface_name> +ipv4.routes "10.0.0.0/24 via <gateway>"

      <interface_name> 替换为接口名称。使用实际网关的 IP 地址替换 <gateway>

      示例

      # nmcli connection modify eth0 +ipv4.routes "10.0.0.0/24 via 10.0.0.1"

    4. 运行以下命令来应用更改:

      # nmcli connection up <interface_name>

      <interface_name> 替换为接口名称。

    5. 运行以下命令,验证路由表以确保路由已被成功添加:

      # ip route
    6. 对第二个子网中的每个 worker 节点重复前面的步骤。

      注意

      调整命令以匹配您的实际接口名称和网关。

  3. 配置网络后,测试连接以确保远程 worker 节点可以访问 control plane 节点,control plane 节点可以访问远程 worker 节点。

    1. 从第一个子网中的 control plane 节点,运行以下命令来在第二个子网中 ping 远程 worker 节点:

      $ ping <remote_worker_node_ip_address>

      如果 ping 成功,这意味着第一个子网中的 control plane 节点可以访问第二个子网中的远程 worker 节点。如果您没有收到响应,请检查网络配置并重复该节点的步骤。

    2. 从第二个子网中的远程 worker 节点,运行以下命令来在第一个子网中 ping control plane 节点:

      $ ping <control_plane_node_ip_address>

      如果 ping 成功,则意味着第二个子网中的远程 worker 节点可以访问第一个子网中的 control plane。如果您没有收到响应,请检查网络配置并重复该节点的步骤。

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2026 Red Hat
返回顶部