
Warum etcd in Kubernetes bei Skalierung versagt
Wie die Diskussion begann
In diesem r/kubernetes-Thread ging es darum, warum etcd in Kubernetes bei Skalierung versagt. Der Originalbeitrag verwies auf learnkube.com, und in den Kommentaren entstand schnell eine praktische Diskussion über die Kompromisse, Überraschungen und Erfahrungen aus der Produktion, die hinter dem Thema stecken.
Was in den Kommentaren auffiel
Diskussionspunkt 1
Guter Artikel, danke. Nur noch 64.997 Nodes, bis ich das in meinem Homelab brauche.
Diskussionspunkt 2
Danke fürs Schreiben. Der einzige Teil, der fehlt: Man kann große Cluster auch selbst aufbauen, ohne Google oder AWS zu sein und die etcd-API neu zu implementieren. Kubernetes unterstützt etcd-Sharding nativ. Mit --etcd-servers-override lassen sich verschiedene etcd-Instanzen (oder Cluster) nutzen, um Events, Pods oder Services getrennt zu speichern. Für wirklich kleine Cluster kann man auch einen einzigen etcd-Cluster für mehrere API-Server verwenden. Man setzt einfach --etcd-prefix für jeden Cluster unterschiedlich und kann so Ressourcen teilen und den Wartungsaufwand minimieren.
Diskussionspunkt 3
Als jemand, der an Kubernetes-Skalierbarkeit, der API-Server-Caching-Schicht und etcd arbeitet (und dessen Arbeit im Artikel zitiert wird), kann ich nur sagen: Dieser Artikel verfehlt den Punkt komplett und verbreitet eher Desinformation über Skalierbarkeit als Information. Die jüngsten Sprünge in der Skalierbarkeit von K8s-Angeboten sind das Ergebnis jahrelanger Arbeit an der Behebung von Ineffizienzen und Engpässen in der Control Plane. Bei GKE haben wir 30k-Node-Cluster auf einem sehr alten etcd-Release v3.4 getestet, auf alter n2-Maschinengeneration. Es hat funktioniert, das heißt: Mit jeder neueren Hardware sollte man diese Zahl locker übertreffen können. etcd ist nicht der Flaschenhals. Mehr über K8s-Skalierbarkeit erfahren? Diesen KubeCon-Talk von Leuten ansehen, die wirklich daran arbeiten: https://youtu.be/SdLLOcNZN5E
Diskussionspunkt 4
Ich meine, das hat eigentlich nichts mit "langsamem etcd" zu tun, sondern damit, dass ZFS etcd ausbremst.
Diskussionspunkt 5
Ein nützliches, hochverfügbares System. Was ist dein Problem damit?
Thread-Übersicht
- Original-Subreddit: r/kubernetes
- Original-Autor: u/danielepolencic
- Reddit-Score: 223
- Kommentaranzahl: 33
- Original-Thread: https://learnkube.com/etcd-breaks-at-scale