Kubernetes 1.17 – wie man aktualisiert, ohne das gesamte Error-Budget aufzubrauchen

Kubernetes 1.17 – wie man aktualisiert, ohne das gesamte Error-Budget aufzubrauchen

Am 9. Dezember wurde die neueste Version von Kubernetes – 1.17 – veröffentlicht. Ihr Motto ist „Stabilität“. Viele Funktionen haben den GA-Status erreicht, und einige veraltete Funktionen wurden entfernt...

Und wie immer, unser geliebter Abschnitt „Action Required“ der Datei CHANGELOG-1.17.md bedarf Aufmerksamkeit.

Lass uns ans Werk gehen...

Achtung, Storage!

In Version 1.17 wird das Aktualisieren von kubelet zur Laufzeit nicht unterstützt, da sich der Pfad zu den Block-Volumes geändert hat. Vor der Aktualisierung des Knotens müssen alle Pods mit dem Befehl evakuiert werden kubectl drain.

Flags und Gates...

Im Changelog wird normalerweise aufgeführt, dass ein bestimmtes Flag oder Feature-Gate entfernt oder hinzugefügt wurde, aber irgendwie wird nie das betreffende Anwendung erwähnt, bei der diese Änderung stattfand...

  • Das Flag --include-uninitialized u kubectl;
  • Die Funktionalität, die durch Feature-Gates erlaubt wurde GCERegionalPersistentDisk, EnableAggregatedDiscoveryTimeout und PersistenteLokaleVolumes, wird nun immer verwendet und kann nicht deaktiviert werden. Diese Optionen wurden aus den möglichen Schlüsseln entfernt api-server und controller-manager;
  • Die IP-Adressen für Services werden nun nicht mehr standardmäßig zugewiesen. Sie müssen beim Start des API-Servers und des Controller-Managers mit einem Flag angegeben werden --service-cluster-ip-range .

kubeadm zu wechseln.

  • Kubeadm hat gelernt, die automatische Aktualisierung von Zertifikaten für kubelet auf allen Knoten des Clusters einzurichten, einschließlich des ersten Masters, auf dem der Befehl ausgeführt wurde. kubeadm init. Ein Nebeneffekt war die Anforderung einer Datei mit der Anfangskonfiguration von kubelet bootstrap-kubelet.conf statt kubelet.conf während der Ausführung. kubeadm init;
  • Beim Hinzufügen von Autorisierungsmodi zur API der Server stellt kubeadm keine Modi mehr zur Verfügung. Node, RBAC im Manifest des statischen Pods und ermöglicht eine vollständige Änderung der Konfiguration.

RBAC

Die integrierten Clusterrollen wurden entfernt system:csi-external-provisioner und system:csi-external-attacher.

Abgelegt…

Einige Funktionen wurden als veraltet erklärt, werden jedoch weiterhin unterstützt. Besonders hervorzuheben ist der Übergang zur Nutzung des ContainerStorageInterface. Administratoren, die eigene (nicht verwaltete) Cluster in AWS und GCE betreiben, sollten den Umstieg auf den CSI-Treiber für die Arbeit mit persistenten Volumes planen — anstelle der in Kubernetes integrierten Treiber. Dabei sollte ihnen das Verfahren zur CSIMigration helfen — wir warten auf eine Schritt-für-Schritt-Anleitung. Administratoren, die andere Anbieter für die Anbindung von persistenten Festplatten nutzen, sollten die Dokumentation suchen und lesen: In Version 1.21 wird versprochen, alle integrierten Treiber endgültig zu entfernen.

Quelle: habr.com

Zuverlässiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server kaufen 🔥 Zuverlässiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server kaufen | ProHoster