Я запускаю openshift в aws
[centos@ip-10-0-0-14 ~]$ oc version
oc v3.6.1+008f2d5
kubernetes v1.6.1+5115d708d7
features: Basic-Auth GSSAPI Kerberos SPNEGO
Server https://ip-10-0-0-14.ec2.internal:8443
openshift v3.6.1+008f2d5
kubernetes v1.6.1+5115d708d7
У меня есть один мастер и два узла.
Как я могу выставить сервис на публичный ip? Я могу получить доступ к услуге внутри:
links http://blogroute-project-a.router.default.svc.cluster.local
Как мне выставить его на публичный ip? Возможно ли это сделать в веб-консоли openshfit?
Я пытался следовать https://docs.openshift.com/container-platform/3.4/dev_guide/expose_service/expose_internal_ip_service.html, но не смог.
В команде:
oc patch svc blog -p '{"spec": {"externalIPs": ["what ip?"]}}'
doc сообщает о ip, видимом в ifconfig (но это не публичный ip).
Какой IP-адрес следует использовать, публичный IP-адрес AWS или частный IP-адрес (например, 10-0-0-14) из локальной сети AWS?
Должен ли я использовать ip главного узла? Или рабочего? Если у меня есть два рабочих узла, я должен написать ips их обоих?
В настоящее время существуют следующие маршруты:
[centos@ip-10-0-0-14 ~]$ oc get routes
NAME HOST/PORT PATH SERVICES PORT TERMINATION WILDCARD
blog blog-project-a.router.default.svc.cluster.local blog 8080-tcp None
blog-django-py blog-django-py-project-a.router.default.svc.cluster.local blog-django-py 8080-tcp None
blog2 ec2-3-90-171-97.compute-1.amazonaws.com /blog2 blog 8080-tcp None
blogroute blogroute-project-a.router.default.svc.cluster.local blog 8080-tcp None
для следующих услуг:
[centos@ip-10-0-0-14 ~]$ oc get svc
NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE
blog 172.30.111.64 3.90.171.97 8080/TCP 5d
blog-django-py 172.30.184.15 <none> 8080/TCP 5d