2016-04-12 4 views
0

ich mein ersten Kubernetes Cluster auf Google Cloudeinen externen http Load Balancer zu einem Cluster Kubernetes Mapping

gcloud config set compute/zone europe-west1-c 
gcloud config set compute/region europe-west1 
gcloud container clusters create ___-cluster --num-nodes 1 --machine-type n1-standard-1 

Gestartet mehr Hülsen erstellt habe:

kubectl run ___-wui --image=eu.gcr.io/____________/___-wui:latest --port=80 
kubectl run rabbitmq --image=eu.gcr.io/____________/rabbitmq:latest --port=15672 

kubectl get pods verwenden kann ich, dass zwei Schoten sehen sind

laufen
NAME    READY  STATUS RESTARTS AGE 
___-wui-ihggr 1/1  Running 0   1h 
rabbitmq-fzt4q 1/1  Running 0   4m 

Jetzt belichten ich diese beiden Hülsen:

Mit kubectl cluster-info kann ich die Dashboard-URL sehen und ich kann beide Anwendungen von dort zugreifen.

Mit Blick auf den Bereich Netzwerklastenausgleich kann ich meine beiden Apps dort jeweils mit ihren eigenen IP-Adressen sehen.

Was will ich jetzt zu tun ist, diese URLs auf meiner Domain zu diesen Anwendungen abzubilden, zum Beispiel auf beiden Port 80:

http://example.com/rabbitmq -> rabbitmqapp 
http://example.com/___-wui -> wui-app 

Wie würde ich mich über dieses Ziel zu erreichen? Meine einzige Erfahrung ist die Zuordnung von URLs zu Instanzgruppen, die ich in Kubernetes nicht sehe.

Antwort

4

Dazu erstellen Sie einen Ingress http://kubernetes.io/docs/user-guide/ingress/. Es sollte bereits ein l7-Controller im kube-system laufen.

Einige allgemeine Warnungen, die Reise Benutzer sind:
1. Quota
2. Firewall-Regeln
3. Gesundheitskontrollen

Diese werden hier dokumentiert: https://github.com/kubernetes/contrib/blob/master/ingress/controllers/gce/BETA_LIMITATIONS.md

Sie auch die GCE ingress controller ausschlagen kann und stellen Sie nginx contorller bereit, wenn Sie sich nur mit der Ingress-Ressource vertraut machen möchten, ohne Ihr GCE-Kontingent zu verwenden.

+0

Genau das, was ich gesucht habe, danke! –