Red Hat Training

A Red Hat training course is available for OpenShift Container Platform

15.4.6. 配置网络

分配外部 IP 地址后,您需要创建指向该 IP 的路由。

以下步骤是配置从其他节点访问公开的服务所需的网络的一般准则。随着网络环境的不同,请咨询您的网络管理员获取环境中需要进行的特定配置。

注意

这些步骤假定所有系统都在同一个子网中。

在 master 上:

  1. 重新启动网络,以确保网络已启动。

    # service network restart
    Restarting network (via systemctl):  [  OK  ]

    如果网络没有启动,在运行以下命令时,您将收到错误消息(如 Network is unreachable )。

  2. 运行以下命令,使用您要公开的服务的外部 IP 地址以及与 ifconfig 命令输出中的主机 IP 关联的设备名称:

    $ ip address add <external_ip> dev <device>

    例如:

    $ ip address add 192.168.120.10 dev eth0

    如果您需要,运行以下命令来获取 master 所在的主机服务器的 IP 地址:

    $ ifconfig

    查找列出的设备类似如下:UP,BROADCAST,RUNNING,MULTICAST.

    eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
            inet 10.16.41.22  netmask 255.255.248.0  broadcast 10.16.47.255
            ...
  3. 在 master 所在的主机的 IP 地址和 master 主机的网关 IP 地址之间添加路由。如果为网络路由使用子网掩码,请使用 子网掩码 选项以及要使用的子网掩码:

    $ route add -host <host_ip_address> netmask <netmask> gw <gateway_ip_address> dev <device>

    例如:

    $ route add -host 10.16.41.22 netmask 255.255.248.0 gw 10.16.41.254 dev eth0

    netstat -nr 命令提供网关 IP 地址:

    $ netstat -nr
    Kernel IP routing table
    Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
    0.0.0.0         10.16.41.254    0.0.0.0         UG        0 0          0 eth0
  4. 在公开的服务的 IP 地址和 master 主机的 IP 地址间添加路由:

    $ route add -net 192.174.120.0/24 gw 10.16.41.22 eth0

在节点上:

  1. 重新启动网络,以确保网络已启动。

    # service network restart
    Restarting network (via systemctl):  [  OK  ]

    如果网络没有启动,在执行以下命令时,您将收到错误消息,如 Network is unreachable

  2. 在节点所在主机的 IP 地址和节点主机的网关 IP 地址之间添加路由。如果为网络路由使用子网掩码,请使用 子网掩码 选项以及要使用的子网掩码:

    $ route add -net 10.16.40.0 netmask 255.255.248.0 gw 10.16.47.254 eth0

    ifconfig 命令显示主机 IP:

    $ ifconfig
    eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
            inet 10.16.41.71  netmask 255.255.248.0  broadcast 10.19.41.255

    netstat -nr 命令显示网关 IP:

    $ netstat -nr
    Kernel IP routing table
    Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
    0.0.0.0         10.16.41.254    0.0.0.0         UG        0 0          0 eth0
  3. 在公开的服务的 IP 地址和 master 节点所在主机系统的 IP 地址间添加路由:

    $ route add -net 192.174.120.0 netmask 255.255.255.0 gw 10.16.41.22 dev eth0
  4. 使用 cURL 等工具来确保您可以使用公共 IP 地址访问该服务:

    $ curl <public_ip>:<port>

    例如:

    $ curl 192.168.120.10:3306

    如果您得到一串字符并看到 Got packets out of order 消息,则可从节点访问您的服务。

在没有位于集群中的系统中:

  1. 重新启动网络,以确保网络已启动。

    $ service network restart
    Restarting network (via systemctl):  [  OK  ]

    如果网络没有启动,在执行以下命令时,您将收到错误消息,如 Network is unreachable

  2. 在远程主机的 IP 地址和远程主机的网关 IP 之间添加路由。如果为网络路由使用子网掩码,请使用 子网掩码 选项以及要使用的子网掩码:

    $ route add -net 10.16.64.0 netmask 255.255.248.0 gw 10.16.71.254 eno1
  3. 在 master 上公开的服务的 IP 地址和 master 主机的 IP 地址间添加路由:

    $ route add -net 192.174.120.0 netmask 255.255.255.0 gw 10.16.41.22
  4. 使用 cURL 等工具来确保您可以使用公共 IP 地址访问该服务:

    $ curl <public_ip>:<port>

    例如:

    $ curl 192.168.120.10:3306

    如果您得到一串字符并看到 Got packets out of order 消息,则可以在集群外部访问您的服务。