2016-07-29 17 views
0

Ich spiele ein wenig mit Kubernetes (v1.3.2) Ich überprüfe die Möglichkeit, Balancing-Aufrufe innerhalb des Clusters zu laden (3 lokale CentOS 7-VMs).
Wenn ich die Dokumentation in http://kubernetes.io/docs/user-guide/services/ 'Virtual IPs und Service Proxies' Absatz richtig verstehe, und wie ich in meinen Tests sehe, ist die Lastverteilung pro Knoten (VM). D. h., Wenn ich einen Cluster von 3 VMs habe und einen Service mit 6 Pods (2 pro VM) bereitgestellt habe, wird der Lastausgleich nur zwischen den Pods der gleichen VM stattfinden, was irgendwie enttäuschend ist.
Zumindest sehe ich das in meinen Tests: Der Aufruf des Dienstes aus dem Cluster mit dem ClusterIP des Dienstes führt zu einem Lastausgleich zwischen den beiden Pods, die sich auf derselben VM befinden, von der der Anruf gesendet wurde. (BTW, das gleiche gilt, wenn der Dienst von außerhalb des Clusters (unter Verwendung von NodePort) aufgerufen wird und dann wird die Anforderung Lastenausgleich zwischen den 2 Pods, die sich in der VM befinden, die die IP-Adresse des Anfrageziels war).
Ist das obige korrekt?
Wenn ja, wie kann ich interne Cluster-Anrufe Last-Balance zwischen allen 6 Replikate machen? (Muss ich ein Load Balancer wie Nginx dafür verwenden?)Kubernetes-Cluster interner Lastenausgleich

Antwort

1

Nein, die Aussage ist nicht korrekt. Das Loadbalancing sollte über Knoten (VMs) erfolgen. Diese demo demonstriert es. Ich habe diese Demo auf einem k8s-Cluster mit 3 Knoten auf GCE ausgeführt. Er erstellt zuerst einen Service mit 5 Backend-Pods, dann ssh in einem Gce-Node und besucht den service.ClusterIP, und der Traffic wird auf alle 5 Pods verteilt. Ich sehe, Sie haben eine andere Frage "nicht eindeutige ip pro pod" geöffnet, es scheint, dass Sie nicht richtig eingerichtet Ihr Cluster-Netzwerk, was verursacht haben könnte, was Sie beobachtet haben.

+0

Danke. Ich habe auch in diese Richtung gedacht. Ich werde das Zeug überprüfen, auf das Sie im Kommentar des anderen Falles verwiesen haben – user5396668

0

In Ihrem Fall wird jeder Knoten eine Kopie des Service- und Lastausgleichs über die Knoten ausführen.