Visão geral do controle de versões do Cloud Composer

Nesta página, descrevemos o controle de versões do Cloud Composer e listamos as diferenças entre as principais versões dele.

Versões principais do Cloud Composer

O Cloud Composer tem três versões principais:

  • Cloud Composer 1. com escalonamento manual do ambiente, a infraestrutura é implantada nos projetos e redes.
  • Cloud Composer 2. Nessa versão, o cluster do ambiente é escalonado automaticamente para atender às demandas de recursos.

Comparação das versões do Cloud Composer

A tabela a seguir lista as principais diferenças entre o Cloud Composer 1 e o Cloud Composer 2.

Engenharia de Cloud Composer 1 Cloud Composer 2
Versão de imagem composer-1.b.c-airflow-x.y.z composer-2.b.c-airflow-x.y.z
Versões do Airflow Airflow 1.10.* e Airflow 2 Airflow 2
Versões do Python 3.8.12 3.11.5 e 3.8.12 em versões anteriores
Cluster do ambiente Cluster do Google Kubernetes Engine baseado em rotas ou nativo de VPC do modo padrão Cluster do Google Kubernetes Engine nativo de VPC do modo Autopilot
Escalonamento horizontal Pode ajustar o número de nós no cluster do ambiente. Isso altera o número de workers do Airflow.
Pode ajustar o número de programadores do Airflow.
Escalonamento automático do número de workers do Airflow com base na demanda. Pode definir e alterar os limites superior e inferior do número de workers.
Pode ajustar o número de programadores e acionadores do Airflow
Escalonamento vertical Pode definir tipos de máquina para nós do cluster, servidor da Web do Airflow e banco de dados ao criar um ambiente. Pode alterar os tipos de máquina do servidor da Web e do banco de dados do Airflow. Pode definir e alterar a configuração das cargas de trabalho: CPU, memória e parâmetros de armazenamento para workers, programadores, servidor da Web e tamanho do ambiente do Airflow.
Modelo de preços Modelo de preços do Cloud Composer 1 Modelo de preços do Cloud Composer 2
Controle de acesso Papéis do Cloud Composer 1 Papéis do Cloud Composer. Usa a Identidade da carga de trabalho e requer permissões adicionais para a conta do Agente de serviço do Cloud Composer.
Acessar pela federação de identidade de colaboradores Sem suporte Compatível
Ambientes altamente resilientes Sem suporte Compatível
Rede IP privada Peerings de VPC Private Service Connect
VPC Service Controls Compatível Compatível
Executores do Airflow Celery Executor Celery Executor
Acionadores do Airflow (operadores adiáveis) Sem suporte Compatível
CMEK Compatível Compatível
Controles de acesso do servidor da Web Compatível Compatível
Reiniciando o servidor da Web Compatível Compatível
Plug-ins do servidor da Web Compatível com ambientes do Airflow 1 com serialização de DAG desativada. Compatível
Como instalar plug-ins personalizados Compatível Compatível
Operações de manutenção Todas as tarefas podem ser afetadas. As tarefas que levam menos de 55 minutos para serem executadas não são afetadas.
Como armazenar snapshots Compatível com as versões 2.x e 1.10.15 do Airflow Compatível
Carregando snapshots Sem suporte Compatível
Snapshots programados Sem suporte Compatível
Bucket do ambiente personalizado Sem suporte Compatível
Como salvar registros de tarefas do Airflow apenas no Cloud Logging Sem suporte Compatível
Integração da linhagem de dados Sem suporte Compatível

Imagens do Cloud Composer

Para executar o Apache Airflow, o Cloud Composer cria imagens do Docker que combinam pacotes do Airflow com outros binários comuns e bibliotecas Python.

As imagens do Cloud Composer incluem modificações do Airflow específicas do Cloud Composer e inadequadas para a base de código do Airflow de upstream. Cada imagem do Cloud Composer contém pacotes pré-instalados, além de alterações específicas do Airflow.

O Google lança periodicamente novas imagens do Cloud Composer:

  • No Cloud Composer 2 e no Cloud Composer 1, as imagens incluem melhorias do Cloud Composer e novos builds de versões compatíveis do Airflow. Para receber melhorias do Cloud Composer, faça upgrade do ambiente para uma versão posterior do produto.

Compatibilidade e suspensão de uso das versões

Composer 2

O Google aceita duas versões do Cloud Composer por um período após o lançamento. Durante esse período, os dois ambientes do Cloud Composer que usam essas versões são totalmente compatíveis.

O suporte à versão 2 do Cloud Composer é definido da seguinte maneira:

  • 0 a 12 meses a partir da data de lançamento: os ambientes do Cloud Composer 2 que executam essas versões são totalmente compatíveis.

  • 12 a 18 meses a partir da data de lançamento: os ambientes do Cloud Composer 2 que executam essas versões não são compatíveis, exceto para notificar os clientes sobre problemas de segurança.

  • Mais de 18 meses a partir da data de lançamento: os ambientes do Cloud Composer 2 que executam essas versões não são compatíveis e são totalmente gerenciados pelo usuário.

É possível usar as versões do Cloud Composer após a data em que não são mais compatíveis. Por exemplo, se o ambiente for baseado em uma versão do Cloud Composer que tenha passado do período de suporte, o ambiente ainda funcionará e você poderá continuar a usá-lo. Nesse caso, recomendamos fazer upgrade do ambiente para uma versão compatível.

Composer 1

As novas versões do Cloud Composer 1 foram lançadas até o final de março de 2023. Todas as versões lançadas do Cloud Composer 1 seguem a mesma política de descontinuação de versão que o Cloud Composer 2 e são compatíveis de acordo com ela.

Em 25 de março de 2024, o Cloud Composer 1 entrou no modo pós-manutenção. O Google não lançará mais atualizações para o Cloud Composer 1, incluindo novas versões do Airflow, correções de bugs e atualizações de segurança. Recomendamos a migração para o Cloud Composer 2.

Suporte das versões do Airflow

O Airflow segue o esquema semântico do controle de versões de software. Cada versão do Airflow tem uma versão principal, secundária e de patch.

Composer 2

Para ver uma lista das versões do Airflow compatíveis com cada versão do Cloud Composer, consulte a lista de versões do Cloud Composer.

  • Em cada versão, o Cloud Composer 2 é compatível com duas versões secundárias do Airflow 2.

    Por exemplo, o Cloud Composer 2.4.0 é compatível com o Airflow 2.4.* e o Airflow 2.5.*.

  • Para cada versão secundária do Airflow 2, o Cloud Composer é compatível com uma versão de patch.

    Por exemplo, para o Airflow 2.4.*, O Cloud Composer é compatível com o Airflow 2.4.3.

  • Quando uma nova versão de patch do Airflow 2 é disponibilizada no Cloud Composer, a versão correspondente tem duas versões de patch do Airflow 2 disponíveis para a mesma versão secundária do Airflow. A versão anterior do patch é removida em uma das próximas versões.

    Por exemplo, o Cloud Composer 2.3.4 é compatível com o Airflow 2.5.1 e o Airflow 2.5.3.

  • O Cloud Composer pode ignorar algumas versões de patch do Airflow entre versões do Cloud Composer. Além disso, se houver problemas funcionais, de qualidade ou de desempenho com uma versão de patch específica do Airflow, o Cloud Composer também poderá ignorar essa versão.

    Por exemplo, o Airflow 2.1.3 é ignorado e o Airflow 2.1.4 está disponível.

  • Uma versão do Cloud Composer executando uma versão estável do Airflow pode incluir atualizações do Airflow que são feitas a partir de uma versão posterior do Airflow.

Composer 1

A versão mais recente do Airflow compatível com o Cloud Composer 1 é o Airflow 2.4.3.

Apenas o Cloud Composer 1 é compatível com o Airflow 1.10.15, que é a versão mais recente do Airflow 1.

Esquema de versão do Cloud Composer

Composer 2

O esquema de controle de versões de imagens do Cloud Composer 2 captura as versões do Cloud Composer e do Airflow:

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

Em que:

  • composer-2.b.c é a versão das personalizações gerenciadas pelo Cloud Composer;
  • airflow-x.y.z é a versão do Airflow.

Composer 1

O esquema de controle de versões de imagens do Cloud Composer 1 captura as versões do Cloud Composer e do Airflow:

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

Em que:

  • composer-1.b.c é a versão das personalizações gerenciadas pelo Cloud Composer;
  • airflow-x.y.z é a versão do Airflow.

Aliases da versão

Os aliases de versão funcionam da seguinte maneira:

  • Ao criar o ambiente, o Cloud Composer resolve o alias de versão para o formato completo:
    • Todos os aliases de versão se tornam composer-a.b.c-airflow-x.y.z no Cloud Composer 2 e no Cloud Composer 1.

  • No Cloud Composer 2 e no Cloud Composer 1, o uso de um alias de versão, como composer-a-airflow-x.y.z, não fornece upgrades automáticos para um ambiente. O ambiente permanece na mesma versão do Airflow e do Cloud Composer até que você faça o upgrade.

O Cloud Composer 2 oferece suporte aos aliases de versão a seguir:

Alias Versão do Cloud Composer Versão do Airflow
composer-2-airflow-2 Versão mais recente do Cloud Composer 2 Versão mais recente do Airflow 2
composer-2-airflow-x.y Versão mais recente do Cloud Composer 2 Versão mais recente do Airflow em x.y versões principais e secundárias
composer-2-airflow-x.y.z Versão mais recente do Cloud Composer 2 Versão especificada do Airflow
composer-2.b.c-airflow-x.y Versão especificada do Cloud Composer 2 A versão mais recente do Airflow disponível em x.y versões principais e secundárias

O Cloud Composer 1 oferece suporte aos aliases de versão a seguir:

Alias Versão do Cloud Composer Versão do Airflow
composer-1-airflow-2 Versão mais recente do Cloud Composer 1 Versão mais recente do Airflow 2
composer-1-airflow-1 Versão mais recente do Cloud Composer 1 Versão mais recente do Airflow 1
composer-1-airflow-x.y Versão mais recente do Cloud Composer 1 Versão mais recente do Airflow em x.y versões principais e secundárias
composer-1-airflow-x.y.z Versão mais recente do Cloud Composer 1 Versão especificada do Airflow
composer-1.b.c-airflow-x.y Versão especificada do Cloud Composer 1 A versão mais recente do Airflow disponível nas versões principais e secundárias x.y.

Os aliases de versão a seguir apontam para o Cloud Composer 2. Ainda é possível usá-los, mas considere mudar para aliases da sua versão do Cloud Composer.

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

Argumentos de versão na Google Cloud CLI

Ao criar ou fazer upgrade de um ambiente do Cloud Composer usando a Google Cloud CLI, é possível especificar as versões do Cloud Composer e do Airflow:

Composer 2

  • O argumento --image-version especifica as versões 2 e do Airflow do Cloud Composer:

    • composer-a.b.c-airflow-x.y.z cria um ambiente com as versões especificadas do Cloud Composer e do Airflow.
    • Os aliases de versão primeiro são resolvidos para o formato composer-a.b.c-airflow-x.y.z e depois criam um ambiente com as versões especificadas do Cloud Composer 2 e do Airflow.
  • --airflow-version especifica a versão do Airflow nos seguintes formatos:

    • O formato x.y.z é destinado à versão mais recente do Cloud Composer 2 e à versão especificada do Airflow. Esse formato é igual ao alias de versão do composer-2-airflow-x.y.z.

    • O formato x.y é destinado à versão mais recente do Cloud Composer 2 e à versão mais recente do Airflow disponível nas versões principais e secundárias x.y. Esse formato é igual ao alias de versão do composer-2-airflow-x.y.

Composer 1

  • O argumento --image-version especifica as versões do Cloud Composer 1 e do Airflow:

    • composer-a.b.c-airflow-x.y.z cria um ambiente com as versões especificadas do Cloud Composer e do Airflow.
    • Os aliases de versão primeiro são resolvidos para o formato composer-a.b.c-airflow-x.y.z e depois criam um ambiente com as versões especificadas do Cloud Composer 1 e do Airflow.
  • --airflow-version especifica a versão do Airflow nos seguintes formatos:

    • O formato x.y.z é destinado à versão mais recente do Cloud Composer 1 e à versão especificada do Airflow. Esse formato é igual ao alias de versão do composer-1-airflow-x.y.z.

    • O formato x.y é destinado à versão mais recente do Cloud Composer 1 e à versão mais recente do Airflow disponível nas versões principais e secundárias x.y. Esse formato é igual ao alias de versão do composer-1-airflow-x.y.

A seguir