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 -
      Copy to Clipboard Toggle word wrap
    2. 获取网络接口名称:

      # nmcli dev status
      Copy to Clipboard Toggle word wrap
    3. 通过网关将路由添加到第二个子网(192.168.0.0):s+
# nmcli connection modify <interface_name> +ipv4.routes "192.168.0.0/24 via <gateway>"
Copy to Clipboard Toggle word wrap

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

+ .Example

+

# nmcli connection modify eth0 +ipv4.routes "192.168.0.0/24 via 192.168.0.1"
Copy to Clipboard Toggle word wrap
  1. 应用更改:

    # nmcli connection up <interface_name>
    Copy to Clipboard Toggle word wrap

    <interface_name> 替换为接口名称。

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

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

    注意

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

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

    $ sudo su -
    Copy to Clipboard Toggle word wrap
  5. 获取网络接口名称:

    # nmcli dev status
    Copy to Clipboard Toggle word wrap
  6. 通过网关将路由添加到第一个子网 (10.0.0.0):

    # nmcli connection modify <interface_name> +ipv4.routes "10.0.0.0/24 via <gateway>"
    Copy to Clipboard Toggle word wrap

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

    示例

    # nmcli connection modify eth0 +ipv4.routes "10.0.0.0/24 via 10.0.0.1"
    Copy to Clipboard Toggle word wrap

  7. 应用更改:

    # nmcli connection up <interface_name>
    Copy to Clipboard Toggle word wrap

    <interface_name> 替换为接口名称。

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

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

    注意

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

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

    $ ping <remote_worker_node_ip_address>
    Copy to Clipboard Toggle word wrap

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

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

    $ ping <control_plane_node_ip_address>
    Copy to Clipboard Toggle word wrap

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

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat