Actualización de una pila a una versión de Terraform posterior

Actualice una pila en Resource Manager a una versión posterior de Terraform.

Nota

Estas instrucciones no se aplican a las pilas del gestor de recursos creadas mediante Marketplace.

Estos pasos se completan en la línea de comandos y la consola.

Para obtener información sobre las versiones de Terraform soportadas por Resource Manager, consulte Versiones de Terraform soportadas.

Antes de empezar

Para actualizar correctamente la pila, debe tener lo siguiente:

Rutas de actualización

A continuación, se muestran las rutas de actualización admitidas por versión inicial.

Versión inicial de Terraform Ruta de actualización
0,12
  1. Actualice a 0.13.
  2. Actualice a 0.14.
  3. (Recomendado) Actualice a 0.15.
  4. (Recomendado) Actualice a 1.0.
  5. Actualice a la versión 1.1.
  6. Actualice a la versión 1.2.
0,13
  1. Actualice a 0.14.
  2. (Recomendado) Actualice a 0.15.
  3. (Recomendado) Actualice a 1.0.
  4. Actualice a la versión 1.1.
  5. Actualice a la versión 1.2.
0,14
  1. (Recomendado) Actualice a 0.15.
  2. (Recomendado) Actualice a 1.0.
  3. Actualice a la versión 1.1.
  4. Actualice a la versión 1.2.
0,15
  1. (Recomendado) Actualice a 1.0.
  2. Actualice a la versión 1.1.
  3. Actualice a la versión 1.2.
1,0
  1. Actualice a la versión 1.1.
  2. Actualice a la versión 1.2.
1.1 Actualice a la versión 1.2.

Tarea 1: Confirmar infraestructura actualizada

Esta tarea utiliza la consola. Para obtener instrucciones de la CLI y la API, consulte Getting a Stack's Details, Creating a Plan Job y Creating an Apply Job.

  1. Abra la página Detalles de pila de la pila que desea actualizar:

    1. Abra el menú de navegación y haga clic en Servicios para desarrolladores. En Resource Manager, haga clic en Pilas.
    2. En Ámbito de lista, seleccione el compartimento que contiene la pila.

    3. Haga clic en el nombre de la pila.

  2. Confirme que esta pila está utilizando la versión de Terraform esperada: en la página Detalles de pila, en Información de pila, revise la versión de Terraform.

  3. Compruebe si hay cambios pendientes en la infraestructura:

    1. Haga clic en Plan.

      Cuando finaliza la acción, se muestra la página Detalles del trabajo para el trabajo relacionado.

    2. En la página Detalles del trabajo, en el separador Logs, revise el log para la acción de plan completada.

      El contenido del log indica si la pila está actualizada o tiene cambios pendientes.

      Ejemplo de pila actualizada (sin cambios pendientes):

      No changes. Infrastructure is up-to-date.

  4. Si el contenido del log indica cambios pendientes, aplique los cambios pendientes:

    1. Haga clic en Detalles de pila para volver a la página Detalles de pila.

    2. Haga clic en Solicitar.

      Cuando finaliza la acción, se muestra la página Detalles del trabajo para el trabajo relacionado.

    3. Confirme que la acción de aplicación se ha realizado correctamente: en la página Detalles del trabajo, en el separador Logs, revise el log para la acción de aplicación finalizada.

Cuando la infraestructura de pila esté actualizada, puede continuar con la siguiente tarea para descargar los archivos de estado y configuración de Terraform.

Tarea 2: Descarga de la configuración y el estado

Nota

Si la configuración de Terraform de la pila se almacena en un sistema de control de código fuente, como GitLab, desproteja y descargue la configuración de Terraform desde allí.

Si la configuración de Terraform de la pila se almacena en un cubo, descargue la configuración de Terraform desde allí.

Esta tarea utiliza la línea de comandos y la consola. Para obtener instrucciones de la CLI y la API para descargar una configuración de Terraform y un estado de Terraform, consulte Obtención de la configuración de Terraform de una pila y Obtención del archivo de estado de una pila.

  1. En una computadora que pueda ejecutar herramientas de línea de comandos, cree una carpeta para almacenar la configuración y el estado de Terraform descargados.

    Nombre de carpeta de ejemplo: c:\StackUpgrade

  2. Abra la página Detalles de pila de la pila que desea actualizar:

    1. Abra el menú de navegación y haga clic en Servicios para desarrolladores. En Resource Manager, haga clic en Pilas.
    2. En Ámbito de lista, seleccione el compartimento que contiene la pila que desea actualizar.

    3. Haga clic en el nombre de la pila.

      Se muestra la página Detalles de pila.

  3. Descargue la configuración de Terraform: en el separador Información de pila, a la derecha de la configuración de Terraform, haga clic en Descargar.

  4. Descargue el archivo de estado de Terraform: vaya a Más acciones y seleccione Descargar estado de Terraform.

Cuando se descargan la configuración y el estado de Terraform, puede continuar con la siguiente tarea para actualizar la configuración de Terraform.

Tarea 3: Actualización de la configuración

Esta tarea proporciona pasos personalizados para actualizar una configuración de Terraform utilizada con el gestor de recursos.

  1. En la misma computadora que utilizó para almacenar los archivos de estado y configuración de Terraform descargados, descargue los archivos .zip necesarios para actualizar la configuración de Terraform:

  2. Extraiga el contenido de cada archivo .zip.

  3. Actualice la configuración del proveedor para agregar argumentos como user_ocid, fingerprint y private_key_path. Es posible que haya comentado estos argumentos anteriormente.

    Ejemplo de argumentos comentados:

    provider "oci" {
      tenancy_ocid = var.tenancy_ocid
      /*
      user_ocid = var.user_ocid
      fingerprint = var.fingerprint
      private_key_path = var.private_key_path
      */
      region = var.region
    }
  4. Para seguir ejemplos de código en el resto de este procedimiento, cambie el nombre del archivo extraído por terraform_<major-version>.

    Ejemplo: terraform_13

  5. Para que el comando (archivo extraído) sea accesible, almacénelo en un directorio que esté presente en el directorio PATH.

  6. Abra un símbolo del sistema.

  7. Cambie el directorio a la carpeta en la que ha almacenado la información de pila descargada.

    Ejemplo:

    cd c:\StackUpgrade
  8. Para inicializar Terraform, ejecute el siguiente comando:

    terraform_<major-version> init

    Ejemplo:

    terraform_13 init
  9. Para actualizar la sintaxis de la configuración de Terraform, ejecute el comando para la versión de Terraform de destino:

    Versión de Terraform de Destino Comando
    0,13
    terraform_13 13upgrade
    0,14
    terraform_14 14upgrade
    0.15 y posterior No es necesario realizar ninguna acción. Si las actualizaciones anteriores se aplicaron correctamente durante el proceso, no se necesitan cambios especiales para actualizar la configuración.

    La salida indica si la actualización se ha realizado correctamente.

    Si se realiza correctamente, vaya al paso 12.

    Si no se realiza correctamente, realice cambios manuales en los archivos de configuración de Terraform según se indique.

  10. Cree un archivo .zip de los archivos de configuración de Terraform.

    Ejemplo de archivo .zip: c:\StackUpgrade\MyConfigUpgraded.zip

    Asegúrese de que el archivo omite el archivo de estado de Terraform (terraform.tfstate) y el directorio .terraform para satisfacer la estructura de archivos necesaria para las configuraciones de Terraform.

  11. Si se utiliza un sistema de control de código fuente (como GitHub) para la configuración de Terraform de la pila, confirme la configuración de Terraform actualizada allí.

    La confirmación más reciente se utiliza al ejecutar trabajos en la pila.

  12. Si se utiliza un cubo de Object Storage para la configuración de Terraform de la pila, cambie el contenido de ese cubo para que se corresponda con la configuración de Terraform actualizada.

    Nota

    Realice una copia de seguridad del cubo actual antes de cambiarlo para que se corresponda con la configuración de Terraform actualizada.

    El contenido más reciente del cubo se utiliza al ejecutar trabajos en la pila.

Cuando la configuración de Terraform se haya actualizado correctamente a la versión de Terraform de destino, puede continuar con la siguiente tarea para actualizar la pila.

Tarea 4: Actualización de la pila

Esta tarea utiliza la consola. Para obtener instrucciones de la CLI y la API para actualizar una pila, consulte Updating a Stack.

  1. Vuelva a abrir la página Detalles de pila de la pila que está actualizando:

    1. Abra el menú de navegación y haga clic en Servicios para desarrolladores. En Resource Manager, haga clic en Pilas.
    2. En Ámbito de lista, seleccione el compartimento que contiene la pila que está actualizando.

    3. Haga clic en el nombre de la pila.

  2. Abra el cuadro de diálogo Editar pila: en la página Detalles de pila de la pila, haga clic en Editar.

  3. Cargue la configuración de Terraform actualizada en la pila: arrastre y suelte el archivo .zip en el control del cuadro de diálogo o haga clic en Examinar y navegue hasta la ubicación del archivo .zip.

    Ruta de archivo de ejemplo: c:\StackUpgrade\MyConfigUpgraded.zip

    El cuadro de diálogo se rellena con la información incluida en la configuración de Terraform.

    Nota

    Omita este paso de carga si la configuración de Terraform de la pila se almacena en un sistema de control de código fuente (como GitHub) o en un cubo de Object Storage, la pila se configuró para utilizar la configuración de Terraform actualizada en la Tarea 3: Actualización de la configuración al confirmar el cambio en el código de origen o cargar el archivo en el cubo).
  4. Especifique la versión de Terraform de destino: cambie la versión de Terraform.

  5. Haga clic en Siguiente dos veces y, a continuación, en Guardar cambios.

La pila ahora está sincronizada con la configuración de Terraform actualizada y la versión de Terraform especificada. Ahora puede continuar con la siguiente tarea para importar el archivo de estado.

Tarea 5: Importación del estado

Esta tarea utiliza la consola. Para obtener instrucciones de la CLI y la API, consulte Creación de un trabajo de importación.

  1. Vuelva a abrir la página Detalles de pila de la pila que está actualizando:

    1. Abra el menú de navegación y haga clic en Servicios para desarrolladores. En Resource Manager, haga clic en Pilas.
    2. En Ámbito de lista, seleccione el compartimento que contiene la pila que está actualizando.

    3. Haga clic en el nombre de la pila.

  2. Vaya a Más acciones y seleccione Importar estado.

  3. En el panel Importar, agregue el archivo de estado de Terraform descargado (ruta de acceso de archivo de ejemplo: c:\StackUpgrade\terraform.tfstate): arrastre y suelte el archivo en el control del cuadro de diálogo, o haga clic en Examinar y navegue hasta la ubicación del archivo.

  4. Haga clic en Importar.

    Se crea la tarea de importación. El nuevo trabajo se muestra en Trabajos.

    Cuando termine el trabajo, se abrirá la página Detalles del trabajo.

  5. Confirme la importación correcta: en la sección Logs de Recursos, revise los logs.

Después de una importación correcta del archivo de estado, continúe con la siguiente tarea para comprobar los problemas.

Tarea 6: Comprobar incidencias

Esta tarea utiliza la consola. Para obtener instrucciones de la CLI y la API, consulte Creación de un trabajo de plan, Obtención de logs para un trabajo, Obtención de contenido de logs para un trabajo y Actualización de una pila.

  1. En la página Detalles de pila de la pila recién actualizada, compruebe si hay problemas con el archivo de estado o la configuración de Terraform ejecutando la acción de plan:

    1. Haga clic en Plan.

      Cuando finaliza la acción, se muestra la página Detalles del trabajo para el trabajo relacionado.

    2. En la página Detalles del trabajo, en el separador Logs, revise el log para la acción de plan completada.

      El contenido del log puede mostrar problemas, como la sintaxis HCL1 antigua y anticuada.

  2. Resuelva los problemas enumerados:

    1. En la computadora, acceda a la configuración de Terraform y actualícela manualmente.

    2. Cargue la configuración de Terraform recién actualizada en la pila:

      1. En la página Detalles de pila, haga clic en Editar pila.

      2. Arrastre y suelte la configuración de Terraform en el control del cuadro de diálogo o haga clic en Explorar y navegue hasta la ubicación del archivo.

        El cuadro de diálogo se rellena con la información incluida en la configuración de Terraform.

      3. Haga clic en Siguiente dos veces y, a continuación, en Guardar cambios.

  3. Vuelva a ejecutar la acción del plan para confirmar que los problemas ya no se muestran en el contenido del log asociado.