Actualiza de Ubuntu a Ubuntu Pro


Cuando una imagen de Ubuntu LTS llega al final de su ciclo de vida, ya no es compatible y no recibe actualizaciones de seguridad. Si actualizas a Ubuntu Pro, seguirás recibiendo actualizaciones de seguridad durante el mantenimiento de seguridad extendido (ESM).

En este documento, se muestra cómo actualizar de Ubuntu a Ubuntu Pro mediante las siguientes acciones para cada VM:

  1. Instalar actualizaciones y dependencias
  2. Agregar la licencia de Ubuntu Pro
  3. Validar la licencia

Rutas de actualización compatibles

En la siguiente tabla, se muestran las rutas de actualización compatibles:

Versión inicial Versión final
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

Limitaciones

  • Antes de agregar una licencia, debes detener la VM.

  • Solo puedes actualizar de Ubuntu LTS a Ubuntu Pro LTS si tienen la misma versión. Por ejemplo, puedes actualizar de Ubuntu 16.04 LTS a Ubuntu Pro 16.04 LTS, pero no puedes actualizar de Ubuntu 16.04 LTS a Ubuntu Pro 20.04 LTS.

Facturación

Se te factura por Ubuntu Pro LTS según los precios de imágenes premium.

Para obtener más información sobre la facturación, consulta Facturación de Cloud.

Antes de comenzar

  • Ejecuta los siguientes comandos en cada VM y reemplaza VM_NAME por el nombre de la VM que quieres actualizar:

    1. Actualiza el índice del paquete con el siguiente comando:
      gcloud compute ssh VM_NAME --command "sudo apt update"
    2. Instala la versión más reciente de los paquetes con el siguiente comando:
      gcloud compute ssh VM_NAME --command "sudo apt -f upgrade"
    3. Instala Ubuntu Pro con el siguiente comando:
      gcloud compute ssh VM_NAME --command "sudo apt -f install ubuntu-advantage-pro"
  • Si aún no lo hiciste, configura la autenticación. La autenticación es el proceso mediante el cual se verifica tu identidad para acceder a los servicios y las API de Google Cloud. Para ejecutar código o muestras desde un entorno de desarrollo local, puedes autenticarte en Compute Engine seleccionando una de las siguientes opciones:

    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.

Agrega la licencia

Agrega la licencia de Ubuntu Pro mediante el siguiente procedimiento:

  1. Detén la VM mediante el comando gcloud compute instances stop:

    gcloud compute instances stop VM_NAME \
       --zone=ZONE
    

    Reemplaza lo siguiente:

    • VM_NAME: Es el nombre de la VM que se detendrá.
    • ZONE: Es la zona que contiene la VM que se detendrá.
  2. Obtén la lista de los discos asociados con la VM mediante el comando gcloud compute instances describe:

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

    Reemplaza lo siguiente:

    • VM_NAME: Es el nombre de la VM desde la que se obtiene la lista de discos asociados.

    • ZONE: Es la zona que contiene la VM desde la que se obtiene la lista de discos asociados.

  3. Verifica que el resultado sea similar a lo siguiente:

    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
    

    Ten en cuenta que no se agregó userLicenses.

  4. Obtén el nombre del disco de arranque mediante la ejecución del comando gcloud compute disks list:

    gcloud compute disks list
    
  5. Actualiza el disco de arranque con el URI de licencia de Ubuntu Pro mediante el comando gcloud beta compute disks update:

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

    Reemplaza lo siguiente:

    • BOOT_DISK_NAME: Es el nombre del disco de arranque al que se agregará la licencia.

    • ZONE: Es la zona que contiene el disco de arranque al que se agregará la licencia.

    • LICENSE_URI: Es el URI de la licencia de la versión de Ubuntu Pro a la que deseas actualizar. En la siguiente tabla, se muestra el URI de licencia de las versiones compatibles de Ubuntu Pro:

      Versión de Ubuntu Pro URI de la licencia
      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

Valida la licencia

Valida la licencia de Ubuntu Pro mediante el siguiente procedimiento:

  1. Para obtener información sobre el disco de arranque, ejecuta el comando gcloud beta compute disks describe:

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

    Reemplaza lo siguiente:

    • BOOT_DISK_NAME: Es el nombre del disco de arranque en el que se validará la licencia.

    • ZONE: Es la zona que contiene el disco de arranque para validar la licencia.

  2. Verifica un resultado similar al siguiente:

    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. Valida que la licencia de Ubuntu Pro se agregue al disco de arranque mediante la verificación del resultado del paso anterior para el campo userLicenses en busca de la string de licencia adecuada.

    Si el campo userLicenses no contiene la string de licencia deseada, es posible que debas borrar y actualizar las licencias de usuario. Para obtener más información, consulta el comando gcloud beta compute disks update.

  4. Inicia la VM con el comando gcloud compute instances start:

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

    Reemplaza lo siguiente:

    • VM_NAME: Es el nombre de la VM que se iniciará.

    • ZONE: Es la zona que contiene la VM que se iniciará.

    • ENCRYPTION_KEY: Es una marca opcional que especifica la ruta al archivo de clave de encriptación proporcionada por el cliente (CSEK) si el disco de arranque está encriptado.

  5. Después de que se inicie la VM, ejecuta el comando gcloud compute ssh para verificar que el ESM de Ubuntu tenga autorización y esté habilitado:

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

    Reemplaza lo siguiente:

    • VM_NAME: Es el nombre de la VM que se verificará.

    • ZONE: Es la zona que contiene la VM que se verificará.

  6. Comprueba que el ESM de Ubuntu esté autorizado y habilitado. Para ello, verifica que el resultado sea similar al siguiente:

    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
    

Ver registros de auditoría

Utiliza el siguiente procedimiento para ver el historial de actualizaciones de licencias:

  1. En la consola de Google Cloud, ve a la página Actividad.

    Ir a la Actividad

  2. En el panel Filtros, en Categorías, para Tipos de actividad, selecciona Configuración.

  3. En el panel Filtros, en Categorías, para Tipo de recurso, selecciona Disco.