Esistono diverse release di Kubernetes che hanno API deprecate e rimosse. Se esegui l'upgrade di un cluster GKE su Bare Metal a una nuova versione di Kubernetes e i tuoi carichi di lavoro utilizzano API che sono state rimosse, i tuoi carichi di lavoro potrebbero essere interrotti. Segui i passaggi in questo documento per determinare se i tuoi carichi di lavoro utilizzano le API rimosse per una determinata versione di Kubernetes prima di eseguire l'upgrade del cluster.
Per un elenco delle API rimosse da Kubernetes, consulta la guida alla migrazione delle API deprecate nella documentazione di Kubernetes.
Determina se l'eliminazione dell'API ti riguarda
I passaggi seguenti richiedono che nei cluster GKE su Bare Metal sia abilitato l'audit logging del cluster e che gli audit log siano trasmessi all'Osservabilità di Google Cloud, che è il comportamento predefinito.
Per determinare se gli account di servizio Kubernetes che utilizzi effettuano chiamate alle API eliminate, esegui la query fornita in Esplora log:
Nella console Google Cloud, vai alla pagina Esplora log nel menu Logging.
Nel campo Query, inserisci la seguente query:
resource.labels.cluster_name = "CLUSTER_NAME" AND logName = "projects/PROJECT_ID/logs/externalaudit.googleapis.com%2Factivity" AND protoPayload.authenticationInfo.principalEmail:("system:serviceaccount" OR "@") AND protoPayload.authenticationInfo.principalEmail!~("system:serviceaccount:kube-system:") AND protoPayload.authenticationInfo.principalEmail!~("system:serviceaccount:cert-manager:") AND protoPayload.authenticationInfo.principalEmail!~("system:serviceaccount:capi-kubeadm-bootstrap-system:") AND protoPayload.authenticationInfo.principalEmail!~("system:serviceaccount:capi-kubeadm-bootstrap-system-webhook:") AND protoPayload.authenticationInfo.principalEmail!~("system:serviceaccount:capi-system:") AND protoPayload.authenticationInfo.principalEmail!~("system:serviceaccount:capi-system-webhook:") AND labels."k8s.io/removed-release"="KUBERNETES_MINOR_VERSION"
Sostituisci quanto segue:
CLUSTER_NAME
: il nome del cluster che contiene i carichi di lavoro che stai controllando.PROJECT_ID
: l'ID del progetto Google Cloud utilizzato dal cluster per i log e le metriche (clusterOperations.projectID
).KUBERNETES_MINOR_VERSION
: la versione secondaria di Kubernetes, ad esempio 1.25, che ha rimosso le API.
L'output di questa query mostra se uno dei tuoi account di servizio Kubernetes effettua chiamate all'API che sono state rimosse per la release secondaria di Kubernetes specificata.