15.4.5. 为服务分配 IP 地址
为服务分配外部 IP 地址:
- 登录 OpenShift Container Platform。
- 加载您要公开的服务所在的项目。如果项目或服务不存在 ,请参阅先决条件中的创建项目和服务部分。
运行以下命令,将外部 IP 地址分配给您要访问的服务。使用来自外部 IP 地址范围的 IP 地址 :
$ oc patch svc <name> -p '{"spec":{"externalIPs":["<ip_address>"]}}'
<name>
是服务的名称,-p
表示要应用到服务 JSON 文件的补丁。括号中的表达式将指定 IP 地址分配给指定的服务。例如:
$ oc patch svc mysql-55-rhel7 -p '{"spec":{"externalIPs":["192.174.120.10"]}}' "mysql-55-rhel7" patched
运行以下命令,以查看该服务具有公共 IP:
$ oc get svc NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE mysql-55-rhel7 172.30.131.89 192.174.120.10 3306/TCP 13m
在 master 上,使用 cURL 等工具来确保您可以通过公共 IP 地址访问该服务:
$ curl <public_ip>:<port>
例如:
$ curl 192.168.120.10:3306
如果您得到一串字符并看到
Got packets out of order
消息,则您已连接到该服务。如果您有 MySQL 客户端,请使用标准 CLI 命令登录:
$ mysql -h 192.168.120.10 -u admin -p Enter password: Welcome to the MariaDB monitor. Commands end with ; or \g. MySQL [(none)]>