Actualiza de Ubuntu a Ubuntu Pro


Cuando una imagen de Ubuntu LTS llega al final de su ciclo de vida, ya no recibe asistencia ni 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. Reemplaza la licencia de Ubuntu por la de Ubuntu Pro.
  3. Valida 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
LTS de Ubuntu 22.04 LTS de Ubuntu Pro 22.04
LTS de Ubuntu 24.04 Ubuntu Pro 24.04 LTS

Limitaciones

  • Antes de reemplazar 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 APIs 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. After installing the Google Cloud CLI, initialize it by running the following command:

        gcloud init

        If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

      2. Set a default region and zone.

Reemplaza la licencia

Reemplaza la licencia de Ubuntu por la licencia de Ubuntu Pro con el siguiente procedimiento:

  1. Detén la VM con 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 reemplazó ningún Licenses.

  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 con el comando gcloud compute disks update:

    gcloud compute disks update DISK_NAME \
       --zone=ZONE \
       --replace-licenses="PREVIOUS_LICENSE, NEW_LICENSE"
    

    Reemplaza lo siguiente:

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

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

    • PREVIOUS_LICENSE: Es el URI de la licencia de la versión de Ubuntu.

    • NEW_LICENSE: Es el nuevo URI de la licencia de Ubuntu Pro.

    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
LTS de Ubuntu Pro 22.04 https://www.googleapis.com/compute/v1/projects/ubuntu-os-pro-cloud/global/licenses/ubuntu-pro-2204-lts
Ubuntu Pro 24.04 LTS https://www.googleapis.com/compute/v1/projects/ubuntu-os-pro-cloud/global/licenses/ubuntu-pro-2404-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 compute disks describe:

    gcloud compute disks describe DISK_NAME \
       --zone=ZONE
    

    Reemplaza lo siguiente:

    • 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
    - https://www.googleapis.com/compute/v1/projects/ubuntu-os-pro-cloud/global/licenses/ubuntu-pro-1604-lts
    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
    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 verificando el resultado del paso anterior para el campo licenses en busca de la cadena de licencia adecuada.

    Si el campo licenses no contiene la cadena de licencia deseada, es posible que debas borrar y actualizar las licencias. Para obtener más información, consulta el comando gcloud 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 actividad

Ve el historial de actualizaciones de licencias para las VM de un proyecto mediante el siguiente procedimiento:

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

    Ir al Explorador de registros

  2. En la barra de herramientas, verifica que esté habilitada la opción Mostrar consulta.

  3. Copia la siguiente expresión en el editor de consultas:

    resource.type="gce_disk"
    logName="projects/PROJECT_NAME/logs/cloudaudit.googleapis.com%2Factivity"
    severity>=NOTICE
    protoPayload.request.@type="type.googleapis.com/compute.disks.update"
    protoPayload.request.licenses:*
    
  4. Reemplaza PROJECT_NAME por el nombre de tu proyecto.

  5. Haz clic en Ejecutar consulta.