Esta página descreve o controlo de versões do Cloud Composer e lista as diferenças entre as versões principais do Cloud Composer.
Versões principais do Cloud Composer
O Cloud Composer tem as seguintes versões principais:
- Cloud Composer 1. Tem escalabilidade manual do ambiente, a infraestrutura é implementada nos seus projetos e redes.
- Cloud Composer 2. Nesta versão, o cluster do ambiente é dimensionado automaticamente para satisfazer as exigências de recursos.
- Cloud Composer 3. Esta versão simplificou a configuração de rede e oculta os componentes de infraestrutura, incluindo o cluster do ambiente e as dependências do ambiente noutros serviços.
Comparação das versões do Cloud Composer
A tabela seguinte apresenta as principais diferenças entre o Cloud Composer 1, o Cloud Composer 2 e o Cloud Composer 3.
Funcionalidade | Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3 |
---|---|---|---|
Versão da imagem | composer-1.b.c-airflow-x.y.z |
composer-2.b.c-airflow-x.y.z |
composer-3-airflow-x.y.z-build.t |
Versões do Airflow | Airflow 1.10.* e Airflow 2 | Airflow 2 | Airflow 2 |
Versões do Python | 3.8.12 | 3.11.8 (3.11.5 e 3.8.12 nas versões anteriores) | 3.11.8 |
Cluster do ambiente | Cluster do Google Kubernetes Engine baseado em rotas ou nativo da VPC no modo padrão | Cluster do Google Kubernetes Engine no modo Autopilot com VPC nativa | O cluster do ambiente não está implementado no seu projeto. |
Escalabilidade horizontal | Pode ajustar o número de nós no cluster do ambiente. Isto altera o número de trabalhadores do Airflow. Pode ajustar o número de programadores do Airflow. |
Escalar automaticamente o número de trabalhadores do Airflow com base na procura. Pode definir e alterar os limites superior e inferior do número de trabalhadores. Pode ajustar o número de programadores e acionadores do Airflow |
Escalar automaticamente o número de trabalhadores do Airflow com base na procura. Pode definir e alterar os limites superior e inferior do número de trabalhadores. Pode ajustar o número de programadores, acionadores e processadores de DAGs do Airflow |
Dimensionamento vertical | Pode definir tipos de máquinas para nós de cluster, servidor Web do Airflow e base de dados quando cria um ambiente. Pode alterar os tipos de máquinas para o servidor Web e a base de dados do Airflow. | Pode definir e alterar a configuração das cargas de trabalho: parâmetros de CPU, memória e armazenamento para trabalhadores, programadores, servidor Web e tamanho do ambiente do Airflow. | Pode definir e alterar a configuração das cargas de trabalho: parâmetros de CPU, memória e armazenamento para trabalhadores, programadores, servidor Web, processadores de DAG e o 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 | Modelo de preços do Cloud Composer 3 |
Controlo de acesso | Funções do Cloud Composer 1 | Funções do Cloud Composer. Usa a Workload Identity Federation para o GKE e requer autorizações adicionais para a conta de agente de serviço do Cloud Composer. | Funções do Cloud Composer. Usa a federação de identidade da carga de trabalho para o GKE. Não são necessárias autorizações adicionais |
Acesso através da federação de identidade da força de trabalho | Não suportado | Suportado | Suportado |
Ambientes altamente resilientes | Não suportado | Suportado | Suportado |
Política de retenção de bases de dados | Não suportado | Ainda indisponível | Suportado |
Redes IP privadas | Intercâmbios da VPC | Private Service Connect | Configuração de rede simplificada. Pode ser alterado entre IP público e privado num ambiente existente. |
VPC Service Controls | Suportado | Suportado | Suportado |
Executores do Airflow | Celery Executor | Celery Executor | CeleryKubernetes Executor |
Acionador do Airflow (operadores adiáveis) | Não suportado | Suportado | Suportado |
Conta de serviço personalizada para KubernetesPodOperator | Suportado | Suportado | Não suportado |
CMEK | Suportado | Suportado | Suportado |
Controlos de acesso ao servidor Web | Suportado | Suportado | Suportado |
Reiniciar o servidor Web | Suportado | Suportado | Suportado |
Plug-ins de servidor Web | Suportado em ambientes do Airflow 1 com a serialização de DAGs desativada. | Suportado | Suportados, os plug-ins podem ser desativados e ativados a pedido. |
Plug-ins de agendamento | Não suportado | Suportado | Não suportado |
TimeTables | Apenas integrada | Personalizado e integrado | Apenas integrada |
Pacotes PyPI personalizados do Scheduler | Não suportado | Suportado | Não suportado |
Instalar plug-ins personalizados | Suportado | Suportado | Suportado |
Operações de manutenção | Todas as tarefas podem ser afetadas. | As tarefas que demoram menos de 55 minutos a executar não são afetadas. | As tarefas que demoram menos de 24 horas a executar não são afetadas. |
Armazenar instantâneos | Suportado para as versões 2.x e 1.10.15 do Airflow | Suportado | Suportado |
A carregar resumos | Não suportado | Suportado | Suportado |
Instantâneos agendados | Não suportado | Suportado | Suportado |
Contentor do ambiente personalizado | Não suportado | Suportado | Suportado |
Guardar registos de tarefas do Airflow apenas no Cloud Logging | Não suportado | Suportado | Suportado |
Integração da linhagem de dados | Não suportado | Suportado | Suportado |
Ferramenta CLI de desenvolvimento local do Composer | Não suportado | Suportado | Suportado |
Imagens do Cloud Composer
Para executar o Apache Airflow, o Cloud Composer cria imagens Docker que agrupam lançamentos 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 a montante. Cada imagem do Cloud Composer contém pacotes pré-instalados, juntamente com alterações do Airflow específicas do Cloud Composer.
A Google lança periodicamente novas imagens do Cloud Composer:
No Cloud Composer 3, as imagens incluem novas compilações das versões do Airflow suportadas. Pode selecionar uma versão do Airflow e uma compilação que quer usar. O seu ambiente recebe melhorias do Cloud Composer automaticamente.
No Cloud Composer 2 e no Cloud Composer 1, as imagens incluem melhorias do Cloud Composer e novas compilações das versões do Airflow suportadas. Para receber melhorias do Cloud Composer, atualize o seu ambiente para uma versão posterior do Cloud Composer.
Descontinuação e apoio técnico de versões
Composer 3
A Google suporta uma compilação do Airflow durante um determinado período após o respetivo lançamento:
0 a 12 meses a partir da data de lançamento: os ambientes do Cloud Composer 3 que executam esta compilação do Airflow são suportados.
12 ou mais meses após a data de lançamento: os ambientes do Cloud Composer 3 que executam estas versões não são suportados.
Quando uma compilação do Airflow deixa de ser suportada, os ambientes que executam esta compilação do Airflow também deixam de ser suportados e são totalmente geridos pelo utilizador.
Os ambientes funcionam com compilações do Airflow suportadas e não suportadas da seguinte forma:
Pode criar ambientes com todas as compilações do Airflow suportadas.
Pode continuar a usar um ambiente com uma compilação do Airflow que já não é suportada. O ambiente continua a funcionar, pode continuar a usá-lo e pode atualizá-lo para uma compilação do Airflow suportada.
Em alguns casos, uma atualização para uma versão ou uma compilação posterior do Airflow é a única solução disponível para uma vulnerabilidade de segurança.
Composer 2
A Google suporta 2 versões do Cloud Composer durante um período após o lançamento da versão:
0 a 12 meses a partir da data de lançamento: os ambientes do Cloud Composer 2 que executam estas versões são suportados.
Mais de 12 meses após a data de lançamento: os ambientes do Cloud Composer 2 que executam estas versões não são suportados.
Pode usar as versões do Cloud Composer após a data em que deixam de ser suportadas. Por exemplo, se o seu ambiente se basear numa versão do Cloud Composer que já passou o período de apoio técnico, o ambiente continua a funcionar e pode continuar a usá-lo. Neste caso, recomendamos que atualize o seu ambiente para uma versão suportada.
Composer 1
Foram lançadas novas versões do Cloud Composer 1 até ao final de março de 2023. Todas as versões 1 do Cloud Composer lançadas seguem a mesma política de descontinuação de versões que o Cloud Composer 2 e são suportadas de acordo com a mesma.
Suporte da versão do Airflow
O Airflow segue o esquema de controlo de versões semântico do software. Cada versão do Airflow tem uma versão principal, secundária e de patch.
Composer 3
No Cloud Composer 3, as novas versões e compilações do Airflow ficam disponíveis à medida que o tempo passa.
O seu ambiente pode funcionar com todas as versões e compilações anteriores do Airflow e recebe atualizações dos respetivos componentes de infraestrutura automaticamente. Cada versão e compilação é suportada conforme descrito em Descontinuação e suporte de versões, e pode optar por atualizar a versão do Airflow para uma versão ou compilação posterior.
Composer 2
Para ver uma lista das versões do Airflow suportadas em cada versão do Cloud Composer, consulte a lista de versões do Cloud Composer.
Em cada lançamento, o Cloud Composer 2 suporta duas versões secundárias do Airflow 2.
Por exemplo, o Cloud Composer 2.4.0 suporta o Airflow 2.4.* e o Airflow 2.5.*.
Para cada versão secundária do Airflow 2, o Cloud Composer suporta uma versão de patch.
Por exemplo, para o Airflow 2.4.*, O Cloud Composer suporta o Airflow 2.4.3.
Quando uma nova versão de patch do Airflow 2 fica disponível 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 de patch anterior é, em seguida, removida numa das próximas versões.
Por exemplo, o Cloud Composer 2.3.4 suporta o Airflow 2.5.1 e o Airflow 2.5.3.
O Cloud Composer pode ignorar algumas versões de patches do Airflow entre as versões do Cloud Composer. Além disso, se existirem problemas funcionais, de qualidade ou de desempenho com uma versão de patch específica do Airflow, o Cloud Composer também pode ignorar esta versão.
Por exemplo, a versão 2.1.3 do Airflow é ignorada e a versão 2.1.4 do Airflow está disponível.
Uma versão do Cloud Composer que execute uma versão estável do Airflow pode incluir atualizações do Airflow que são retroportadas de uma versão posterior do Airflow.
Composer 1
A versão mais recente do Airflow suportada no Cloud Composer 1 é o Airflow 2.4.3.
Apenas o Cloud Composer 1 suporta o Airflow 1.10.15, que é a versão mais recente do Airflow 1 lançada.
Esquema de versão do Cloud Composer
Composer 3
O esquema de controlo de versões do Cloud Composer 3 captura as versões e as compilações do Airflow:
composer-3-airflow-x.y.z-build.t
Onde:
composer-3
é a versão principal do Cloud Composer.airflow-x.y.z.build.t
é a versão e a compilação do Airflow. Cada lançamento seguinte da mesma versão do Airflow no Cloud Composer 3 tem um número de compilação superior. O número de compilação é definido pelo Cloud Composer e não pelo projeto de código aberto do Airflow.
Composer 2
O esquema de controlo de versões de imagens do Cloud Composer 2 capta as versões do Cloud Composer e do Airflow:
composer-2.b.c-airflow-x.y.z
Onde:
composer-2.b.c
denota a versão secundária e de patch das personalizações geridas pelo Cloud Composer no Cloud Composer 2. Regra geral, as versões secundárias do Cloud Composer correspondem a alterações significativas na funcionalidade em comparação com a versão secundária anterior, como quando o conjunto disponível de versões do Airflow é alterado. As versões de patch são atualizadas em lançamentos subsequentes.airflow-x.y.z
é o lançamento do Airflow, que indica a versão principal, secundária e de patch do Airflow usada numa imagem específica do Cloud Composer.
Composer 1
O esquema de controlo de versões de imagens do Cloud Composer 1 capta as versões do Cloud Composer e do Airflow:
composer-1.b.c-airflow-x.y.z
Onde:
composer-1.b.c
é a versão das personalizações geridas pelo Cloud Composerairflow-x.y.z
é o lançamento do Airflow
Aliases de versões
Os alias de versão funcionam da seguinte forma:
O Cloud Composer resolve o alias de versão para o formato completo quando cria o seu ambiente:
- Todos os alias de versão tornam-se
composer-3-airflow-x.y.z-build.t
no Cloud Composer 3. - Todos os alias de versão tornam-se
composer-a.b.c-airflow-x.y.z
no Cloud Composer 2 e no Cloud Composer 1.
- Todos os alias de versão tornam-se
No Cloud Composer 3, a utilização de um alias de versão, como
composer-3-airflow-x.y
não atualiza automaticamente a versão e a compilação do Airflow do seu ambiente. O ambiente permanece na mesma compilação e versão do Airflow até o atualizar. O ambiente continua a receber upgrades automáticos da infraestrutura, como habitualmente.No Cloud Composer 2 e no Cloud Composer 1, a utilização de um alias de versão, como
composer-a-airflow-x.y.z
não oferece atualizações automáticas para um ambiente. O ambiente permanece na mesma versão do Cloud Composer e do Airflow até o atualizar.
Alias da versão 3 do Cloud Composer
O Cloud Composer 3 suporta os seguintes alias de versão:
Alias | Versão do Airflow |
---|---|
composer-3-airflow-2 |
Versão e compilação mais recentes do Airflow 2 |
composer-3-airflow-x.y |
Versão e compilação mais recentes do Airflow nas versões principais e secundárias x.y |
composer-3-airflow-x.y.z |
Compilação mais recente da versão especificada do Airflow |
Alias da versão do Cloud Composer 2
O Cloud Composer 2 suporta os seguintes alias de versão:
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 dentro das versões principais e secundárias x.y |
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 | Versão mais recente do Airflow disponível nas versões principais e secundárias do x.y |
Alias da versão 1 do Cloud Composer
O Cloud Composer 1 suporta os seguintes alias de versão:
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 dentro das versões principais e secundárias x.y |
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 | Versão mais recente do Airflow disponível nas versões principais e secundárias do x.y . |
Os seguintes alias de versão apontam para o Cloud Composer 2. Pode continuar a usá-los, mas pondere mudar para aliases para a sua versão do Cloud Composer.
composer-latest-airflow-x.y
é igual acomposer-2-airflow-x.y
.composer-latest-airflow-x.y.z
é igual acomposer-2-airflow-x.y.z
.
Argumentos de versão na CLI do Google Cloud
Quando cria ou atualiza um ambiente do Cloud Composer através da CLI do Google Cloud, pode especificar as versões do Cloud Composer e do Airflow:
Composer 3
O argumento
--image-version
especifica a versão e a compilação do Airflow no formatocomposer-3-airflow-x.y.z-build.t
. Pode usar alias de versão, que são resolvidos pela CLI do Google Cloud no formato completo.--airflow-version
especifica a versão do Airflow nos seguintes formatos:O formato
x.y.z
destina-se à compilação mais recente da versão especificada do Airflow. Este formato é igual ao alias da versãocomposer-3-airflow-x.y.z
.O formato
x.y
destina-se à compilação mais recente do Airflow disponível nas versões principais e secundáriasx.y
. Este formato é igual ao alias da versãocomposer-3-airflow-x.y
.x.y.z-build.t
é a versão e a compilação especificadas do Airflow. Este formato é igual acomposer-3-airflow-x.y.z-build.t
.
Composer 2
O argumento
--image-version
especifica o Cloud Composer 2 e as versões do Airflow:- O formato
composer-a.b.c-airflow-x.y.z
cria um ambiente com as versões especificadas do Cloud Composer e do Airflow. - Os alias de versão são resolvidos primeiro para o formato
composer-a.b.c-airflow-x.y.z
e, em seguida, criam um ambiente com as versões especificadas do Cloud Composer 2 e do Airflow.
- O formato
--airflow-version
especifica a versão do Airflow nos seguintes formatos:O formato
x.y.z
destina-se à versão mais recente do Cloud Composer 2 e à versão especificada do Airflow. Este formato é igual ao alias da versãocomposer-2-airflow-x.y.z
.O formato
x.y
destina-se à versão mais recente do Cloud Composer 2 e à versão mais recente do Airflow disponível nas versões principais e secundárias dox.y
. Este formato é igual ao alias da versãocomposer-2-airflow-x.y
.
Composer 1
O argumento
--image-version
especifica o Cloud Composer 1 e as versões do Airflow:- O formato
composer-a.b.c-airflow-x.y.z
cria um ambiente com as versões especificadas do Cloud Composer e do Airflow. - Os alias de versão são resolvidos primeiro para o formato
composer-a.b.c-airflow-x.y.z
e, em seguida, criam um ambiente com as versões especificadas do Cloud Composer 1 e do Airflow.
- O formato
--airflow-version
especifica a versão do Airflow nos seguintes formatos:O formato
x.y.z
destina-se à versão mais recente do Cloud Composer 1 e à versão especificada do Airflow. Este formato é igual ao alias da versãocomposer-1-airflow-x.y.z
.O formato
x.y
destina-se à versão mais recente do Cloud Composer 1 e à versão mais recente do Airflow disponível nas versões principais e secundáriasx.y
. Este formato é igual ao alias da versãocomposer-1-airflow-x.y
.