curl: (7) Не удалось подключиться к порту 1959.168.99.100 31591: соединение отклонено - PullRequest
1 голос
/ 05 марта 2019

Это мои модули

hello-kubernetes-5569fb7d8f-4rkhs   0/1     ImagePullBackOff   0          5d2h
hello-minikube-5857d96c67-44kfg     1/1     Running            1          5d2h
hello-minikube2                     1/1     Running            0          3m24s
hello-minikube2-74654c8f6f-trrrw    1/1     Running            0          4m8s
hello-newkubernetes                 0/1     ImagePullBackOff   0          5d1h

Если я попытаюсь

curl $(minikube service hello-minikube2 --url)
curl: (7) Failed to connect to 192.168.99.100 port 31591: Connection refused

Давайте проверим VBox

inet 192.168.99.1/24 brd 192.168.99.255 scope global vboxnet0
   valid_lft forever preferred_lft forever
inet6 fe80::800:27ff:fe00:0/64 scope link 
   valid_lft forever preferred_lft forever

Почему в моем соединении отказано?

kubectl get svc -o wide
NAME                TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)          AGE     SELECTOR
hello-kubernetes    NodePort    10.98.65.138    <none>        8080:30062/TCP   5d2h    run=hello-kubernetes
hello-minikube      NodePort    10.105.166.56   <none>        8080:30153/TCP   5d3h    run=hello-minikube
hello-minikube2     NodePort    10.96.94.39     <none>        8080:31591/TCP   42m     run=hello-minikube2
kubernetes          ClusterIP   10.96.0.1       <none>        443/TCP          5d4h    <none>
tomcat-deployment   NodePort    10.96.205.228   <none>        8080:30613/TCP   2m13s   app=tomcat

kubectl get ep -o wide
NAME                ENDPOINTS                         AGE
hello-kubernetes                                      5d14h
hello-minikube      172.17.0.7:8080                   5d14h
hello-minikube2     172.17.0.4:8080,172.17.0.5:8080   12h
kubernetes          192.168.99.100:8443               5d16h
tomcat-deployment   172.17.0.6:8080                   11h

Я хочу показать конечную точку службы

minikube service tomcat-deployment --url
http://192.168.99.100:30613

Почему этот URL отличается от вывода в формате ep -o wide?

Ответы [ 2 ]

3 голосов
/ 06 марта 2019

По-видимому, вы пытаетесь получить доступ к своей службе за пределами кластера, поэтому вам необходимо предоставить IP-адрес своей службы для внешнего подключения.

Запустите kubectl edit svc hello-minikube2 и измените

type: NodePort

на

type: LoadBalancer

или

kubectl expose deployment hello-minikube2 --type=LoadBalancer --port=8080

В облачных провайдерах, которые поддерживают балансировщики нагрузки, для доступа к Сервису будет предоставлен внешний IP-адрес.В Minikube тип LoadBalancer делает службу доступной с помощью команды службы minikube.

Выполните следующую команду:

minikube service hello-minikube2
2 голосов
/ 05 марта 2019

похоже, что вы пытаетесь получить доступ к модулю, и это должно быть через службу kubernetes, а не напрямую к модулю.Вы также можете показать: kubectl get svc -o wide?

, если служба действительно существует, попробуйте использовать kubectl get ep -o wide, чтобы проверить, действительно ли модуль обнаружен службой

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...