Gestión de recursos con Schematics

Despliegue, modifique y elimine recursos de IBM Cloud® utilizando IBM Cloud Schematics para aplicar las plantillas de Terraform.

Despliegue de recursos

Despliegue su Terraform configs para aprovisionar o modificar sus recursos en la nube con Schematics.

Antes de empezar

Para desplegar sus recursos

  1. En el panel de control del espacio de trabajo, seleccione el espacio de trabajo para la plantilla de Terraform que desea aplicar.

    En Schematics GitHub, encontrará ejemplos de plantillas que puede utilizar para realizar pruebas. Por ejemplo, Easy multizone VPC.

  2. Seleccione el separador Valores.

  3. En la sección Detalles, haga clic en Pull latest para obtener la última versión de su plantilla Terraform desde el repositorio fuente GitHub vinculado. Si ha suministrado la plantilla Terraform cargando un archivo de archivado de cinta (.tar), debe utilizar el mandato ibmcloud schematics workspace upload para proporcionar una versión nueva de la plantilla.

  4. Opcional: revise las variables que ha establecido para el espacio de trabajo. Los valores de las variables se utilizan siempre que se haga referencia a la variable en la plantilla de Terraform.

  5. Pulse Generar plan para crear un plan de ejecución de Terraform. Después de hacer clic en este botón, se abre la página Trabajos del espacio de trabajo y Schematics ejecuta un terraform plan para comparar el estado de los recursos que ya aprovisionó en su cuenta IBM Cloud con los recursos que desea aprovisionar con su plantilla Terraform.

  6. Haga clic en Trabajos para revisar el registro de su plan de ejecución. El plan de ejecución incluye un resumen de los recursos de la nube que crea, modifica o elimina para lograr el estado que describiste en tu plantilla de Terraform. Si tiene errores de sintaxis en sus archivos de configuración de Terraform, puede revisar el mensaje de error en el archivo de registro.

  7. Revise los planes de servicio disponibles y la información sobre precios para cada uno de los recursos en la nube que Schematics está a punto de crear o cambiar. Algunos servicios se suministran con un límite por cuenta de IBM Cloud. Si está a punto de alcanzar el límite de servicio para su cuenta, no se suministrará el recurso hasta que aumente la cuota de servicio o elimine servicios existentes en primer lugar.

  8. Cuando esté preparado, aplique su plantilla de Terraform pulsando Aplicar plan. Esta acción equivale al mandato terraform apply. Después de hacer clic en el botón, IBM Cloud Schematics comienza a aprovisionar, modificar o eliminar sus recursos en la nube en función de las acciones identificadas en el plan de ejecución. Dependiendo del tipo y el número de recursos que desea suministrar o modificar, este proceso podría tardar un par de minutos o incluso horas en completarse. Durante este tiempo, no puede realizar cambios en el espacio de trabajo. Una vez aplicadas todas las actualizaciones, el estado de sus recursos en la nube se almacena en un archivo de estado de Terraform que IBM Cloud Schematics utiliza para determinar qué recursos existen en su cuenta de IBM Cloud.

    Si desea dejar de aplicar la plantilla de Terraform, puede utilizar el botón Detener. Tenga en cuenta que todos los recursos que ya se hayan creado no se eliminan. Si un recurso se está suministrando actualmente, Schematics espera a que finalice el suministro y luego detiene la creación, actualización o supresión de cualquier otro recurso en la plantilla de Terraform.

  9. Revise el registro de tareas para asegurarse de que no se ha producido ningún error durante el proceso de aprovisionamiento, modificación o eliminación.

  10. En la barra de navegación, seleccione Recursos para ver un resumen de los recursos en la nube disponibles en su cuenta IBM Cloud.

Actualización de los recursos

Para actualizar los recursos de Cloud, actualice su plantilla de Terraform con los cambios necesarios que deben realizarse en los recursos.

En función del cambio de configuración, es posible que Terraform no pueda actualizar el recurso en su lugar. En su lugar, Terraform debe suprimir primero el recurso y crear un nuevo recurso. Si Terraform identifica un recurso que se debe eliminar y volver a crear, asegúrese de que no interrumpa un entorno de trabajo o suprima datos.

Para actualizar los recursos:

  1. En el panel del espacio de trabajo, seleccione el espacio de trabajo que apunta a la plantilla de Terraform que ha actualizado.

  2. Seleccione el separador Valores.

  3. En la sección Detalles, haga clic en Pull latest para obtener la última versión de su plantilla Terraform desde el repositorio fuente GitHub vinculado. Si ha suministrado la plantilla Terraform cargando un archivo de archivado de cinta (.tar), debe utilizar el mandato ibmcloud schematics workspace upload para proporcionar una versión nueva de la plantilla.

  4. Si desea cambiar los valores de variable que ha establecido al crear el espacio de trabajo, cambie los valores de variable.

  5. Pulse Generar plan para crear un plan de ejecución de Terraform. Tenga en cuenta que, durante este tiempo, no puede realizar cambios en el espacio de trabajo.

  6. Pulse Trabajos para revisar el registro de la ejecución. El registro de tareas proporciona un resumen de todos los recursos que IBM Cloud Schematics está a punto de modificar. Es posible que IBM Cloud Schematics no pueda modificar algunos de sus recursos y le sugiera eliminarlos y volver a crearlos.

  7. Pulse Aplicar plan para aplicar la nueva versión de la plantilla de Terraform. Dependiendo de los cambios que haya realizado, la plantilla puede tardar un par de minutos o varias horas en aplicarse. Tenga en cuenta que, durante este tiempo, no puede realizar cambios en el espacio de trabajo.

    Si desea dejar de aplicar la plantilla de Terraform, puede utilizar el botón Detener. Tenga que cuenta que las actualizaciones en los recursos que ya se hayan realizado no se invierten. Si un recurso se está actualizando actualmente, Schematics espera a que finalice la actualización y luego detiene la creación, actualización o supresión de cualquier otro recurso en la plantilla de Terraform.

  8. Revise el registro de tareas para asegurarse de que no se han producido errores durante el proceso de modificación.

  9. En la navegación, seleccione Recursos y verifique que los recursos muestran la configuración actualizada.

Gestión de la desviación entre su entorno de nube y la configuración de Terraform

La gestión de las desviaciones entre el estado en el mundo real de su entorno de nube y su código de infraestructura, también denominado drift, es un reto clave al implementar infraestructura como código. Se pueden producir desviaciones por muchos motivos, como por ejemplo:

  • Se han añadido, actualizado o eliminado recursos en el archivo de configuración de Terraform sin ejecutar el código de infraestructura.
  • Se ha añadido, actualizado o eliminado manualmente IBM Cloud sin Terraform.
  • Ha utilizado otras herramientas de automatización, como scripts, para manipular el estado de sus recursos en la nube.

Consulte el uso de la característica detección de desviación del espacio de trabajo.

Revisión de los detalles de recurso y despliegue

Vea los detalles de las implementaciones de IBM Cloud Schematics y los recursos en la nube que gestiona actualmente con IBM Cloud Schematics.

  1. En el panel del espacio de trabajo, seleccione el espacio de trabajo que desea inspeccionar.
  2. En la navegación, seleccione Configuración para encontrar un resumen de las actividades de su espacio de trabajo.
  3. Revise los registros de los planes de ejecución de Terraform anteriores que haya aplicado.
  4. En la navegación, seleccione Recursos para revisar el estado de los recursos de Nube que creó con este espacio de trabajo.
  5. Para revisar quién ha realizado un cambio en la plantilla de Terraform, vaya al repositorio de origen en GitHub que está enlazado con el espacio de trabajo y utilice las funciones incorporadas como el historial de confirmación y las solicitudes de extracción para revisar los cambios.
  6. Para revisar los sucesos que Schematics ha enviado a IBM Cloud Activity Tracker Event Routing, consulte sucesos de IBM Cloud Activity Tracker Event Routing.

Eliminación de recursos

Para eliminar un recurso Cloud que aprovisionó con IBM Cloud Schematics, puede eliminar sus recursos con Schematics, eliminar su espacio de trabajo o eliminar el código de infraestructura en la plantilla Terraform.

La eliminación de un recurso Cloud no puede deshacerse. Asegúrese de haber realizado una copia de seguridad de los datos antes de eliminar un recurso. Si decide eliminar el código de infraestructura, o comentar el recurso en el archivo de configuración de Terraform, asegúrese de revisar a fondo el archivo de registro del plan de ejecución para verificar que todos los recursos están incluidos en la eliminación.

Para eliminar recursos eliminando la configuración de recursos en la plantilla de Terraform:

  1. Abra el archivo de configuración de Terraform en el repositorio de origen de GitHub o en la máquina local.

  2. Elimine el código de infraestructura del archivo o comente los recursos que desee eliminar añadiendo # al principio de cada línea.

    Ejemplo para eliminar un recurso comentando una definición de recurso:

    # resource ibm_is_instance "vsi1" {
    #  name    = "${local.BASENAME}-vsi2"
    #  vpc     = ibm_is_vpc.vpc.id
    #  zone    = "${local.ZONE}"
    #  keys    = [data.ibm_is_ssh_key.ssh_key_id.id]
    #  image   = data.ibm_is_image.ubuntu.id
    #  profile = "cc1-2x4"
    
    #  primary_network_interface {
    #    subnet          = ibm_is_subnet.subnet1.id
    #    security_groups = [ibm_is_security_group.sg1.id]
    #  }
    #}
    
  3. Confirme el cambio en el archivo de configuración de Terraform.

  4. En el panel de control del espacio de trabajo, seleccione el espacio de trabajo para la plantilla de Terraform que acaba de cambiar.

  5. En el menú de navegación, seleccione Valores.

  6. En la sección Detalles, haga clic en Pull latest para obtener la última versión de su plantilla Terraform desde el repositorio fuente GitHub vinculado. Si ha suministrado la plantilla Terraform cargando un archivo de archivado de cinta (.tar), debe utilizar el mandato ibmcloud schematics workspace upload para proporcionar una versión nueva de la plantilla.

  7. Pulse Generar plan para crear un plan de ejecución de Terraform. Se abre la página Trabajos del espacio de trabajo. Tenga en cuenta que, durante este tiempo, no puede realizar cambios en el espacio de trabajo.

  8. Haga clic en Trabajos para revisar el registro de su plan de ejecución. El registro proporciona un resumen de todos los recursos que IBM Cloud Schematics está a punto de eliminar.

  9. Haga clic en Aplicar plan para eliminar los recursos Cloud de su cuenta.

    Si desea dejar de aplicar la plantilla de Terraform, puede utilizar el botón Detener. Tenga en cuenta que todos los recursos que ya se hayan eliminado no se vuelven a crear. Si un recurso se está suprimiendo actualmente, Schematics espera a que finalice la supresión y luego detiene la creación, actualización o supresión de cualquier otro recurso en la plantilla de Terraform.

  10. Revise los archivos de registro para asegurarse de que no se haya producido ningún error durante el proceso de supresión.

  11. En la navegación, seleccione Recursos y verifique que los recursos se han eliminado.

  12. Opcional: tras eliminar todos los recursos, elimine el espacio de trabajo.

  13. Abra el panel de espacios de trabajo y busque el espacio de trabajo que desea eliminar.

  14. Pulse la pestaña Acciones y seleccione la opción Suprimir espacio de trabajo.

  15. Escriba el nombre de su espacio de trabajo en el cuadro de texto Escriba workspace_name para confirmar.

  16. Pulse el botón Suprimir.

Para eliminar recursos utilizando la consola de Schematics:

  1. En el panel de espacios de trabajo, busque el espacio de trabajo que incluye los recursos que desea eliminar.
  2. Haga clic en la pestaña Acciones y seleccione la opción Destruir recursos.
  3. Escriba el nombre de su espacio de trabajo en el cuadro de texto Escriba workspace_name para confirmar. Tenga en cuenta que la destrucción de recursos elimina los recursos del espacio de trabajo y IBM Cloud. Esta acción no se puede deshacer.
  4. Pulse el botón Destruir.
  5. En la navegación, seleccione Trabajos para revisar los registros de su eliminación de recursos. Asegúrese de que no se haya producido ningún error durante el proceso de supresión.
  6. Después de la ejecución exitosa del trabajo, desde la navegación, seleccione Recursos y verifique que sus recursos sean removidos.

Una vez completada la eliminación de los recursos, se puede suprimir el espacio de trabajo Schematics.

Despliegue de los recursos a través de la CLI

Despliegue su Terraform configs para aprovisionar o modificar sus recursos en la nube con Schematics.

Antes de empezar:

Para desplegar los recursos:

  1. Desde la interfaz de línea de mandatos local, configure la CLI y el plugin Schematics.

  2. Liste el espacio de trabajo utilizando el mandato ibmcloud schematics workspace list.

  3. Obtenga el espacio de trabajo utilizando el mandato ibmcloud schematics workspace get.

  4. Si ha proporcionado la plantilla de Terraform cargando un archivo de archivado de cinta (.tar), debe utilizar el mandato ibmcloud schematics workspace upload.

  5. Cree un plan de ejecución de Terraform utilizando el mandato ibmcloud schematics plan.

  6. Utilice el ID de espacio de trabajo para recuperar los registros utilizando el mandato ibmcloud schematics logs.

  7. Cuando esté preparado, ejecute el mandato ibmcloud schematics apply.

    Si desea dejar de aplicar la plantilla de Terraform, puede utilizar el mandato ibmcloud schematics job delete. Tenga en cuenta que todos los recursos que ya se hayan creado no se eliminan. Si un recurso se está suministrando actualmente, Schematics espera a que finalice el suministro y luego detiene la creación, actualización o supresión de cualquier otro recurso en la plantilla de Terraform.

  8. Revise el registro de tareas para asegurarse de que no se ha producido ningún error durante el proceso de aprovisionamiento, modificación o eliminación.

  9. En el panel de navegación, seleccione Recursos para encontrar un resumen de los recursos en la nube disponibles en su cuenta IBM Cloud.

Actualización de los recursos a través de la CLI

Para actualizar los recursos de Cloud, actualice su plantilla de Terraform con los cambios necesarios que deben realizarse en los recursos.

En función del cambio de configuración, es posible que Terraform no pueda actualizar el recurso en su lugar. En su lugar, Terraform debe suprimir primero el recurso y crear un nuevo recurso. Si Terraform identifica un recurso que se debe eliminar y volver a crear, asegúrese de que no interrumpa un entorno de trabajo o suprima datos.

Para actualizar los recursos:

  1. Desde la interfaz de línea de mandatos, configure la CLI y el plugin Schematics.

  2. Liste el espacio de trabajo utilizando el mandato ibmcloud schematics workspace list.

  3. Obtenga el espacio de trabajo utilizando el mandato ibmcloud schematics workspace get.

  4. Si ha proporcionado la plantilla de Terraform cargando un archivo de archivado de cinta (.tar), debe utilizar el mandato ibmcloud schematics workspace upload.

  5. Cree un plan de ejecución de Terraform utilizando el mandato ibmcloud schematics plan.

  6. Utilice el ID de espacio de trabajo para recuperar los registros utilizando el mandato ibmcloud schematics logs.

  7. Cuando esté preparado, ejecute el mandato ibmcloud schematics apply.

    Si desea dejar de aplicar la plantilla de Terraform, puede utilizar el mandato ibmcloud schematics job delete. Tenga en cuenta que todos los recursos que ya se hayan creado no se eliminan. Si un recurso se está suministrando actualmente, Schematics espera a que finalice el suministro y luego detiene la creación, actualización o supresión de cualquier otro recurso en la plantilla de Terraform.

  8. Revise el registro de tareas para asegurarse de que no se ha producido ningún error durante el proceso de aprovisionamiento, modificación o eliminación.

  9. En el panel de navegación, seleccione Recursos para encontrar un resumen de los recursos en la nube disponibles en su cuenta IBM Cloud.

Gestión de la desviación entre el entorno de nube y la configuración de Terraform a través de la CLI

La gestión de las desviaciones entre el estado en el mundo real de su entorno de nube y su código de infraestructura, también denominado drift, es un reto clave al implementar infraestructura como código. Se pueden producir desviaciones por muchos motivos, como por ejemplo:

  • Se han añadido, actualizado o eliminado recursos en el archivo de configuración de Terraform sin ejecutar el código de infraestructura.
  • Se ha añadido, actualizado o eliminado manualmente IBM Cloud sin Terraform.
  • Ha utilizado otras herramientas de automatización, como scripts, para manipular el estado de sus recursos en la nube.

Consulte el uso de la característica detección de desviación del espacio de trabajo.

Revisión de detalles de recursos y despliegue a través de la CLI

Vea los detalles de las implementaciones de IBM Cloud Schematics y los recursos en la nube que gestiona actualmente con IBM Cloud Schematics.

  1. Desde la interfaz de línea de mandatos, configure la CLI y el plugin Schematics.
  2. En el panel de navegación, seleccione Recursos para encontrar un resumen de los recursos en la nube disponibles en su cuenta IBM Cloud.
  3. Para revisar quién ha realizado un cambio en la plantilla de Terraform, vaya al repositorio de origen en GitHub que está enlazado con el espacio de trabajo y utilice las funciones incorporadas como el historial de confirmación y las solicitudes de extracción para revisar los cambios.
  4. Para revisar los sucesos que Schematics ha enviado a IBM Cloud Activity Tracker Event Routing, consulte sucesos de IBM Cloud Activity Tracker Event Routing.

Eliminación de los recursos mediante la CLI

Para eliminar un recurso Cloud que aprovisionó con IBM Cloud Schematics, puede eliminar sus recursos con Schematics, eliminar su espacio de trabajo o eliminar el código de infraestructura en la plantilla Terraform.

La eliminación de un recurso Cloud no puede deshacerse. Asegúrese de haber realizado una copia de seguridad de los datos antes de eliminar un recurso. Si decide eliminar el código de infraestructura, o comentar el recurso en el archivo de configuración de Terraform, asegúrese de revisar a fondo el archivo de registro del plan de ejecución para verificar que todos los recursos están incluidos en la eliminación.

Para eliminar sus recursos borrando el código de infraestructura de su plantilla Terraform:

  1. Abra el archivo de configuración de Terraform en el repositorio de origen de GitHub o en la máquina local.

  2. Elimine el código de infraestructura del archivo o comente los recursos que desee eliminar añadiendo # al principio de cada línea.

    Ejemplo de cómo comentar un recurso:

    
    #resource ibm_is_instance "vsi1" {
    #  name    = "${local.BASENAME}-vsi2"
    #  vpc     = ibm_is_vpc.vpc.id
    #  zone    = "${local.ZONE}"
    #  keys    = [data.ibm_is_ssh_key.ssh_key_id.id]
    #  image   = data.ibm_is_image.ubuntu.id
    #  profile = "cc1-2x4"
    
    #  primary_network_interface {
    #    subnet          = ibm_is_subnet.subnet1.id
    #    security_groups = [ibm_is_security_group.sg1.id]
    #  }
    #}
    
  3. Confirme el cambio en el archivo de configuración de Terraform.

  4. Desde la interfaz de línea de mandatos, configure la CLI y el plugin Schematics.

  5. Obtenga el espacio de trabajo utilizando el mandato ibmcloud schematics workspace get.

  6. Si ha proporcionado la plantilla de Terraform cargando un archivo de archivado de cinta (.tar), debe utilizar el mandato ibmcloud schematics workspace upload.

  7. Cree un plan de ejecución de Terraform utilizando el mandato ibmcloud schematics plan.

  8. Utilice el ID de espacio de trabajo para recuperar los registros utilizando el mandato ibmcloud schematics logs.

  9. Cuando esté preparado, ejecute el mandato ibmcloud schematics apply.

    Si desea dejar de aplicar la plantilla de Terraform, puede utilizar el mandato ibmcloud schematics job delete. Tenga en cuenta que todos los recursos que ya se hayan creado no se eliminan. Si un recurso se está suministrando actualmente, Schematics espera a que finalice el suministro y luego detiene la creación, actualización o supresión de cualquier otro recurso en la plantilla de Terraform.

  10. Revise el registro de tareas para asegurarse de que no se ha producido ningún error durante el proceso de aprovisionamiento, modificación o eliminación.

  11. En el panel de navegación, seleccione Recursos para encontrar un resumen de los recursos en la nube disponibles en su cuenta IBM Cloud.

  12. Opcional: Después de eliminar todos los recursos, elimine el espacio de trabajo utilizando el mandato ibmcloud schematics workspace delete.