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):s+
# nmcli connection modify <interface_name> +ipv4.routes "192.168.0.0/24 via <gateway>"

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

+ .Example

+

# nmcli connection modify eth0 +ipv4.routes "192.168.0.0/24 via 192.168.0.1"
  1. 应用更改:

    # nmcli connection up <interface_name>

    <interface_name> 替换为接口名称。

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

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

    注意

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

    1. 将第二个子网配置为与第一个子网通信:
  4. root 用户身份登录远程 worker 节点:

    $ sudo su -
  5. 获取网络接口名称:

    # nmcli dev status
  6. 通过网关将路由添加到第一个子网 (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"

  7. 应用更改:

    # nmcli connection up <interface_name>

    <interface_name> 替换为接口名称。

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

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

    注意

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

    1. 配置网络后,测试连接以确保远程 worker 节点可以访问 control plane 节点,control plane 节点可以访问远程 worker 节点。
  10. 从第一个子网中的 control plane 节点,ping 第二个子网中的远程 worker 节点:

    $ ping <remote_worker_node_ip_address>

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

  11. 从第二个子网中的远程 worker 节点,ping 第一个子网中的 control plane 节点:

    $ ping <control_plane_node_ip_address>

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

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2026 Red Hat
返回顶部