2017-03-22 2 views
0

ich einen k8s Cluster von kops auf aws erstellen, die Knoten automatische Skalierung Gruppenkonfiguration wie:Cluster-autoscaler skaliert bis nicht den Kubernetes Cluster

metadata: 
creationTimestamp: "2017-03-21T03:53:26Z" 
name: nodes 
spec: 
    associatePublicIp: true 
    image: kope.io/k8s-1.4-debian-jessie-amd64-hvm-ebs-2016-10-21 
    machineType: t2.medium 
    maxSize: 5 
    minSize: 2 
    role: Node 
    zones: 
    - us-west-1a 
    - us-west-1c 

die aws Konsole zeigt aktuelle asg wie:

desired:2; min:2; max:5 

Dann installiere ich die --- mit der official doc, dann stelle ich einen Pod, die aktuelle Cluster kann die Ressource nicht liefern, aber cluster-autoscaler nicht den Knoten zum Cluster hinzufügen, sind Protokolle wie unten:

[email protected]:/var/log$kubectl logs -f cluster-autoscaler-1581749901-fqbzk -n kube-system 
I0322 07:08:43.407683  1 event.go:216] Event(api.ObjectReference{Kind:"Pod", Namespace:"default", Name:"new-mq-test-951523717-trd2s", UID:"9437ac54-0ecd-11e7-8779-0257a5d4c012", APIVersion:"v1", ResourceVersion:"189546", FieldPath:""}): type: 'Normal' reason: 'NotTriggerScaleUp' pod didn't trigger scale-up (it wouldn't fit if a new node is added) 
I0322 07:08:43.407910  1 event.go:216] Event(api.ObjectReference{Kind:"Pod", Namespace:"default", Name:"new-mq-test-951523717-n986l", UID:"9437a3db-0ecd-11e7-8779-0257a5d4c012", APIVersion:"v1", ResourceVersion:"189543", FieldPath:""}): type: 'Normal' reason: 'NotTriggerScaleUp' pod didn't trigger scale-up (it wouldn't fit if a new node is added) 

so, warum die cluster-autoscaler nicht die Cluster skalieren, indem den EC2-Knoten? alle Antworten werden sehr geschätzt

Antwort

0

schließlich fand ich die Antwort, mein Standard kops Konfiguration von nodes asg ist t2.medium, während ich den pod bereitstellen, die ein 5000M für Speicher benötigen, wie wir alle konw t2.medium Speicher 4GB sind, die nicht die Anforderungen passen, so dass die kann nicht skalieren!

0

Ich sah ein ähnliches Problem beim Versuch, Kubernetes Autoscaling auf Google Container Engine zu verwenden. Dies passiert normalerweise, wenn Ihr Cluster nicht genug Knoten enthält, um mehr Platz zu haben. pod.

Die Lösung besteht darin, die automatische Skalierung in Ihrem Cluster (AWS EC2 in Ihrem Fall) zusammen mit Kubernetes Autoscaling zu aktivieren.

Überprüfen Sie die folgende Kubernetes-Dokumentation für Autoscaling auf AWS, um weitere Informationen zu erhalten: link.

+0

Ich benutze das 'cluster_autoscaler'' Add-on', um den Cluster zu skalieren, was bedeutet, dass ich den Cluster nicht manuell ändern möchte. –

Verwandte Themen