Kubernetes v1.33: Die Image-Pu... Notiz

Kubernetes v1.33: Die Image-Pull-Policy funktioniert endlich so, wie Sie es immer erwartet haben!

Die imagePullPolicy in Kubernetes weist ein überraschendes Verhalten auf, das seit über 10 Jahren ein Problem darstellt und es Pods ermöglicht, auf authentifizierte Images ohne Anmeldeinformationen zuzugreifen. Die IfNotPresent-Policy ermöglichte es einem Pod, ein bereits auf einem Knoten vorhandenes Image zu verwenden, selbst wenn er keine Anmeldeinformationen zum Abrufen des Images bereitstellte. Dies ist ein Sicherheitsproblem, da Pods ohne Anmeldeinformationen auf private Images zugreifen können. In Kubernetes v1.33 wurde die IfNotPresent-Policy aktualisiert, um sicherzustellen, dass Pods Anmeldeinformationen bereitstellen müssen, um ein zuvor abgerufenes privates Image zu verwenden. Der Kubelet überprüft die Anmeldeinformationen des Pods, bevor er ihm erlaubt, das Image zu verwenden. Die Option imagePullPolicy: Never ruft keine Images ab, erfordert aber Anmeldeinformationen, um ein bereits vorhandenes Image zu verwenden. Die Option imagePullPolicy: Always hat immer wie beabsichtigt funktioniert und erfordert eine Authentifizierung für jede Image-Anforderung. Das neue Feature verwendet persistente, dateibasierte Caches auf jedem Knoten, um die Anmeldeinformationen des Pods zu überprüfen. Das Feature basiert auf der Aufzeichnung der Absicht, ein Image abzurufen, der Extraktion von Anmeldeinformationen und der Erstellung eines Datensatzes erfolgreicher Abrufe. Das Feature ist in Kubernetes v1.33 verfügbar und kann durch Aktivieren des Feature Gate KubeletEnsureSecretPulledImages aktiviert werden.