У меня есть кластер из 3 виртуальных машин, на котором я устанавливаю kubernetes и развернул некоторые модули и службы, которые я хотел бы получить снаружи (мой локальный p c для примера)
Я следовал этому руководству https://kubernetes.github.io/ingress-nginx/deploy/#bare -metal для установки моего входного контроллера. Я создал сервис типа NodePort. Я создал вход, который выглядит следующим образом:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: test-ingress
annotations:
kubernetes.io/ingress.class: nginx
spec:
rules:
- host: my.service.com
http:
paths:
- path: /
backend:
serviceName: myservice
servicePort: 9090
kubectl get svc myservice
дает мне:
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
myservice NodePort xxx.xxx.xxx.xxx <none> 9090:31220/TCP 47m
kubectl get ingress test-ingress
дает мне
NAME HOSTS ADDRESS PORTS AGE
test-ingress my.service.com xx.xxx.xxx.xxx 80 49m
На моем локальный компьютер, который я добавил в / etc / hosts, я сопоставил IP-адрес входа с именем my.service.com, когда я пытаюсь пропинговать my.service.com или напрямую пакет 100% тайм-аута запроса ip I go потеря. Я попытался подключиться к визуальному интерфейсу моего сервиса через веб-браузер, и он тоже не работает.
Как мне узнать, почему я не могу получить доступ к своему сервису из-за пределов кластера?