Descripción general del control de versiones de Cloud Composer

Cloud Composer 1 | Cloud Composer 2

En esta página, se describe el control de versiones de Cloud Composer y se enumeran las diferencias entre las principales versiones de Cloud Composer.

Versiones principales de Cloud Composer

Cloud Composer tiene dos versiones principales:

  • Cloud Composer 2: Esta versión tiene entornos de ajuste de escala automático.
  • Cloud Composer 1: Esta versión tiene ajuste de escala manual.

En la siguiente tabla, se enumeran las diferencias principales entre Cloud Composer 1 y Cloud Composer 2.

Cloud Composer 1 Cloud Composer 2
Versiones con imágenes de Cloud Composer composer-1.x.x composer-2.x.x
Versiones de Airflow Airflow 1.10.* y Airflow 2 Airflow 2
Versiones de Python 3.8.12 3.8.12
Clúster del entorno Clúster en modo estándar de Google en Kubernetes Engine basado en rutas o nativo de la VPC Clúster en modo Autopilot de Google Kubernetes Engine nativo de la VPC
Escalamiento horizontal: Puedes ajustar la cantidad de nodos en el clúster del entorno. Esto cambia la cantidad de trabajadores de Airflow.
Puede ajustar la cantidad de programadores de Airflow.
Escala automáticamente la cantidad de trabajadores de Airflow, según la demanda. Puede establecer y cambiar los límites superior e inferior para la cantidad de trabajadores.
Puede ajustar la cantidad de programadores de Airflow.
Escalamiento vertical Puede establecer tipos de máquinas para los nodos del clúster y el servidor web y la base de datos de Airflow cuando se crea un entorno. Puede cambiar los tipos de máquina para el servidor web y la base de datos de Airflow. Puede establecer y cambiar la configuración de las cargas de trabajo: CPU, memoria y parámetros de almacenamiento para los trabajadores, los programadores, el servidor web y la base de datos de Airflow.
Modelo de precios Modelo de precios de Cloud Composer 1 Modelo de precios de Cloud Composer 2
Control de acceso Funciones de Cloud Composer Funciones de Cloud Composer: Usa Workload Identity y requiere permisos adicionales para la cuenta de agente de servicio de Cloud Composer.
Acceso mediante la federación de identidades de los trabajadores No compatible Admitido
Arquitectura del entorno Arquitectura del entorno de Cloud Composer 1 Arquitectura del entorno de Cloud Composer 2
Herramientas de redes de IP privada Intercambios de tráfico entre VPC Intercambios de tráfico entre VPC o Private Service Connect
Compatibilidad con Terraform Puede crear y actualizar entornos de Cloud Composer 1. Puede crear y actualizar entornos de Cloud Composer 2.
CMEK Admitido Admitido
Controles de acceso al servidor web Admitido Admitido
Reinicia el servidor web Admitido Admitido
Complementos del servidor web Compatible con los entornos de Airflow 1 con inhabilitación de la serialización de DAG. Admitido
Instalar complementos personalizados Admitido Admitido
Operaciones de mantenimiento Es posible que se vean afectadas todas las tareas. Las tareas que tardan menos de 55 minutos en ejecutarse no se verán afectadas.
Carga asíncrona de DAG Compatible con Airflow 1 No compatible
Serialización del DAG Siempre habilitado en Airflow 2. Se puede inhabilitar en Airflow 1. Siempre habilitado en Airflow 2.
Compatibilidad con etiquetas de red
Nodos de clústeres con GPU No
Almacena instantáneas Compatible con las versiones de Airflow 2.x y 1.10.15 Admitido
Cargando instantáneas No compatible Admitido
Instantáneas programadas No compatible Admitido

Imágenes de Cloud Composer

Para ejecutar Apache Airflow, Cloud Composer compila imágenes de Docker que agrupan actualizaciones de Airflow con otros objetos binarios comunes y bibliotecas de Python.

Las imágenes de Cloud Composer incluyen modificaciones de Airflow específicas de Cloud Composer, que no son adecuadas para la base de código ascendente de Airflow. Los paquetes preinstalados junto con los cambios de Airflow específicos de Cloud Composer se denominan colectivamente “versiones de Cloud Composer”.

Google lanza de forma periódica imágenes nuevas de Cloud Composer que incluyen actualizaciones nuevas de Airflow y mejoras de Cloud Composer.

Compatibilidad con la versión 1 de Cloud Composer

Lanzamiento de nuevas versiones de Cloud Composer 1 hasta fines de marzo de 2023. Todas las versiones de Cloud Composer 1 publicadas siguen la política de baja de la versión y se admiten de acuerdo con ellas.

Algunas funciones nuevas de Cloud Composer pueden ser compatibles solo con Cloud Composer 2. Puedes verificar qué funciones son compatibles solo con Cloud Composer 2 en la tabla que enumera las principales diferencias entre versiones.

Baja y asistencia de la versión de Cloud Composer

Google admite las versiones de Cloud Composer durante un período después de la actualización de la versión. Durante este período, los entornos de Cloud Composer que usan estas versiones son totalmente compatibles.

La compatibilidad con la versión de Cloud Composer se define de la siguiente manera:

  • Entre 0 y 12 meses desde la fecha de lanzamiento: los entornos de Cloud Composer que ejecutan estas versiones son totalmente compatibles.
  • Entre 12 y 18 meses desde la fecha de lanzamiento: los entornos de Cloud Composer que ejecutan estas versiones no son compatibles, excepto para notificar a los clientes acerca de problemas de seguridad.

  • Más de 18 meses desde la fecha de lanzamiento: los entornos de Cloud Composer que ejecutan estas versiones no son compatibles y son completamente administrados por el usuario.

Compatibilidad con versiones de Airflow

Airflow sigue el esquema de control de versiones de software semántico. Cada versión de Airflow tiene una versión principal, secundaria y de parche.

Para obtener una lista de las versiones de Airflow compatibles con cada versión de Cloud Composer, consulta la lista de versiones de Cloud Composer.

Compatibilidad con versiones de Airflow 2

  • En cada versión, Cloud Composer admite dos versiones secundarias de Airflow 2.

    Por ejemplo, Cloud Composer 1.17.0 es compatible con Airflow 2.0.* y Airflow 2.1.*.

  • Para cada versión secundaria de Airflow 2, Cloud Composer admite una versión de parche.

    Por ejemplo, para Airflow 2.1.*, Cloud Composer es compatible con Airflow 2.1.2.

  • Cuando una versión de parche nueva de Airflow 2 está disponible en Cloud Composer, la versión correspondiente tiene dos versiones de parche de Airflow 2 disponibles para la misma versión secundaria de Airflow. La versión de parche anterior se quita en una de las próximas versiones.

    Por ejemplo, Cloud Composer 1.17.4 es compatible con Airflow 2.1.2 y Airflow 2.1.4.

  • Cloud Composer puede omitir algunas versiones de parches de Airflow entre las versiones de Cloud Composer. Además, si hay problemas funcionales, de calidad o de rendimiento con una versión de parche específica de Airflow, Cloud Composer también puede omitir esta versión.

    Por ejemplo, se omite Airflow 2.1.3 y Airflow 2.1.4 está disponible.

  • Una versión de Cloud Composer que ejecute una versión estable de Airflow puede incluir actualizaciones de Airflow que se transfieren desde una versión posterior de Airflow.

Esquema de la versión de Cloud Composer

El esquema de control de versiones con imágenes de Cloud Composer captura versiones de Cloud Composer y Airflow:

composer-a.b.c-airflow-x.y.z

Donde

  • composer-a.b.c es la versión de las personalizaciones administradas por Cloud Composer.
  • airflow-x.y.z es la versión de Airflow.

Alias de versiones

Cloud Composer 2 admite los siguientes alias de versión:

Alias Versión de Cloud Composer Versión de Airflow
composer-2-airflow-2 La versión más reciente de Cloud Composer 2 Versión más reciente de Airflow 2
composer-2-airflow-x.y La versión más reciente de Cloud Composer 2 La versión más reciente de Airflow dentro de las versiones principales y secundarias de x.y
composer-2-airflow-x.y.z La versión más reciente de Cloud Composer 2 Versión especificada de Airflow
composer-2.b.c-airflow-x.y Versión especificada de Cloud Composer 2 La versión más reciente de Airflow está disponible en las versiones principales y secundarias de x.y

Cloud Composer 1 admite los siguientes alias de versión:

Alias Versión de Cloud Composer Versión de Airflow
composer-1-airflow-2 La versión más reciente de Cloud Composer 1 Versión más reciente de Airflow 2
composer-1-airflow-1 La versión más reciente de Cloud Composer 1 Versión más reciente de Airflow 1
composer-1-airflow-x.y La versión más reciente de Cloud Composer 1 La versión más reciente de Airflow dentro de las versiones principales y secundarias de x.y
composer-1-airflow-x.y.z La versión más reciente de Cloud Composer 1 Versión especificada de Airflow
composer-1.b.c-airflow-x.y Versión especificada de Cloud Composer 1 La versión más reciente de Airflow está disponible en las versiones principales y secundarias de x.y.

Los siguientes alias de versiones apuntan a Cloud Composer 2. Aún puedes usarlas, pero considera cambiar a alias para tu versión de Cloud Composer.

  • composer-latest-airflow-x.y es igual a composer-2-airflow-x.y.
  • composer-latest-airflow-x.y.z es igual a composer-2-airflow-x.y.z.

Argumentos de la versión en Google Cloud CLI

Cuando creas o actualizas un entorno de Cloud Composer con Google Cloud CLI, puedes especificar las versiones de Cloud Composer y Airflow:

  • El argumento --image-version especifica las versiones de Cloud Composer y Airflow:

    • El formato composer-a.b.c-airflow-x.y.z crea un entorno con las versiones especificadas de Cloud Composer y Airflow.
    • Los alias de versión primero se resuelven en el formato composer-a.b.c-airflow-x.y.z y, luego, crean un entorno con las versiones especificadas de Cloud Composer y Airflow.
  • --airflow-version especifica la versión de Airflow en dos formatos:

    • El formato x.y.z es para la última versión de Cloud Composer 2 y la versión especificada de Airflow. Este formato es igual al alias de la versión composer-2-airflow-x.y.z.

    • El formato x.y es para la última versión de Cloud Composer 2 y la versión más reciente de Airflow disponible en las versiones principales y secundarias de x.y. Este formato es igual al alias de la versión composer-2-airflow-x.y.

¿Qué sigue?