Fine del servizio del canale semestrale di Windows Server


Questa pagina fornisce informazioni sulla fine del servizio per i tipi di immagini dei nodi SAC (Canale semestrale) di Windows Server nei cluster Standard di Google Kubernetes Engine (GKE). Per istruzioni sulla migrazione alle immagini dei nodi supportate, consulta Eseguire la migrazione alle immagini Windows supportate.

Informazioni sulla rimozione della SAC di Windows Server

Microsoft ritirerà il canale semestrale di Windows Server il 9 agosto 2022. Ciò coincide con la fine del servizio per Windows Server, versione 20H2. Windows Server utilizzerà il canale di servizio a lungo termine (LTSC) come canale di rilascio principale. Con questa modifica, Microsoft non rilascerà più aggiornamenti critici, inclusi aggiornamenti della sicurezza, per le immagini SAC di Windows Server. Di conseguenza, GKE non può più fornire assistenza per queste immagini.

GKE Standard non consentirà più di creare nuovi pool di nodi che utilizzano i tipi di immagini SAC di Windows Server. Se utilizzi uno dei seguenti tipi di immagine nei pool di nodi esistenti, devi eseguire la migrazione a un tipo di immagine supportato se vuoi eseguire l'upgrade della versione GKE.

  • windows_sac: SAC di Windows Server con Docker
  • windows_sac_containerd: SAC di Windows Server con containerd

I pool di nodi SAC esistenti di Windows Server continueranno a funzionare come previsto dopo il 9 agosto 2022. Tuttavia, rischi di esporre questi nodi a vulnerabilità di sicurezza e instabilità della piattaforma a causa della mancanza di aggiornamenti futuri per SAC.

Timeline e traguardi

Dopo il 9 agosto 2022, non potrai più:

  • Crea nuovi cluster che utilizzano immagini dei nodi SAC di Windows Server.
  • Crea nuovi pool di nodi che utilizzano immagini dei nodi SAC di Windows Server.
  • Abilita il provisioning automatico dei nodi con il flag --autoprovisioning-image-type impostato su windows_sac o windows_sac_containerd.
  • Esegui l'upgrade della versione GKE dei nodi SAC di Windows Server esistenti.

Cosa dovresti fare?

Ti consigliamo di eseguire la migrazione dei pool di nodi SAC di Windows Server al tipo di immagine dei nodi windows_ltsc_containerd. In GKE 1.23 e versioni successive, questo è l'unico tipo di immagine Windows Server supportato per i nuovi cluster e pool di nodi.

Il tipo di immagine windows_ltsc, che utilizza Docker come runtime del container, non è supportato in GKE 1.23 e versioni successive a causa del ritiro delle immagini dei nodi Docker.

A seconda della tua versione attuale di GKE, segui questi passaggi:

  • GKE versione 1.20 e precedente: esegui la migrazione dei pool di nodi all'immagine windows_ltsc.
  • GKE versione 1.21 e successive: esegui la migrazione dei pool di nodi all'immagine windows_ltsc_containerd.

Impatto della migrazione

Se attualmente utilizzi l'immagine windows_sac, che ha Docker come runtime del container, la migrazione al tipo di immagine windows_ltsc_containerd potrebbe influire su uno qualsiasi degli strumenti esistenti che dipendono dai comandi Docker. Per informazioni sul potenziale impatto della migrazione a un tipo di immagine che utilizza containerd, consulta l'elenco delle situazioni in Informazioni sul ritiro delle immagini dei nodi Docker.

Esegui la migrazione a LTSC di Windows Server

Il processo di migrazione prevede i seguenti passaggi:

  1. Identificare le immagini container per gli aggiornamenti dell'architettura
  2. Crea immagini container Windows multi-arch
  3. Aggiorna i pool di nodi esistenti a Windows Server LTSC

Identificare le immagini container per gli aggiornamenti dell'architettura

Le immagini container ad architettura singola in esecuzione su Windows Server SAC non sono compatibili con le immagini LTSC di Windows Server. Devi identificare le immagini container incompatibili e aggiornarne l'architettura. Se disponi di immagini multi-arco, devi controllarle per assicurarti che supportino la variante LTSC di Windows Server 2019, che ha il numero di versione 10.0.17763.X.

Immagini ad arco singolo

Per ispezionare la versione di Windows supportata, esegui il comando seguente da un nodo SAC di Windows Server su cui è in esecuzione il pod:

docker image inspect IMAGE_NAME

Sostituisci IMAGE_NAME con il nome dell'immagine container.

Se l'immagine supporta la variante SAC di Windows Server, l'output è simile al seguente:

[
  {
    ...
    "Architecture": "amd64",
    "Os": "windows",
    "OsVersion": "10.0.19042.1645" // 1645 can be any build number
  }
]

Se l'immagine supporta la variante LTSC di Windows Server, l'output è simile al seguente:

[
  {
    ...
    "Architecture": "amd64",
    "Os": "windows",
    "OsVersion": "10.0.17763.2686" // 2686 can be any build number
  }
]

Immagini ad arco

Se utilizzi già immagini container Windows multi-arch, esaminale per assicurarti che supportino la variante LTSC di Windows Server 2019, che ha il numero di versione 10.0.17763.X.

docker manifest inspect MANIFEST_NAME

Sostituisci MANIFEST_NAME con il nome del manifest Docker, ad esempio eu.gcr.io/gke-release-staging/internet-explorer:v2.

L'output è simile al seguente:

{
  {
    "mediaType": "application/vnd.docker.distribution.manifest.v2+json",
    "size": 1575,
    "digest": "...",
    "platform": {
        "architecture": "amd64",
        "os": "windows",
        "os.version": "10.0.17763.1935"

  }
}

Crea immagini container Windows multi-arch

Dopo aver identificato le immagini che richiedono aggiornamenti per supportare la variante LTSC di Windows Server 2019, ti consigliamo di creare immagini Windows Server multi-arch.

La creazione di immagini multi-archetto assicura che i container vengano eseguiti su qualsiasi versione di Windows offerta da GKE. Le immagini multi-arch semplificheranno l'esperienza di migrazione, poiché containerd rileva la versione di LTSC di Windows Server nei pool di nodi di cui è stata eseguita la migrazione e sceglie l'immagine appropriata dal file manifest.

Puoi creare queste immagini manualmente o utilizzando gke-windows-builder di Cloud Build. Consigliamo il builder di Cloud Build, che viene regolarmente aggiornato per supportare nuove immagini LTSC di Windows Server non appena diventano disponibili. Per le istruzioni manuali e Cloud Build per le immagini multi-arch, consulta Creazione di immagini multi-arch Windows Server.

Esegui l'upgrade dei nodi a LTSC di Windows Server

Dopo aver aggiornato le immagini container in modo che supportino la variante LTSC di Windows Server, esegui la migrazione dei pool di nodi all'immagine del nodo LTSC di Windows Server. Ti consigliamo vivamente di testare la migrazione in un cluster gestione temporanea o di test per assicurarti che i deployment funzionino come previsto prima di eseguire l'upgrade dell'ambiente di produzione. Per aggiornare l'immagine, esegui una delle seguenti operazioni:

  • Crea nuovi pool di nodi ed esegui la migrazione dei carichi di lavoro nei nuovi nodi
  • Esegui l'upgrade del tipo di immagine sui pool di nodi esistenti

Crea nuovi pool di nodi

  1. Crea un nuovo pool di nodi:

    gcloud container node-pools create NODE_POOL_NAME \
        --cluster=CLUSTER_NAME \
        --image-type=WINDOWS_LTSC_IMAGE
    

    Sostituisci quanto segue:

    • NODE_POOL_NAME: il nome del nuovo pool di nodi.
    • CLUSTER_NAME: il nome del tuo cluster GKE.
    • WINDOWS_LTSC_IMAGE: l'immagine LTSC di Windows Server da utilizzare, che può essere windows_ltsc_containerd o windows_ltsc.
  2. Aggiungi il seguente nodeSelector ai manifest del carico di lavoro:

    spec:
      ...
      nodeSelector:
        kubernetes.io/os: windows
        cloud.google.com/gke-os-distribution: windows_ltsc
    

    Puoi anche utilizzare questo nodeSelector con windows_sac come valore dell'etichetta per indicare a GKE di evitare la pianificazione di pod specifici sui nuovi nodi.

  3. Esegui il deployment dei manifest aggiornati:

    kubectl apply -f MANIFEST_NAME
    
  4. Scala il tuo vecchio pool di nodi fino a zero:

    gcloud container node-pools update OLD_POOL \
        --cluster=CLUSTER_NAME \
        --min-nodes=0 \
        --max-nodes=NODE_COUNT
    

    Sostituisci quanto segue:

    • OLD_POOL: il nome del pool di nodi SAC di Windows Server esistente.
    • NODE_COUNT: il numero massimo di nodi nel pool di nodi. Scala gradualmente questo numero fino a 0 ripetendo questo comando. In caso di problemi, ridimensiona questo valore.
  5. Una volta eseguita la migrazione completa, elimina il vecchio pool di nodi:

    gcloud container node-pools delete OLD_POOL \
        --cluster=CLUSTER_NAME
    

Aggiorna pool di nodi esistenti

  1. Cambia il tipo di immagine dei nodi sui pool di nodi SAC di Windows Server esistenti:

    gcloud container clusters upgrade CLUSTER_NAME \
        --region=COMPUTE_REGION \
        --node-pool=NODE_POOL \
        --image-type=WINDOWS_LTSC_IMAGE
    

    Sostituisci quanto segue:

    • CLUSTER_NAME: il nome del tuo cluster GKE.
    • COMPUTE_REGION: la regione Compute Engine del cluster. Per i cluster di zona, utilizza --zone=COMPUTE_ZONE.
    • NODE_POOL: il nome del pool di nodi SAC di Windows Server.
    • WINDOWS_LTSC_IMAGE: l'immagine LTSC di Windows Server da utilizzare, che può essere windows_ltsc_containerd o windows_ltsc.

Passaggi successivi