2016-07-21 17 views
2

Ich versuche, mit den folgenden Einstellungen einen neuen Kubernetes Cluster auf AWS zu starten:Kubernetes 1.3.x auf AWS bekommt nur ein Arbeits Günstling

export KUBERNETES_PROVIDER=aws 

export KUBE_AWS_INSTANCE_PREFIX="k8-update-test" 
export KUBE_AWS_ZONE="eu-west-1a" 
export AWS_S3_REGION="eu-west-1" 

export ENABLE_NODE_AUTOSCALER=true 

export NON_MASQUERADE_CIDR="10.140.0.0/20" 
export SERVICE_CLUSTER_IP_RANGE="10.140.1.0/24" 
export DNS_SERVER_IP="10.140.1.10" 

export MASTER_IP_RANGE="10.140.2.0/24" 
export CLUSTER_IP_RANGE="10.140.3.0/24" 

Nach dem Ausführen $KUBE_ROOT/cluster/kube-up.sh der Master erscheint und 4 (Standard) Günstlinge sind gestartet. Leider wird nur ein Diener gelesen. Das Ergebnis kubectl get nodes ist:

NAME           STATUS  AGE 
ip-172-20-0-105.eu-west-1.compute.internal NotReady 19h 
ip-172-20-0-106.eu-west-1.compute.internal NotReady 19h 
ip-172-20-0-107.eu-west-1.compute.internal Ready  19h 
ip-172-20-0-108.eu-west-1.compute.internal NotReady 19h 

Bitte nicht, dass ein Knoten ausgeführt wird, während 3 nicht bereit sind. Wenn ich auf die Details eines NotReady Knoten sehe ich die folgende Fehlermeldung erhalten:

ConfigureCBR0 requested, but PodCIDR not set. Will not configure CBR0 right now.

Wenn ich versuche, den Cluster zu beginnen aus den Einstellungen NON_MASQUERADE_CIDR, SERVICE_CLUSTER_IP_RANGE, DNS_SERVER_IP, MASTER_IP_RANGE und CLUSTER_IP_RANGE alles funktioniert. Alle Günstlinge werden fertig, sobald sie gestartet werden.

Hat jemand eine Idee, warum der PodCIDR nur auf einem Knoten, aber nicht auf den anderen Knoten gesetzt wurde?

Noch eine Sache: Die gleichen Einstellungen funktionierten gut auf kubernetes 1.2.4.

+1

Versuchen Sie dies manuell erstellt cbr0 und set --configure-cbr0 = false und sehen, ob das behoben wird? – error2007s

Antwort

2

Ihr Cluster IP-Bereich ist zu klein. Sie haben eine/24 für Ihren gesamten Cluster (255 Adressen) zugewiesen, und Kubernetes gibt standardmäßig jedem Knoten eine/24. Dies bedeutet, dass der erste Knoten 10.140.3.0/24 zugewiesen wird und Sie dann keine weiteren/24 Bereiche für die Zuweisung zu den anderen Knoten in Ihrem Cluster haben.

Die Tatsache, dass dies in 1.2.4 funktionierte, war ein Fehler, weil der CIDR-Allokator nicht überprüft hat, dass er keine Bereiche außerhalb des Cluster-IP-Bereichs zugewiesen hat (was er jetzt tut). Versuchen Sie, einen größeren Bereich für Ihren Cluster zu verwenden (GCE verwendet standardmäßig a/14, mit dem Sie bis zu 1000 Knoten skalieren können, aber mit einem/20 für einen kleinen Cluster sollte es Ihnen gut gehen).