This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.25.6. 为服务外部 IP 配置 ingress 集群流量
您可以将外部 IP 地址附加到服务,使其可用于集群外的流量。这通常只适用于在裸机硬件上安装的集群。必须正确配置外部网络基础架构,将流量路由到该服务。
25.6.1. 先决条件 复制链接链接已复制到粘贴板!
您的集群被配置为启用了 ExternalIP。如需更多信息,请参阅为服务配置 ExternalIPs。
注意对于 egress IP,不要使用相同的 ExternalIP。
25.6.2. 将 ExternalIP 附加到服务 复制链接链接已复制到粘贴板!
您可以将 ExternalIP 附加到服务。如果您的集群被配置为自动分配 ExternalIP,您可能不需要手动将 ExternalIP 附加到该服务。
流程
可选: 要确认为 ExternalIP 配置了哪些 IP 地址范围,请输入以下命令:
oc get networks.config cluster -o jsonpath='{.spec.externalIP}{"\n"}'
$ oc get networks.config cluster -o jsonpath='{.spec.externalIP}{"\n"}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 如果设置了
autoAssignCIDRs
,在没有指定spec.externalIPs
字段的情况下,OpenShift Container Platform 会自动为新的Service
对象分配一个 ExternalIP。为服务附加一个 ExternalIP。
如果要创建新服务,请指定
spec.externalIPs
字段,并提供包括一个或多个有效 IP 地址的数组。例如:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 如果您要将 ExternalIP 附加到现有服务中,请输入以下命令。将
<name>
替换为服务名称。将<ip_address>
替换为有效的 ExternalIP 地址。您可以提供多个以逗号分开的 IP 地址。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例如:
oc patch svc mysql-55-rhel7 -p '{"spec":{"externalIPs":["192.174.120.10"]}}'
$ oc patch svc mysql-55-rhel7 -p '{"spec":{"externalIPs":["192.174.120.10"]}}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
"mysql-55-rhel7" patched
"mysql-55-rhel7" patched
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
要确认一个 ExternalIP 地址已附加到该服务,请输入以下命令。如果为新服务指定 ExternalIP,您必须首先创建该服务。
oc get svc
$ oc get svc
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE mysql-55-rhel7 172.30.131.89 192.174.120.10 3306/TCP 13m
NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE mysql-55-rhel7 172.30.131.89 192.174.120.10 3306/TCP 13m
Copy to Clipboard Copied! Toggle word wrap Toggle overflow