Eseguire l'upgrade da Ubuntu a Ubuntu Pro


Quando un'immagine Ubuntu LTS raggiunge la fine del ciclo di vita, non è più supportata e non riceverà aggiornamenti della sicurezza. Se esegui l'upgrade a Ubuntu Pro, continui a ricevere gli aggiornamenti della sicurezza durante il servizio Extended Security Maintenance (ESM).

Questo documento mostra come eseguire l'upgrade da Ubuntu a Ubuntu Pro svolgendo quanto segue per ogni VM:

  1. Installazione di aggiornamenti e dipendenze
  2. Aggiunta della licenza Ubuntu Pro
  3. Convalida della licenza

Percorsi di upgrade supportati

La tabella seguente mostra i percorsi di upgrade supportati:

Versione iniziale Versione finale
Ubuntu 16.04 LTS Ubuntu Pro 16.04 LTS
Ubuntu 18.04 LTS Ubuntu Pro 18.04 LTS
Ubuntu 20.04 LTS Ubuntu Pro 20.04 LTS

Limitazioni

  • Devi arrestare una VM prima di aggiungere una licenza.

  • Puoi eseguire l'upgrade da Ubuntu LTS a Ubuntu Pro LTS solo se si tratta della stessa versione. Ad esempio, puoi eseguire l'upgrade da Ubuntu 16.04 LTS a Ubuntu Pro 16.04 LTS, ma non puoi eseguire l'upgrade da Ubuntu 16.04 LTS a Ubuntu Pro 20.04 LTS.

Fatturazione

La fatturazione di Ubuntu Pro LTS viene effettuata in base ai prezzi delle immagini premium.

Per ulteriori informazioni sulla fatturazione, consulta Fatturazione Cloud.

Prima di iniziare

  • Esegui i seguenti comandi su ogni VM, sostituendo VM_NAME con il nome della VM di cui vuoi eseguire l'upgrade:

    1. Aggiorna l'indice dei pacchetti utilizzando il seguente comando:
      gcloud compute ssh VM_NAME --command "sudo apt update"
    2. Installa la versione più recente dei pacchetti utilizzando il seguente comando:
      gcloud compute ssh VM_NAME --command "sudo apt -f upgrade"
    3. Installa Ubuntu Pro utilizzando il seguente comando:
      gcloud compute ssh VM_NAME --command "sudo apt -f install ubuntu-advantage-pro"
  • Se non l'hai ancora fatto, configura l'autenticazione. L'autenticazione è la procedura mediante la quale la tua identità viene verificata per l'accesso alle API e ai servizi Google Cloud. Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi autenticarti su Compute Engine selezionando una delle seguenti opzioni:

    Select the tab for how you plan to use the samples on this page:

    Console

    When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

    gcloud

    1. Install the Google Cloud CLI, then initialize it by running the following command:

      gcloud init
    2. Set a default region and zone.

Aggiungere la licenza

Aggiungi la licenza Ubuntu Pro seguendo la procedura riportata di seguito:

  1. Interrompi la VM utilizzando il comando gcloud compute instances stop:

    gcloud compute instances stop VM_NAME \
       --zone=ZONE
    

    Sostituisci quanto segue:

    • VM_NAME: il nome della VM da arrestare
    • ZONE: la zona contenente la VM da arrestare
  2. Per ottenere l'elenco dei dischi associati alla VM, utilizza il comando gcloud compute instances describe:

    gcloud compute instances describe VM_NAME \
       --zone=ZONE \
       --format="yaml(disks)"
    

    Sostituisci quanto segue:

    • VM_NAME: il nome della VM da cui recuperare l'elenco dei dischi associati

    • ZONE: la zona contenente la VM da cui recuperare l'elenco di dischi associati

  3. Verifica che l'output sia simile al seguente:

    disks:
    - autoDelete: true
      boot: true
      deviceName: ubuntu
      diskSizeGb: '10'
      guestOsFeatures:
      - type: VIRTIO_SCSI_MULTIQUEUE
      - type: SEV_CAPABLE
      - type: UEFI_COMPATIBLE
      - type: GVNIC
      index: 0
      interface: SCSI
      kind: compute#attachedDisk
      licenses:
      - https://www.googleapis.com/compute/v1/projects/ubuntu-os-cloud/global/licenses/ubuntu-1604-xenial
      mode: READ_WRITE
      shieldedInstanceInitialState:
        dbxs:
        - content: ...
          fileType: BIN
      source: https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONE/disks/VM_NAME
      type: PERSISTENT
    

    Tieni presente che non è stato aggiunto alcun userLicenses.

  4. Recupera il nome del disco di avvio eseguendo il comando gcloud compute disks list:

    gcloud compute disks list
    
  5. Aggiorna il disco di avvio con l'URI della licenza Ubuntu Pro utilizzando il gcloud beta compute disks update comando:

    gcloud beta compute disks update BOOT_DISK_NAME \
       --zone=ZONE \
       --update-user-licenses="LICENSE_URI"
    

    Sostituisci quanto segue:

    • BOOT_DISK_NAME: il nome del disco di avvio a cui aggiungere la licenza.

    • ZONE: la zona contenente il disco di avvio a cui aggiungere la licenza.

    • LICENSE_URI: l'URI della licenza per la versione di Ubuntu Pro a cui esegui l'upgrade. La tabella seguente mostra l'URI della licenza per le versioni supportate di Ubuntu Pro:

      Versione Ubuntu Pro URI licenza
      Ubuntu Pro 16.04 LTS https://www.googleapis.com/compute/v1/projects/ubuntu-os-pro-cloud/global/licenses/ubuntu-pro-1604-lts
      Ubuntu Pro 18.04 LTS https://www.googleapis.com/compute/v1/projects/ubuntu-os-pro-cloud/global/licenses/ubuntu-pro-1804-lts
      Ubuntu Pro 20.04 LTS https://www.googleapis.com/compute/v1/projects/ubuntu-os-pro-cloud/global/licenses/ubuntu-pro-2004-lts

Convalida la licenza

Convalida la licenza Ubuntu Pro utilizzando la seguente procedura:

  1. Per informazioni sul disco di avvio, esegui il comando gcloud beta compute disks describe:

    gcloud beta compute disks describe BOOT_DISK_NAME \
       --zone=ZONE
    

    Sostituisci quanto segue:

    • BOOT_DISK_NAME: il nome del disco di avvio di cui verificare la licenza

    • ZONE: la zona contenente il disco di avvio per verificare la licenza

  2. Verifica che l'output sia simile al seguente:

    creationTimestamp: '2021-10-20T17:20:26.616-07:00'
    guestOsFeatures:
    - type: VIRTIO_SCSI_MULTIQUEUE
    - type: SEV_CAPABLE
    - type: UEFI_COMPATIBLE
    - type: GVNIC
    id: '7008232787326864549'
    kind: compute#disk
    labelFingerprint: 42WmSpB8rSM=
    lastAttachTimestamp: '2021-10-20T17:20:26.617-07:00'
    licenseCodes:
    - '1000201'
    - '8045211386737108299'
    licenses:
    - https://www.googleapis.com/compute/v1/projects/ubuntu-os-cloud/global/licenses/ubuntu-1604-xenial
    name: ubuntu
    physicalBlockSizeBytes: '4096'
    selfLink: https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONE/disks/DISK_NAME
    sizeGb: '10'
    sourceImage: https://www.googleapis.com/compute/v1/projects/IMAGE_PROJECT/global/images/IMAGE
    sourceImageId: '1233998915439563944'
    status: READY
    type: https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONE/diskTypes/DISK_TYPE
    userLicenses:
    - https://www.googleapis.com/compute/v1/projects/ubuntu-os-pro-cloud/global/licenses/ubuntu-pro-1604-lts
    users:
    - https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONE/instances/VM_NAME
    zone: https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONE
    
  3. Verifica che la licenza Ubuntu Pro sia aggiunta al disco di avvio controllando la stringa della licenza appropriata nel campo userLicenses dell'output del passaggio precedente.

    Se il campo userLicenses non contiene la stringa della licenza prevista, potrebbe essere necessario cancellare e aggiornare le licenze utente. Per ulteriori informazioni, consulta il comando gcloud beta compute disks update.

  4. Avvia la VM utilizzando il comando gcloud compute instances start:

    gcloud compute instances start VM_NAME \
       --zone=ZONE \
       [--csek-key-file ENCRYPTION_KEY]
    

    Sostituisci quanto segue:

    • VM_NAME: il nome della VM da avviare

    • ZONE: la zona contenente la VM da avviare

    • ENCRYPTION_KEY: un flag facoltativo che specifica il percorso del file della chiave di crittografia fornita dal cliente (CSEK) se il disco di avvio è criptato

  5. Dopo l'avvio della VM, esegui il gcloud compute ssh comando per verificare che Ubuntu ESM sia in possesso del diritto e sia abilitato:

    gcloud compute ssh VM_NAME --command "sudo ua status --wait" \
       --zone=ZONE
    

    Sostituisci quanto segue:

    • VM_NAME: il nome della VM da verificare

    • ZONE: la zona contenente la VM da verificare

  6. Verifica che Ubuntu ESM sia autorizzato e abilitato verificando che l'output sia simile al seguente:

    SERVICE       ENTITLED  STATUS    DESCRIPTION
    cis           yes       disabled  Center for Internet Security Audit Tools
    esm-apps      yes       enabled   UA Apps: Extended Security Maintenance (ESM)
    esm-infra     yes       enabled   UA Infra: Extended Security Maintenance (ESM)
    fips          yes       n/a       NIST-certified core packages
    fips-updates  yes       n/a       NIST-certified core packages with priority security updates
    livepatch     yes       n/a       Canonical Livepatch service
    

Visualizza audit log

Per visualizzare la cronologia degli aggiornamenti delle licenze, segui questa procedura:

  1. Nella console Google Cloud, vai alla pagina Attività.

    Vai ad Attività

  2. Nel riquadro Filtri in Categorie, per Tipi di attività, seleziona Configurazione.

  3. Nel riquadro Filtri in Categorie, per Tipo di risorsa, seleziona Disco.