Das ursprünglich von Google initiierte, heute von der Cloud Native Computing Foundation verwaltet Container-Orchestrierungs-Tool Kubernetes liegt nun in Version 1.6 vor, deren Neuerungen sich im Wesentlichen auf Skalierung und Automatisierung konzentrieren.
Die Neuerungen in Kubernetes 1.6 betreffen vor allem Skalierung und Automatisierung. So unterstützt Kubernetes 1.6 nun bis zu 5.000 Knoten und insgesamt ca. 150.000 Pods. Diese enorme Erweiterung wird durch das von CoreOS stammende etcd v3 ermöglicht.
Weitere Neuerungen
Mit dem „Federation“-Feature lassen sich nun mehrere Cluster über einen API-Endpunkt ansprechen, sogar dann, wenn sie in verschiedenen Rechenzentren stehen. Darüber hinaus haben die Entwickler in Kubernetes 1.6 die Ablaufplanung, um Pods besser abgestimmt bereitstellen zu können, optimiert. So können Nutzer nun Pods mit „node affinity/anti-affinity“ nur auf bestimmten, auf Labels basierenden Nodes, aufsetzen. Dabei können sie mit „taints and tolerations“ markieren, welche Nodes für Pods nicht bereit stehen.
Neu ist auch, dass der Scheduler nun Regeln beherrscht, um Pods in bestimmten Zonen, basierend auf einer vorgegebenen Fehlertoleranz oder auf Nodes eines bestimmten Nutzers zu starten. Nutzer können aber auch eigene Scheduler erstellen. Darüber hinaus haben die Entwickler das Runtime-Interface, den etcd v3 (s. o) und die Daemon-Sets aktualisiert.
Storage-Bereitstellung
Ferner hat das Entwickler-Team die automatisierte Bereitstellung von Storage verbessert. So sind in Version 1.6 nun StorageClass und die dynamische Volume-Provisionierung als stabil gekennzeichnet. Damit können Nutzer jetzt Storage nach Bedarf erzeugen, so dass die bisher erforderliche Vorprovisionierung nicht mehr nötig ist. Per Default installiert Kubernetes 1.6 die StorageClass-Objekte für AWS, Azure, GCP, OpenStack und VMware vSphere, unterstützt aber zusätzlich auch ScaleIO (Plugin), Portworx (Plugin) und NFSv3, NFSv4 sowie GlusterFS (mit den COS Node Image).
Alpha und Beta
Neu eingeführt wurden einige Funktionen im Alpha-Stadium wie „Out-of-tree cloud provider“, „Per-pod-eviction“, die „Pod Injection Policy“ und „Custom metrics“. Dafür haben einige ältere Alpha-Features jetzt Beta-Status erlangt wie z. B. Das CLI-Tool „kubefed“. Es kann jetzt kube-dns automatisch konfigurieren. Ebenfalls neu im Beta-Stadium ist die rollenbasierte Zugriffskontrolle (RBAC). Administratoren damit nun fein granular bestimmen, welche Nutzer welche Komponenten eines Kubernetes-Clusters kontrollieren können. Dabei wird auch das ebenfalls als Beta-Version gekennzeichnete CLI-Tool kubeadm unterstützt.
Kubernetes ist unter der Apache License 2.0 veröffentlich und kann von Github heruntergeladen werden.