LINUX.ORG.RU
ФорумAdmin

Затык в туториале kubernetes — не виден прокси

 


0

1

Помогите!

Пытаюсь повторить действия из интерактивного туториала https://kubernetes.io/docs/tutorials/kubernetes-basics/deploy-app/deploy-inte... на своей ВМ. На подключении к запущеному контейнеру получаю отлуп.

Minikube и kubectl уже установлены.

$ minikube status
host: Stopped
kubelet:
apiserver:
kubectl:
$ minikube start
* minikube v1.2.0 on linux (amd64)
* Creating virtualbox VM (CPUs=2, Memory=2048MB, Disk=20000MB) ...
* Configuring environment for Kubernetes v1.15.0 on Docker 18.09.6
* Pulling images ...
* Launching Kubernetes ...
* Verifying: apiserver proxy etcd scheduler controller dns
* Done! kubectl is now configured to use "minikube"
$ kubectl get pods -o wide
No resources found.
$ kubectl run kubernetes-bootcamp --image=gcr.io/google-samples/kubernetes-bootcamp:v1
kubectl run --generator=deployment/apps.v1 is DEPRECATED and will be removed in a future version. Use kubectl run --generator=run-pod/v1 or kubectl create instead.
deployment.apps/kubernetes-bootcamp created
$ kubectl get pods -o wide
NAME                                   READY   STATUS    RESTARTS   AGE   IP           NODE       NOMINATED NODE   READINESS GATES
kubernetes-bootcamp-7b75749df7-55qd7   1/1     Running   0          27s   172.17.0.6   minikube   <none>           <none>
$ kubectl get deployments -o wide
NAME                  READY   UP-TO-DATE   AVAILABLE   AGE   CONTAINERS            IMAGES                                         SELECTOR
kubernetes-bootcamp   1/1     1            1           41s   kubernetes-bootcamp   gcr.io/google-samples/kubernetes-bootcamp:v1   run=kubernetes-bootcamp
$ export POD_NAME=`kubectl get pods -o go-template --template '{{range.items}}{{.metadata.name}}{{"\n"}}{{end}}'`
$ echo $POD_NAME
kubernetes-bootcamp-7b75749df7-55qd7

В другом шелле запускаю прокси:

$ kubectl proxy
Starting to serve on 127.0.0.1:8001
В первом шелле пытаюсь подключиться:
$ curl http://localhost:8001/api/v1/namespaces/default/pods/$POD_NAME/proxy/
Error: 'dial tcp 172.17.0.6:80: connect: connection refused'
Trying to reach: 'http://172.17.0.6/'

Что ещё нужно сделать?

Дистрибутив Debian 10 (amd64).

P.S. Не связано ли это с тем, что контейнер пытается работать через 443 порт, а не 80-й?

P.P.S. Хотя

kubectl exec $POD_NAME curl localhost:8080
отрабатывает правильно.

P.P.P.S. На всякий случай: через expose deployment приложение доступно:

$ kubectl expose deployment/kubernetes-bootcamp --type="NodePort" --port=8080
service/kubernetes-bootcamp exposed
$ export NODE_PORT=`kubectl get services/kubernetes-bootcamp -o go-template='{{(index .spec.ports 0).nodePort}}'`
$ echo $NODE_PORT
30156
$ curl `minikube ip`:$NODE_PORT
Hello Kubernetes bootcamp! | Running on: kubernetes-bootcamp-7b75749df7-55qd7 | v=1
Но вопрос причины отказа через прокси по-прежнему стоит.

★★