Как получить доступ к сервису kubernetes на локальном хосте с помощью Docker для Windows - PullRequest
0 голосов
/ 26 сентября 2018

У меня Windows 10 Pro с Docker для Windows v18.06.1-ce с включенным kubernetes.

Используя kubectl create -f, я создал rc.yml:

apiVersion: v1
kind: ReplicationController
metadata:
  name: hello-rc
spec:
  replicas: 9
  selector:
    app: hello-world
  template:
    metadata:
      labels:
        app: hello-world
    spec:
      containers:
      - name: hello-ctr
        image: nigelpoulton/pluralsight-docker-ci:latest
        ports:
        - containerPort: 8080

svc.yml

apiVersion: v1
kind: Service
metadata:
  name: hello-svc
  labels:
    app: hello-world
spec:
  type: NodePort
  ports:
  - port: 8080
    nodePort: 30001
    protocol: TCP
  selector:
    app: hello-world

Как получить доступ к веб-сайту за службой?

Я ожидаю, что localhost: 8080 будет работать, но это не так, как и 10.108.96.27:8080

> kubectl describe service/hello-svc
Name:                     hello-svc
Namespace:                default
Labels:                   app=hello-world
Annotations:              <none>
Selector:                 app=hello-world
Type:                     NodePort
IP:                       10.108.96.27
LoadBalancer Ingress:     localhost
Port:                     <unset>  8080/TCP
TargetPort:               8080/TCP
NodePort:                 <unset>  30001/TCP
Endpoints:                10.1.0.10:8080,10.1.0.11:8080,10.1.0.12:8080 + 6 more...
Session Affinity:         None
External Traffic Policy:  Cluster
Events:                   <none>

1 Ответ

0 голосов
/ 26 сентября 2018

Существует два способа предоставления сервиса внешнему миру из кластера Kubernetes:

  1. тип: LoadBalancer .Однако он работает только с облачными провайдерами.

  2. тип: NodePort .Как вы использовали в этом случае.Теперь, чтобы получить доступ к сервису внутри кластера Kubernetes, вам нужно использовать IP-адрес одного из ваших узлов и порт из поля nodePort Например, 12.34.56.78:30001

.информацию смотрите в официальной документации .

...