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 de entorno manual, y la infraestructura se implementa en tus proyectos y redes.
- Cloud Composer 2: En esta versión, el clúster del entorno escala automáticamente para satisfacer las demandas de recursos.
- Cloud Composer 3: Esta versión simplificó la configuración de red y oculta componentes de infraestructura, incluidos el clúster y las dependencias del entorno en otros servicios.
Comparación de las versiones de Cloud Composer
En la siguiente tabla, se enumeran las diferencias principales 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. Puede establecer y cambiar los límites superior e inferior para la cantidad de trabajadores. Puede ajustar la cantidad de programadores y activadores de Airflow. |
Ajuste de escala automático de 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, 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: CPU, memoria y parámetros de almacenamiento para los trabajadores, los programadores, el servidor web, los procesadores de DAG y el tamaño del entorno de Airflow. |
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 la federación de identidades para cargas de trabajo para GKE y requiere permisos adicionales para la cuenta de agente de servicio de Cloud Composer. | Funciones de Cloud Composer: Usa la federación de identidades para cargas de trabajo para GKE. 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 | Intercambio 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 |
Cómo guardar 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 periódicamente imágenes nuevas de Cloud Composer:
En Cloud Composer 3, las imágenes incluyen compilaciones nuevas de Airflow compatible versiones. Puedes seleccionar una versión de Airflow y una compilación que desees usar. Tu entorno recibe las mejoras de Cloud Composer automáticamente.
En Cloud Composer 2 y Cloud Composer 1, las imágenes incluyen lo siguiente: Mejoras de Cloud Composer y compilaciones nuevas de Versiones de Airflow. Para obtener mejoras de Cloud Composer, actualizar 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 tiempo posterior a la lanzamiento:
Si la versión menor de Airflow es la más reciente disponible en Cloud Composer 3, todas las compilaciones de Airflow con esta versión menor son totalmente compatibles. La fecha exacta del final 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 son compatibles 12 meses a partir de esa fecha. Si hay varias compilaciones contienen la misma versión secundaria de Airflow, todas tienen el mismo extremo fecha de compatibilidad total.
Una vez que una versión secundaria ya no es totalmente compatible, los entornos que ejecutan esta versión tampoco son compatibles y son completamente administrados por el usuario. Tú aún pueden actualizar este entorno a una versión versión compatible de Airflow.
Puedes crear entornos con todas las compilaciones de Airflow que son totalmente compatibles.
Puedes seguir usando un entorno con una compilación de Airflow que ya no se admite. El entorno seguirá funcionando, podrás seguir usándolo y podrás actualizarlo a una versión completamente compatible.
Composer 2
Google admite versiones de Cloud Composer 2 durante un período determinado después del 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: Cloud Composer 2 que ejecutan estas versiones son totalmente compatibles.
Más de 12 meses a partir de la fecha de lanzamiento: Cloud Composer 2 entornos que ejecutan estas versiones no son compatibles.
Puedes usar las versiones de Cloud Composer después de la fecha en que ya no sean compatibles. 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, te recomendamos que actualices el 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 usa la misma política de baja de versiones que Cloud Composer 2 y se admiten de acuerdo con ellos.
El 25 de marzo de 2024, Cloud Composer 1 entró en su modo posterior al mantenimiento. Google no lanzará más actualizaciones de Cloud Composer 1, incluidas las versiones nuevas de Airflow, las correcciones de errores y las actualizaciones de seguridad. Te recomendamos que migres 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 nuevas versiones y compilaciones de Airflow estarán disponibles a medida que pase el tiempo.
Tu entorno puede funcionar con todas las versiones y compilaciones anteriores de Airflow, y recibe actualizaciones de sus componentes de infraestructura automáticamente. Cada versión y compilación es compatible, como se describe en Compatibilidad y baja de versiones, y puedes 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 versió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 nueva versión del parche 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. Luego, la versión anterior del parche se quita en una de las próximas versiones.
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 de servicio de Cloud Composer. Además, si hay problemas funcionales, de calidad o de rendimiento con una versión del parche específica de Airflow, Cloud Composer también puede omitir esta versión.
Por ejemplo, se omite Airflow 2.1.3 y está disponible Airflow 2.1.4.
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 versión más reciente. de Airflow 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 versión posterior de la misma versión de Airflow en Cloud Composer 3 tiene un número de compilación más alto. El número de compilación se define según Cloud Composer y no el proyecto de código abierto de Airflow.
Composer 2
El esquema de 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 versión se convierten en
composer-3-airflow-x.y.z-build.t
en Cloud Composer 3. - Todos los alias de versión se convierten en
composer-a.b.c-airflow-x.y.z
en Cloud Composer 2 y Cloud Composer 1.
- Todos los alias de versión se convierten en
En Cloud Composer 3, usar un alias de versión, como
composer-3-airflow-x.y
, no actualiza automáticamente la versión y compilación de Airflow de tu entorno. El entorno permanece en la misma compilación y versión de Airflow hasta que lo actualizas. El entorno aún recibe actualizaciones actualizaciones de infraestructura como de costumbre.En Cloud Composer 2 y Cloud Composer 1, usar un alias de versión, como
composer-a-airflow-x.y.z
, no proporciona actualizaciones automáticas para un entorno. El entorno permanecerá 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 compilación más recientes de Airflow dentro de las versiones principales y secundarias de x.y |
composer-3-airflow-x.y.z |
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 |
Versión más reciente de Cloud Composer 2 | La versión más reciente de Airflow 2 |
composer-2-airflow-x.y |
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 |
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 | Es la versión más reciente de Airflow disponible en las versiones principales y secundarias de x.y . |
Los siguientes alias de versión apuntan a Cloud Composer 2. Puedes seguir usándolos, pero considera cambiar a alias para tu versión de Cloud Composer.
composer-latest-airflow-x.y
es igual acomposer-2-airflow-x.y
.composer-latest-airflow-x.y.z
es igual acomposer-2-airflow-x.y.z
.
Argumentos de 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:
Composer 3
El argumento
--image-version
especifica la versión de Airflow y la compilación en el formatocomposer-3-airflow-x.y.z-build.t
. Puedes usar alias de versión, que Google Cloud CLI resuelve 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 acomposer-3-airflow-x.y.z
alias de la versión.El formato
x.y
es para la compilación más reciente de Airflow disponible en las versiones principales y secundarias dex.y
. Este formato es igual al alias de versióncomposer-3-airflow-x.y
.x.y.z-build.t
es la versión y la compilación especificadas de Airflow. Esta formato es igual acomposer-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 se resuelven primero en
el formato
composer-a.b.c-airflow-x.y.z
y, luego, crea un con las versiones especificadas de Cloud Composer 2 y Airflow.
- El formato
--airflow-version
especifica la versión de Airflow en los siguientes formatos:El formato
x.y.z
es para la versión más reciente de Cloud Composer 2 y la versión especificada de Airflow. Este formato es igual a el alias de la versióncomposer-2-airflow-x.y.z
.El formato
x.y
corresponde a la versión más reciente de Cloud Composer 2 y al La versión más reciente de Airflow disponible enx.y
instancia principal y secundaria versiones. Este formato es igual acomposer-2-airflow-x.y
alias de la versión.
Composer 1
El argumento
--image-version
especifica Cloud Composer 1 y Airflow. versiones:composer-a.b.c-airflow-x.y.z
crea un entorno con el específicas de Cloud Composer y Airflow.- Los alias de la versión se resuelven primero en
el formato
composer-a.b.c-airflow-x.y.z
y, luego, crea un 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
corresponde a la versión más reciente de Cloud Composer 1 y la versión especificada de Airflow. Este formato es igual a el alias de la versióncomposer-1-airflow-x.y.z
.El formato
x.y
es para la versión más reciente de Cloud Composer 1 y la versión más reciente de Airflow disponible en las versiones principales y secundarias dex.y
. Este formato es igual al alias de versióncomposer-1-airflow-x.y
.