Creación de una arquitectura desplegable a partir de una oferta existente

Puede aprovechar un paquete de personalización IBM®para ampliar y personalizar una arquitectura desplegableAutomatización de nube para desplegar un patrón de arquitectura común que combina uno o varios recursos de nube diseñados para facilitar el despliegue, la escalabilidad y la modularidad.de IBM Cloud®. Cada arquitectura desplegable proporciona su propio paquete de personalización. Con el paquete, puede editar la arquitectura desplegable en el sistema local, utilizar sus propias interconexiones para probar y ampliar sus propios productos para que se ajusten a las necesidades de la empresa. Para personalizar una arquitectura, debe estar familiarizado con Terraform.

El paquete de personalización también incluye un directorio automation que incluye scripts de inicio para ayudarle a gestionar el ciclo de vida de la arquitectura desplegable personalizada desde la incorporación y la validación hasta su publicación en un catálogo privado en IBM Cloud. Actualmente, se incluyen dos métodos de interconexión en este directorio: acciones GitHub o una cadena de herramientas de IBM Cloud.

La guía siguiente proporciona una visión general del paquete de personalización y algunos ejemplos de personalización que puede realizar. No es todo incluido y usted puede hacer cualquier cambio que usted necesita. Después de modificar la arquitectura, puede añadirla a un catálogo privado y utilizar las herramientas de IBMpara comprobar si hay vulnerabilidades, garantizar la seguridad y la conformidad y compartir la arquitectura con la empresa. Para obtener una guía más detallada, consulte Utilización de arquitecturas desplegables de IBM Cloud para crear una arquitectura desplegable.

En función de los cambios, es posible que IBM Cloud no dé soporte a la arquitectura desplegable. Los componentes de la arquitectura que se proporcionan en el paquete están soportados por IBM Cloud, pero cualquier código modificado que se utilice para ampliar no lo está.

Antes de empezar

  1. Cree un repositorio para almacenar la arquitectura desplegable personalizada, por ejemplo, un repositorio GitHub. Para obtener más información, consulte Creación de un nuevo repositorio.
  2. Asegúrese de que tiene un editor de su elección para modificar la arquitectura desplegable, por ejemplo, Visual Studio Code. Para obtener más información, consulte Visual Studio Code.
  3. Asegúrese de que tiene herramientas de su elección para probar la arquitectura desplegable y asegurarse de que funciona. Por ejemplo, puede utilizar el tiempo de ejecución de Terraform, que proporciona la línea de mandatos de Terraform.

Búsqueda de una arquitectura desplegable

IBM Cloud proporciona varias arquitecturas desplegables que puede utilizar tal cual o puede personalizar. Para buscar una arquitectura, realice los pasos siguientes:

  1. En el catálogo deIBM Cloud, seleccione una arquitectura desplegable.
  2. Descargue el paquete de personalización seleccionando Revisar opciones de despliegue > Trabajar con código > Descargar paquete.

Personalización de la arquitectura desplegable

Cuando descarga el paquete, recibe un conjunto de archivos que están diseñados para ayudarle a empezar con la personalización.

ibm_catalog.json

El archivo ibm_catalog.json es un archivo JSON de manifiesto que se utiliza para importar automáticamente la información de versión en un catálogo privado. Con un archivo de manifiesto de catálogo, puede evitar especificar manualmente metadatos de versión a través de la consola. Para ver cómo configurar un archivo ibm_catalog.json y los valores que puede incluir, consulte Edición local del manifiesto de catálogo.

main.tf

El archivo main.tf es donde se almacena la información de configuración sobre cada arquitectura desplegable que desea utilizar. En función de la arquitectura desplegable, puede utilizar este archivo para especificar regiones específicas, claves de API y ubicaciones de código fuente. También puede utilizar este archivo para añadir otros módulos y actualizar los parámetros de Terraform de la arquitectura.

Ejemplo de main.tf con especificaciones

El ejemplo siguiente muestra la infraestructura segura en VPC para sectores regulados que utilizan una región específica, us-south:

module "landing-zone" {
  source           = "https://cm.globalcatalog.cloud.ibm.com/api/v1-beta/offering/source//examples/power-sap?archive=tgz&catalogID=7df1e4ca-d54c-4fd0-82ce-3d13247308cd&flavor=power&kind=terraform&name=slz-vpc-with-vsis&version=0.0.22"
  ibmcloud_api_key = var.ibmcloud_api_key
  ssh_public_key   = var.ssh_public_key
  region           = "us-south"
  prefix           = "slz"
}

outputs.tf

El archivo outputs.tf contiene valores de salida disponibles que puede incluir en la arquitectura desplegable. Los valores están comentados, pero puede incluir los valores eliminando el símbolo # del valor. Además, puede añadir más variables de salida al archivo. Para incluir determinados valores, realice los pasos siguientes.

  1. Abra el archivo outputs.tf.
  2. Elimine los # de cualquier valor de salida que desee incluir.

ejemplo de outputs.tf

El ejemplo siguiente incluye el valor vsi_names y excluye el valor transit_gateway_name:

output "vsi_names" {
  value       = var.vsi_names
  description = "A list of the vsis names provisioned within the VPCs"
}
#output "transit_gateway_name" {
#  value       = var.transit_gateway_name
#  description = "The name of the transit gateway"
#}

provider.tf

El archivo provider.tf contiene información necesaria sobre qué proveedor, clave de API y región deben utilizar los usuarios.

Esta información se extrae del archivo variables.tf. Si necesita realizar cambios, actualice el archivo variables.tf.

Ejemplo de un archivo provider.tf

El ejemplo siguiente lista IBM como proveedor:

provider "ibm" {
  ibmcloud_api_key = var.ibmcloud_api_key
  region           = var.region
}

README.md

El archivo léame contiene información de fondo y de uso sobre la arquitectura desplegable. Puede personalizar el archivo léame para ayudar a los miembros de la empresa a utilizar la arquitectura desplegable.

variables.tf

El archivo variables.tf incluye las variables necesarias para la arquitectura desplegable. Puede añadir las variables adicionales que necesite.

version.tf

El archivo version.tf almacena información sobre la versión de Terraform y la versión de proveedor necesaria para ejecutar la arquitectura desplegable. Si está ejecutando la arquitectura desplegable tal cual, no es necesario realizar ninguna actualización. Es posible que la configuración requiera que actualice este archivo. Si necesita especificar una versión de proveedor o Terraform determinada, realice los pasos siguientes:

  1. Abra el archivo versions.tf.
  2. Actualice required_version a la versión de Terrafrom que los usuarios necesitan utilizar.
  3. Actualice version a la versión de proveedor que los usuarios necesitan utilizar.

Prueba de la arquitectura desplegable

Antes de incorporar la arquitectura desplegable a un catálogo privado, pruebe la personalización y asegúrese de que la arquitectura se ejecuta según lo previsto. Para probar la arquitectura con la línea de mandatos de Terraform, realice los pasos siguientes:

  1. Después de personalizar la arquitectura, inicialice la CLI de Terraform. Para obtener más información, consulte Inicialización de directorios de trabajo.

    terraform init
    
  2. Suministre los recursos. Para obtener más información, consulte Infraestructura de suministro con Terraform.

    1. Ejecute terraform plan para generar un plan de ejecución de Terraform para obtener una vista previa de las acciones propuestas.

      terraform plan
      
    2. Ejecute terraform apply para crear los recursos definidos en el plan.

      terraform apply
      

Creación de un release

Si las pruebas se han realizado correctamente, puede prepararse para incorporar la arquitectura a un catálogo privado asegurándose de que los archivos estén en el repositorio y creando un release. Para obtener más información, consulte Creación de un release.

Aprovechar la automatización para compartir en un catálogo privado

El paquete de personalización tiene un directorio automation que incluye un par de opciones para interconexiones de inicio. Estas interconexiones se pueden utilizar para automatizar el ciclo de vida de los productos personalizados que comparte utilizando un catálogo privado en IBM Cloud. Esto incluye la gestión de la incorporación, validación y compartición de la versión de arquitectura desplegable en un catálogo privado. Los archivos README se incluyen para cada opción de interconexión que proporciona detalles sobre cómo aprovecharla. Para obtener más información sobre cada una de ellas, consulte Acciones deGitHub y Creación de una cadena de herramientas.

Utilización de la consola para incorporar a un catálogo privado

Si desea utilizar la consola para incorporar la arquitectura desplegable, consulte incorporación de la arquitectura desplegable personalizada a un catálogo privado para obtener instrucciones paso a paso.

Próximos pasos

Los scripts que se proporcionan en el paquete de personalización le ayudan a automatizar el proceso de incorporación a un catálogo privado para compartir el producto con otros usuarios. Sin embargo, si desea utilizar la consola o la CLI para incorporar la arquitectura desplegable, consulte incorporación de la arquitectura desplegable personalizada a un catálogo privado para obtener una guía paso a paso. Mediante el uso de catálogos privados, los miembros de la empresa deben utilizar arquitecturas aprobadas que pueden desplegar utilizando proyectos.