Integración continua y entrega para el desarrollo y despliegue de aplicaciones
Con IBM Cloud y otras herramientas de código abierto, puede configurar la integración y entrega continua (CI/CD), el control de versiones, las cadenas de herramientas y más para ayudar a automatizar el desarrollo y el despliegue de apps.
La integración continua (CI) le puede ayudar a detectar errores pronto, a garantizar la integración del sistema temprana y a mejorar la colaboración en el proceso de desarrollo. La entrega continua (CD) es una práctica por la cual el software se crea y se despliega de modo que se puede utilizar en producción en cualquier momento. Al automatizar los procesos de integración y entrega continua mediante la configuración de conductos de CI/CD, puede lograr la repetibilidad en los releases de código y una mayor previsibilidad en las planificaciones de entrega.
Adopte un enfoque de DevOps mediante IBM® Continuous Delivery Pipeline for IBM Cloud®, que incluye las cadenas de herramientas abiertas que automatizan la creación y el despliegue de apps en contenedores.
Antes de empezar
Antes de comenzar, asegúrese de que tiene al menos los siguientes permisos en IAM de IBM Cloud.
- Rol de acceso a la plataforma de Editor y rol de acceso al servicio de Escritor en el clúster del Servicio de Kubernetes. Para obtener más información, consulte Permisos de acceso de usuario.
- Rol de acceso a la plataforma de Visor para el grupo de recursos del clúster donde desea crear la cadena de herramientas.
- Rol de acceso a la plataforma de Editor en el servicio Cadena de herramientas (tenga en cuenta que este servicio es independiente de Continuous Delivery).
Creación de una cadena de herramientas con Delivery Pipeline
Siga estos pasos para crear un conducto CI/CD con una cadena de herramientas. Una cadena de herramientas es un conjunto de integraciones de herramientas que dan soporte a tareas de desarrollo, despliegue, y operaciones. Al configurar la cadena de herramientas, puede incluir y configurar un Delivery Pipeline que se crea y desencadena automáticamente después de crear la cadena de herramientas.
- Desde la consola, seleccione el clúster para el que desea configurar un canal de entrega continua.
- Seleccione el separador DevOps.
- Pulse Crear una cadena de herramientas.
- Revise las cadenas de herramientas disponibles. IBM proporciona cadenas de herramientas predefinidas que puede utilizar para desplegar, probar y supervisar las apps nativas de Kubernetes o los diagramas de Helm. Puede ampliar cada cadena de herramientas para encontrar una visión general de las herramientas que se configuran automáticamente y para localizar los scripts en GitHub que se utilizan para configurar la cadena de herramientas en el clúster. Si sabe qué herramientas desea utilizar, puede crear su propia cadena de herramientas.
- Seleccione la cadena de herramientas que desea utilizar y pulse Crear.
- Siga las instrucciones de la consola para configurar la cadena de herramientas. Asegúrese de incluir el nombre del clúster en el nombre de la cadena de herramientas para poder localizar fácilmente más adelante la cadena de herramientas que está asociada con el clúster. Para obtener más información, consulte Creación de cadenas de herramientas.
- Seleccione Conducto de entrega para revisar las etapas del conducto de integración continua y de entrega continua. Después de crear la cadena de herramientas, el conducto se inicia automáticamente y se ejecuta durante las etapas que ha configurado. Asegúrese de que las etapas se ejecuten correctamente y corrija los errores.
- Modifique la cadena de herramientas. Puede añadir más herramientas a la cadena de herramientas o cambiar las etapas del conducto de entrega.
- Desde la consola, seleccione el clúster para el que desea configurar un canal de entrega continua.
- Seleccione el separador DevOps.
- Seleccione la cadena de herramientas que desea modificar.
Otros recursos para automatizar el conducto
Consulte las siguientes integraciones y herramientas que puede utilizar para automatizar la interconexión de CI/CD.
- Codeship
- Puede utilizar Codeship para la integración y entrega continuas de contenedores.
- Grafeas
- Grafeas es un servicio de CI/CD de código abierto que proporciona una forma común de recuperar, almacenar e intercambiar metadatos durante el proceso de la cadena de suministro de software. Por ejemplo, si integra Grafeas en el proceso de compilación de apps, Grafeas puede almacenar información sobre el iniciador de la solicitud de compilación, los resultados de la exploración de vulnerabilidades y el proceso de garantía de calidad para que pueda tomar una decisión informada sobre si se puede desplegar una app en producción. Puede utilizar estos metadatos en auditorías o para probar la conformidad de la cadena de suministro de software.
- IBM® Continuous Delivery Pipeline for IBM Cloud®
- Con los archivos de configuración de aplicaciones organizados en un sistema de gestión de control de origen como Git, puede crear la interconexión para probar y desplegar el código en distintos entornos, como
test
yprod
. IBM Cloud® Continuous Delivery permite automatizar las compilaciones de aplicaciones y los despliegues de contenedor en clústeres de Kubernetes utilizando una cadena de herramientas. También puede consultar esta guía de aprendizaje sobre el despliegue continuo en Kubernetes. - Razee
- Razee es un proyecto de código abierto que automatiza y gestiona la implementación de recursos de TI ( Kubernetes ) en clústeres, entornos y proveedores de nube, y le ayuda a visualizar la información de implementación de sus recursos para que pueda supervisar el proceso de despliegue y encontrar problemas de implementación más rápidamente. Para obtener más información sobre Razee y cómo configurarlo en tu clúster para automatizar tu proceso de implementación, consulta la documentación de Razee.
- Helm
- Helm es un gestor de paquetes Kubernetes. Puede crear nuevos diagramas de Helm o utilizar diagramas de Helm preexistentes para definir, instalar y actualizar utilizar aplicaciones de Kubernetes complejas que se ejecutan en clústeres de IBM Cloud Kubernetes Service. Por ejemplo, puede especificar todos los recursos de Kubernetes que necesita la app en un diagrama de Helm. A continuación, puede utilizar Helm para crear los archivos de configuración de YAML y desplegar estos archivos en el clúster. También puede integrar gráficos de Helm proporcionados por IBM Cloud para ampliar las capacidades de su clúster, como con un complemento de almacenamiento en bloque. Para obtener más información, consulte Configuración de Helm en IBM Cloud Kubernetes Service.
- Kustomize
- Utilice el proyecto Kubernetes Kustomize para empaquetar sus aplicaciones estandarizando y personalizando sus implementaciones en múltiples entornos. Kustomize le ayuda a escribir, a personalizar y a reutilizar sus configuraciones de YAML de recursos de Kubernetes. Para empezar, consulte Empaquetado de apps para su reutilización en varios entornos con Kustomize.