Esecuzione di un upgrade in loco automatico di Windows Server 2008 R2


Se hai istanze di macchine virtuali (VM) che eseguono Windows Server 2008 R2, puoi utilizzare l'interfaccia a riga di comando gcloud per eseguirne automaticamente l'upgrade a Windows Server 2012 R2.

L'utilizzo di gcloud CLI per eseguire un upgrade in loco è un'alternativa all'esecuzione di un upgrade manuale. Automatizzando la procedura di upgrade, la CLI gcloud ti consente di ridurre il lavoro richiesto per ogni VM di cui devi eseguire l'upgrade.

Durante un upgrade in loco di una VM, gcloud CLI esegue questi passaggi:

  1. Arresta la VM.
  2. Crea uno snapshot di Persistent Disk standard come backup.
  3. Crea una copia del disco di avvio, conservando il disco di avvio originale come backup.
  4. Collega un disco di installazione contenente Contenuti multimediali di installazione per Windows 2012 R2.
  5. Avvia il programma di installazione di Windows (setup.exe) dal disco di installazione per eseguire un upgrade in in modalità automatica.
  6. Si applica la configurazione post-upgrade.
  7. Scollega il disco di installazione.
  8. Arresta la VM.

Limitazioni

Puoi utilizzare gcloud CLI per eseguire upgrade da Windows Server 2008 R2 a Windows Server 2012 R2. Questo approccio supporta solo le istanze VM si basano su un'immagine del sistema operativo pubblica forniti da Google. Per eseguire l'upgrade di altre configurazioni di Windows Server, oppure per eseguire l'upgrade delle istanze VM per cui offri la tua licenza, consulta l'articolo Esecuzione di un upgrade in loco di Windows Server.

Costi

Non è previsto alcun costo per l'esecuzione di un upgrade in loco di Windows Server. Ti viene addebitato solo il costo delle risorse consumate durante l'upgrade, tra cui:

Utilizza il Calcolatore prezzi per generare una stima dei costi in base all'utilizzo previsto.

Prima di iniziare

Avvio dell'upgrade

Le sezioni seguenti illustrano la procedura di upgrade dell'istanza VM.

  1. Nella console Google Cloud, apri Cloud Shell facendo clic sul pulsante Attiva Cloud Shell Attiva Cloud Shell..

    Vai alla console Google Cloud

  2. Imposta l'ID progetto predefinito. Sostituisci PROJECT_ID con il nome del tuo progetto Compute Engine:

    gcloud config set project PROJECT_ID
    
  3. Esegui questo comando per avviare l'upgrade:

    gcloud beta compute os-config os-upgrade VM_NAME \
      --zone=ZONE \
      --source-os=windows-2008r2 \
      --target-os=windows-2012r2 \
      --async \
      --auto-rollback
    

    Sostituisci quanto segue:

    • VM_NAME: il nome dell'istanza VM di cui eseguire l'upgrade
    • ZONE: la zona in cui è in esecuzione l'istanza VM

    Il flag --async indica a gcloud CLI di eseguire l'upgrade nel in background utilizzando Cloud Build. L'esecuzione in background ti consente di eseguire l'upgrade di più istanze VM in parallelo e garantisce che il processo continui anche se chiudi della sessione di Cloud Shell. Puoi trovare un link al job Cloud Build nell'output del comando:

    Created [https://cloudbuild.googleapis.com/v1/projects/...].
    ...
    logUrl: https://console.cloud.google.com/build/builds/...
    ...
    status: QUEUED
    ...
    
    

Osservazione del processo di upgrade

A seconda della configurazione dell'istanza VM, l'upgrade potrebbe richiedere tra 40 e 90 minuti. Puoi controllare lo stato della procedura di upgrade aprendo il log di Cloud Build:

  1. Fai clic sull'URL mostrato accanto a logUrl nell'output del comando della CLI gcloud.
  2. In Log di build puoi visualizzare lo stato attuale del processo di upgrade.

Al termine dell'upgrade, la build viene contrassegnata come Riuscito e puoi vedere il seguente output nel log di build:

Successfully upgraded instance 'projects/...!'

Se gcloud CLI rileva un problema durante l'upgrade, contrassegna la build come Non riuscita. Se viene specificata l'opzione --auto-rollback, l'interfaccia a riga di comando gcloud avvia anche un rollback automatico. Puoi trovare ulteriori dettagli sul problema riscontrato nel log di compilazione.

Se l'upgrade è ancora in esecuzione dopo 90 minuti e sospetti che non stia procedendo, utilizza uno degli approcci descritti in Risoluzione dei problemi relativi all'upgrade in situ per scoprire se la procedura di upgrade non è riuscita o è in stallo.

Completamento dell'upgrade

Al termine dell'upgrade, avvia l'istanza VM ed esegui Windows Update per scaricare e installare gli ultimi aggiornamenti della sicurezza:

  1. Avvia l'istanza VM:

    gcloud compute instances start VM_NAME --zone=ZONE
    

    Sostituisci quanto segue:

    • VM_NAME: il nome dell'istanza VM
    • ZONE: la zona in cui è in esecuzione l'istanza VM
  2. Connettiti alla macchina utilizzando un client RDP. Per ulteriori informazioni, consulta Connessione alle istanze.

  3. Utilizza Windows Update per installare gli ultimi aggiornamenti di Windows. Durante questo processo potresti dover riavviare l'istanza VM più volte.

  4. Verifica che tutte le applicazioni funzionino come previsto.

Rollback di un upgrade in corso...

Se l'upgrade non va a buon fine, gcloud CLI avvia automaticamente eseguire il rollback. Se l'upgrade va a buon fine, potresti comunque riscontrare che una delle tue applicazioni non funziona come previsto. In questo caso, esegui il rollback dell'upgrade modificare l'istanza VM in modo che utilizzi di nuovo il disco di avvio originale:

  1. Arresta l'istanza VM:

    gcloud compute instances stop VM_NAME --zone=ZONE
    

    Sostituisci quanto segue:

    • VM_NAME: il nome dell'istanza VM
    • ZONE: la zona in cui è in esecuzione l'istanza VM
  2. Nel log di build, individua le righe che indicano il nome dell'avvio originale. disco e il nome dell'allegato:

    4. Original boot disk: ORIGINAL_DISK_NAME
        - Device name of the attachment: DEVICE_NAME
    
  3. Scollega dall'istanza il disco contenente il sistema operativo che non funziona correttamente:

    gcloud compute instances detach-disk VM_NAME \
      --device-name=DEVICE_NAME \
      --zone=ZONE
    

    Sostituisci quanto segue:

    • VM_NAME: il nome dell'istanza VM
    • DEVICE_NAME: il nome del dispositivo indicato dal log di compilazione
    • ZONE: la zona in cui è in esecuzione l'istanza VM
  4. Ricollega il disco di avvio originale:

    gcloud compute instances attach-disk VM_NAME \
      --disk=ORIGINAL_DISK_NAME \
      --device-name=DEVICE_NAME \
      --zone=ZONE
    

    Sostituisci quanto segue:

    • VM_NAME: il nome dell'istanza VM
    • ORIGINAL_DISK_NAME: il nome del disco di avvio originale indicato dal log di compilazione
    • DEVICE_NAME: il nome del dispositivo indicato dal log di compilazione
    • ZONE: la zona in cui è in esecuzione l'istanza VM
  5. Avvia l'istanza VM:

    gcloud compute instances start VM_NAME --zone=ZONE
    

    Sostituisci quanto segue:

    • VM_NAME: il nome dell'istanza VM
    • ZONE: la zona in cui è in esecuzione l'istanza VM

Esegui la pulizia

Per evitare addebiti aggiuntivi, rimuovi i backup gcloud CLI creato automaticamente prima dell'upgrade:

  1. Nel log di compilazione, individua la riga che indica il nome dello snapshot del disco e del disco di avvio originale:

    3. Snapshot for original boot disk: SNAPSHOT_NAME
    4. Original boot disk: DISK_NAME
       - Device name of the attachment: ...
       - AutoDelete setting of the attachment: true
    5. Name of the new boot disk: ...
    
  2. Torna a Cloud Shell ed elimina lo snapshot del disco:

    gcloud compute snapshots delete SNAPSHOT_NAME
    
  3. Elimina il disco di avvio originale, sostituendo ZONE con la zona in cui è dipiattaforma la VM:

    gcloud compute disks delete DISK_NAME --zone=ZONE
    

Passaggi successivi