Modelos de despliegue

Los modelos de despliegue le ayudan a comprender el proceso de despliegue de aplicaciones entre clústeres.

Despliegue basado en push

El modelo de despliegue basado en push despliega la aplicación en un único clúster. El proceso de implementación se conecta al clúster y aplica los archivos de implementación. Este modelo no requiere la instalación de ningún operador ni agente en su clúster.

Puede utilizar cualquier herramienta de implementación que se pueda ejecutar desde el proceso de implementación en el clúster de destino; por ejemplo:

  • kubectl (o oc para Red Hat OpenShift on IBM Cloud ) para aplicar los manifiestos de Kubernetes.
  • Helm para instalar o actualizar una versión de un gráfico. El gráfico se puede almacenar en el repositorio de inventario, como cualquier otro recurso de implementación.

Los scripts de implementación forman parte del repositorio de implementación y se pueden personalizar para adaptarlos a los requisitos de su aplicación y su clúster. DevSecOps proporciona scripts de ayuda, denominados biblioteca común, que abarcan las acciones de implementación.

Despliegue basado en extracción

El modelo de despliegue basado en extracción es adecuado para despliegues de aplicaciones de varios clústeres. Este modelo utiliza IBM Cloud Satellite Config como herramienta de despliegue para desplegar en varios clústeres. Para obtener más información, consulte Visión general de Satellite Config.

El proceso de implementación no se conecta a cada clúster. En su lugar, publica los archivos de implementación en Satellite Config, y un agente que se ejecuta en cada clúster los recupera. Los clústeres que reciben la misma implementación se agrupan en un grupo de clústeres Satellite.

Satellite Config implementa definiciones de recursos de Kubernetes. Si tu aplicación está empaquetada como un gráfico de Helm o como superposiciones de Kustomize, conviértela primero en manifiestos de Kubernetes, por ejemplo con o helm template kustomize build, y, a continuación, sube los manifiestos generados como versión de configuración.

Para un despliegue basado en extracción, siga estos pasos:

  1. Crea o actualiza las configuraciones necesarias de Satellite y sus versiones para los archivos de implementación.
  2. Crea o actualiza las suscripciones de configuración de Satellite con las configuraciones de Satellite y las versiones que deben implementarse.
  3. Una vez actualizadas las suscripciones, el agente Razee instalado en los clústeres recupera las implementaciones más recientes de la configuración de Satellite y las implementa en todos los clústeres.

Elección de un modelo de implementación

Comparación de modelos de implementación
Consideración Despliegue basado en push Despliegue basado en extracción
Destino Un único clúster Un grupo de clústeres
Herramienta de despliegue kubectl, oc, HelmKustomize o cualquier herramienta que se ejecute en el proceso de integración Satellite Config
Componente del clúster Ninguna Satellite Agente de configuración
Acceso al clúster El pipeline necesita credenciales para acceder al clúster El agente del clúster recupera la implementación, y el pipeline solo necesita acceso a la configuración de Satellite
Diagramas de Helm Instalado o actualizado directamente con Helm Se convierten en manifiestos antes de la subida

Para obtener más información sobre cómo seleccionar el destino de implementación, consulta Implementación de tu aplicación en un destino.