Descripción general del control de versiones de Cloud Composer

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 las siguientes versiones principales:

  • Cloud Composer 1: Tiene escalamiento manual del entorno; la infraestructura se implementa en tus proyectos y redes.
  • Cloud Composer 2: En esta versión, el clúster del entorno escala de forma automática para cumplir con las demandas de recursos.
  • Cloud Composer 3 Esta versión simplificó la configuración de red y oculta los componentes de la infraestructura, incluidos el clúster del entorno y las dependencias del entorno en otros servicios.

Comparación de las versiones de Cloud Composer

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

Atributo Cloud Composer 1 Cloud Composer 2 Cloud Composer 3
Versión de la imagen composer-1.b.c-airflow-x.y.z composer-2.b.c-airflow-x.y.z composer-3-airflow-x.y.z-build.t
Versiones de Airflow Airflow 1.10.* y Airflow 2 Airflow 2 Airflow 2
Versiones de Python 3.8.12 3.11.5 y 3.8.12 en versiones anteriores 3.11.5
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 El clúster del entorno no está implementado en tu proyecto.
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. Puedes configurar y cambiar los límites inferiores y superiores para la cantidad de trabajadores.
Puede ajustar la cantidad de programadores y activadores de Airflow.
Escala automáticamente la cantidad de trabajadores de Airflow según la demanda. Puedes configurar y cambiar los límites inferiores y superiores para la cantidad de trabajadores.
Puede ajustar la cantidad de programadores, activadores y procesadores de DAG de Airflow.
Escalamiento vertical Puede configurar los tipos de máquina para los nodos del clúster, el servidor web de Airflow y la base de datos 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: los parámetros de CPU, memoria y almacenamiento para los trabajadores de Airflow, los programadores, el servidor web y el tamaño del entorno. Puede establecer y cambiar la configuración de las cargas de trabajo: los parámetros de CPU, memoria y almacenamiento para los trabajadores de Airflow, los programadores, el servidor web, los procesadores de DAG y el tamaño del entorno.
Modelo de precios Modelo de precios de Cloud Composer 1 Modelo de precios de Cloud Composer 2 Modelo de precios de Cloud Composer 3
Control de acceso Roles de Cloud Composer 1 Roles de Cloud Composer. Usa Workload Identity y requiere permisos adicionales para la cuenta del agente de servicio de Cloud Composer. Funciones de Cloud Composer: Usa Workload Identity. No se requieren permisos adicionales
Acceso a través de la federación de identidades de personal No compatible Admitido Admitido
Entornos altamente resilientes No compatible Admitido No disponible en la versión preliminar pública
Herramientas de redes de IP privada Intercambios de tráfico entre VPC Private Service Connect Configuración de red simplificada Puede cambiarse entre una IP pública y una privada en un entorno existente.
Controles del servicio de VPC Admitido Admitido No disponible en la versión preliminar pública
Ejecutores de Airflow Ejecutor de Celery Ejecutor de Celery Ejecutor de CeleryKubernetes
Activador de Airflow (operadores diferibles) No compatible Admitido Admitido
CMEK Admitido Admitido No disponible en la versión preliminar pública
Controles de acceso al servidor web Admitido Admitido Admitido
Reinicia el servidor web Admitido Admitido Admitido
Complementos del servidor web Es compatible con entornos de Airflow 1 con la serialización de DAG inhabilitada. Admitido Compatibles. Los complementos se pueden inhabilitar y habilitar a pedido.
Instalar complementos personalizados Admitido Admitido Admitido
Operaciones de mantenimiento Todas las tareas pueden verse afectadas. Las tareas que tardan menos de 55 minutos en ejecutarse no se ven afectadas. Las tareas que tardan menos de 55 minutos en ejecutarse no se ven afectadas.
Almacena instantáneas Compatible con las versiones 2.x y 1.10.15 de Airflow Admitido Admitido
Cargando instantáneas No compatible Admitido Admitido
Instantáneas programadas No compatible Admitido No disponible en la versión preliminar pública
Bucket del entorno personalizado No compatible Admitido Admitido
Guarda registros de tareas de Airflow solo en Cloud Logging No compatible Admitido Admitido
Integración del linaje de datos No compatible Admitido 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. Cada imagen de Cloud Composer contiene paquetes preinstalados junto con los cambios de Airflow específicos de Cloud Composer.

Google lanza imágenes nuevas de Cloud Composer de forma periódica:

  • En Cloud Composer 3, las imágenes incluyen compilaciones nuevas de versiones compatibles de Airflow. Puedes seleccionar una versión de Airflow y una compilación que desees usar. Tu entorno obtiene mejoras de Cloud Composer automáticamente.

  • En Cloud Composer 2 y Cloud Composer 1, las imágenes incluyen mejoras de Cloud Composer y compilaciones nuevas de versiones compatibles de Airflow. Para obtener mejoras de Cloud Composer, actualiza tu entorno a una versión posterior de Cloud Composer.

Baja y asistencia de la versión

Composer 3

Google admite una versión de Airflow durante un período posterior a la versión inicial:

  • Si la versión secundaria de Airflow es la más reciente disponible en Cloud Composer 3, todas las compilaciones de Airflow con esta versión secundaria son totalmente compatibles. La fecha exacta de finalización de la compatibilidad se determina cuando una nueva versión secundaria de Airflow está disponible en Cloud Composer 3.

  • Cuando una nueva versión secundaria de Airflow esté disponible en Cloud Composer 3, todas las compilaciones con la versión secundaria anterior de Airflow serán compatibles durante 12 meses a partir de esa fecha. Si hay varias compilaciones que contienen la misma versión secundaria de Airflow, todas tienen la misma fecha de finalización de la compatibilidad completa.

  • Después de que una versión secundaria deja de ser compatible por completo, los entornos que ejecutan esta versión tampoco son compatibles y están completamente administrados por el usuario. Aún puedes actualizar ese entorno a una versión de Airflow completamente compatible.

Puedes crear entornos con todas las compilaciones de Airflow que sean totalmente compatibles.

Puedes usar un entorno con una compilación de Airflow que ya no sea compatible. El entorno sigue funcionando, puedes seguir usándolo y actualizarlo a una versión completamente compatible.

Composer 2

Google admite las versiones de Cloud Composer 2 durante un período posterior al lanzamiento de la versión. Durante este período, los entornos de Cloud Composer 2 que usan estas versiones son totalmente compatibles.

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

  • De 0 a 12 meses a partir de la fecha de lanzamiento: Los entornos de Cloud Composer 2 que ejecutan estas versiones son totalmente compatibles.

  • De 12 a 18 meses a partir de la fecha de lanzamiento: los entornos de Cloud Composer 2 que ejecutan estas versiones no son compatibles, excepto para notificar a los clientes sobre problemas de seguridad.

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

Puedes usar las versiones de Cloud Composer después de la fecha en que ya no se admiten. Por ejemplo, si tu entorno se basa en una versión de Cloud Composer que ya pasó el período de asistencia, el entorno seguirá funcionando y podrás seguir usándolo. En este caso, recomendamos que actualices tu entorno a una versión compatible.

Composer 1

Se lanzaron nuevas versiones de Cloud Composer 1 hasta fines de marzo de 2023. Todas las versiones lanzadas de Cloud Composer 1 siguen la misma política de baja de versiones que Cloud Composer 2 y son compatibles con ella.

El 25 de marzo de 2024, Cloud Composer 1 entró en su modo posterior al mantenimiento. Google no lanzará más actualizaciones para Cloud Composer 1, incluidas las versiones nuevas de Airflow, las correcciones de errores y las actualizaciones de seguridad. Recomendamos migrar a Cloud Composer 2.

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.

Composer 3

En Cloud Composer 3, las versiones y compilaciones nuevas de Airflow están disponibles a medida que pasa el tiempo.

Tu entorno puede funcionar con todas las versiones y compilaciones anteriores de Airflow, y recibe actualizaciones de sus componentes de infraestructura de forma automática. Cada versión y compilación es compatible como se describe en Baja y compatibilidad de la versión, y puedes optar por actualizar tu versión de Airflow a una versión o compilación posterior.

Composer 2

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.

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

    Por ejemplo, Cloud Composer 2.4.0 admite Airflow 2.4.* y Airflow 2.5.*.

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

    Por ejemplo, para Airflow 2.4.*, Cloud Composer es compatible con Airflow 2.4.3.

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

    Por ejemplo, Cloud Composer 2.3.4 admite Airflow 2.5.1 y Airflow 2.5.3.

  • Cloud Composer puede omitir algunas versiones de parches de Airflow entre 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.

Composer 1

La versión más reciente de Airflow compatible con Cloud Composer 1 es Airflow 2.4.3.

Solo Cloud Composer 1 es compatible con Airflow 1.10.15, que es la última versión de Airflow 1.

Esquema de la versión de Cloud Composer

Composer 3

El esquema del control de versiones de Cloud Composer 3 captura las versiones y compilaciones de Airflow:

composer-3-airflow-x.y.z-build.t

Aquí:

  • composer-3 es la versión de Cloud Composer.
  • airflow-x.y.z.build.t es la versión y compilación de Airflow. Cada próxima actualización de la misma versión de Airflow en Cloud Composer 3 tiene un número de compilación más alto. Cloud Composer define el número de compilación, no el proyecto de código abierto de Airflow.

Composer 2

El esquema del control de versiones de imágenes de Cloud Composer 2 captura las versiones de Cloud Composer y Airflow:

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

Aquí:

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

Composer 1

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

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

Aquí:

  • composer-1.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

Los alias de la versión funcionan de la siguiente manera:

  • Cloud Composer resuelve el alias de la versión al formato completo cuando crea el entorno:

    • Todos los alias de la versión se convierten en composer-3-airflow-x.y.z-build.t en Cloud Composer 3.
    • Todos los alias de la versión se convierten en composer-a.b.c-airflow-x.y.z en Cloud Composer 2 y Cloud Composer 1.
  • En Cloud Composer 3, el uso de un alias de versión, como composer-3-airflow-x.y, no actualiza automáticamente la versión ni la compilación de Airflow de tu entorno. El entorno permanece en la misma compilación y versión de Airflow hasta que lo actualices. El entorno aún recibe actualizaciones automáticas de la infraestructura, como de costumbre.

  • En Cloud Composer 2 y Cloud Composer 1, el uso de un alias de versión, como composer-a-airflow-x.y.z, no proporciona actualizaciones automáticas para un entorno. El entorno permanece en la misma versión de Cloud Composer y Airflow hasta que lo actualices.

Alias de la versión de Cloud Composer 3

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

Alias Versión de Airflow
composer-3-airflow-2 Versión y compilación más recientes de Airflow 2
composer-3-airflow-x.y La versión y la compilación más recientes de Airflow con x.y versiones principales y secundarias
composer-3-airflow-x.y.z La compilación más reciente de la versión especificada de Airflow

Alias de la versión de Cloud Composer 2

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 La 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 en x.y versiones principales y secundarias
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 x.y versiones principales y secundarias

Alias de la versión de Cloud Composer 1

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 La versión más reciente de Airflow 2
composer-1-airflow-1 La versión más reciente de Cloud Composer 1 La 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 en x.y versiones principales y secundarias
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 x.y versiones principales y secundarias.

Los siguientes alias de versión apuntan a Cloud Composer 2. Aún puedes usarlos, 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 mediante Google Cloud CLI, puedes especificar las versiones de Cloud Composer y Airflow:

Composer 3

  • El argumento --image-version especifica la versión de Airflow y la compilación en formato composer-3-airflow-x.y.z-build.t. Puedes usar alias de la versión, que se resuelven con Google Cloud CLI en el formato completo.

  • --airflow-version especifica la versión de Airflow en los siguientes formatos:

    • El formato x.y.z es para la compilación más reciente de la versión especificada de Airflow. Este formato es igual al alias de versión de composer-3-airflow-x.y.z.

    • El formato x.y es para la compilació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-3-airflow-x.y.

    • x.y.z-build.t es la versión y la compilación especificadas de Airflow. Este formato es igual a composer-3-airflow-x.y.z-build.t.

Composer 2

  • El argumento --image-version especifica las versiones de Cloud Composer 2 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 la 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 2 y Airflow.
  • --airflow-version especifica la versión de Airflow en los siguientes 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 última versión de Airflow disponible en las versiones principales y secundarias de x.y. Este formato es igual al alias de versión de composer-2-airflow-x.y.

Composer 1

  • El argumento --image-version especifica las versiones de Cloud Composer 1 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 la 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 1 y Airflow.
  • --airflow-version especifica la versión de Airflow en los siguientes formatos:

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

    • El formato x.y corresponde a la última versión de Cloud Composer 1 y a la última versión de Airflow disponible en las versiones principales y secundarias de x.y. Este formato es igual al alias de la versión composer-1-airflow-x.y.

¿Qué sigue?