Executar um DAG do Apache Airflow no Cloud Composer 3
Cloud Composer 3 | Cloud Composer 2 | Cloud Composer 1
Neste guia de início rápido, mostramos como criar um ambiente do Cloud Composer e executar um DAG do Apache Airflow no Cloud Composer 3.
Se você não conhece o Airflow, consulte o tutorial sobre conceitos do Airflow na documentação do Apache Airflow para mais informações sobre conceitos, objetos e uso do Airflow.
Se você quiser usar a Google Cloud CLI, consulte Executar um DAG do Apache Airflow no Cloud Composer (Google Cloud CLI).
Se você quiser criar um ambiente usando o Terraform, consulte Criar ambientes (Terraform).
Antes de começar
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Verify that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Cloud Composer API.
-
Para conseguir as permissões necessárias a fim de concluir o guia de início rápido, peça ao administrador para conceder a você os seguintes papéis do IAM no projeto:
-
Para ver, criar e gerenciar o ambiente do Cloud Composer:
-
Administrador de objetos do armazenamento e do ambiente (
roles/composer.environmentAndStorageObjectAdmin
) -
Usuário da conta de serviço (
roles/iam.serviceAccountUser
)
-
Administrador de objetos do armazenamento e do ambiente (
-
Para conferir os registros:
Visualizador de registros (
roles/logging.viewer
)
Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Também é possível conseguir as permissões necessárias usando papéis personalizados ou outros papéis predefinidos.
-
Para ver, criar e gerenciar o ambiente do Cloud Composer:
Crie uma conta de serviço, conforme descrito na documentação do Identity and Access Management.
Conceda um papel a ela, conforme descrito na documentação do Identity and Access Management. O papel necessário é Worker do Composer (
composer.worker
).No console do Google Cloud , acesse a página Criar ambiente.
No campo Nome, use
example-environment
.Na lista suspensa Local, selecione uma região para o ambiente do Cloud Composer. Este guia usa a região
us-central1
.Para outras opções de configuração do ambiente, use os padrões fornecidos.
Clique em Criar e aguarde a criação do ambiente.
Quando isso acontecer, uma marca de seleção verde será exibida ao lado do nome do ambiente.
- Cria um DAG,
composer_sample_dag
. Esse DAG é executado todos os dias. - Executa uma tarefa,
print_dag_run_conf
. A tarefa imprime a configuração da execução do DAG usando o operador bash. No console Google Cloud , acesse a página Ambientes.
Na lista de ambientes, clique no nome do seu ambiente,
example-environment
. A página Detalhes do ambiente é aberta.Clique em Abrir pasta de DAGs. A página Detalhes do bucket é aberta.
Clique em Fazer upload de arquivos e selecione sua cópia de
quickstart.py
.Para fazer upload do arquivo, clique em Abrir.
- Analisa o arquivo DAG que você enviou. Pode levar alguns minutos para que o DAG fique disponível para o Airflow.
- Adiciona o DAG à lista de DAGs disponíveis.
- Executa o DAG de acordo com a programação fornecida no arquivo DAG.
Aguarde cerca de cinco minutos para que o Airflow processe o arquivo DAG que você enviou antes e conclua a primeira execução do DAG (explicada mais adiante).
No console Google Cloud , acesse a página Ambientes.
Na lista de ambientes, clique no nome do seu ambiente,
example-environment
. A página Detalhes do ambiente é aberta.Acesse a guia DAGs.
Verifique se o DAG
composer_quickstart
está presente na lista de DAGs.Figura 1. A lista de DAGs mostra o DAG composer_quickstart (clique para ampliar) Na guia DAGs, clique em
composer_quickstart
. A guia Execuções do DAG é aberta.Na lista de execuções de DAG, clique na primeira entrada.
Figura 2. A lista de execuções do DAG composer_quickstart (clique para ampliar) Os detalhes da execução do DAG são mostrados, detalhando as informações sobre tarefas individuais do DAG de exemplo.
Figura 3. A lista de tarefas executadas na execução do DAG (clique para ampliar) A seção Registros da execução do DAG lista os registros de todas as tarefas na execução do DAG. É possível conferir a saída do comando
echo
nos registros.Figura 4. Registros da tarefa print_dag_run_conf (clique para ampliar) Exclua o ambiente do Cloud Composer:
No console Google Cloud , acesse a página Ambientes.
Selecione
example-environment
e clique em Excluir.Aguarde até o ambiente ser excluído.
Exclua o bucket do ambiente. A exclusão do ambiente do Cloud Composer não exclui o bucket.
No console Google Cloud , acesse a página Storage > Navegador.
Selecione o bucket do ambiente e clique em Excluir. Por exemplo, ele pode ter o nome
us-central1-example-environ-c1616fe8-bucket
.
Criar uma conta de serviço de um ambiente
Ao criar um ambiente, você especifica uma conta de serviço. Essa conta de serviço é chamada de conta de serviço do ambiente. Seu ambiente usa essa conta de serviço para realizar a maioria das operações.
A conta de serviço do ambiente não é uma conta de usuário. Uma conta de serviço é um tipo especial de conta usada por um aplicativo ou uma instância de máquina virtual (VM), não uma pessoa.
Para criar uma conta de serviço para seu ambiente:
Criar um ambiente
Criar um arquivo DAG
Um DAG do Airflow é uma coleção de tarefas organizadas que você quer programar e executar. Os DAGs são definidos em arquivos Python padrão.
Este guia usa um exemplo de DAG do Airflow definido no arquivo quickstart.py
.
O código Python neste arquivo faz o seguinte:
Salve uma cópia do arquivo quickstart.py
na sua máquina local:
Faça upload do arquivo DAG no bucket do ambiente.
Cada ambiente do Cloud Composer tem um bucket do Cloud Storage associado. O Airflow no Cloud Composer agenda somente
DAGs que estão na pasta /dags
nesse bucket.
Para agendar o DAG, faça upload de quickstart.py
da máquina local para a
pasta /dags
do ambiente:
Ver o DAG
Depois de fazer o upload do arquivo DAG, o Airflow faz o seguinte:
Verifique se o DAG foi processado sem erros e está disponível no Airflow. Para isso, confira na interface do usuário do DAG. A interface do usuário do DAG é a interface do Cloud Composer para visualizar informações do DAG no console Google Cloud . O Cloud Composer também oferece acesso à interface do Airflow, que é uma interface da Web nativa do Airflow.
Ver detalhes da execução do DAG
Uma única execução de um DAG é chamada de execução de DAG. O Airflow executa imediatamente uma execução de DAG para o DAG de exemplo porque a data de início no arquivo DAG está definida como "ontem". Dessa forma, o Airflow acompanha a programação do DAG especificado.
O DAG de exemplo contém uma tarefa, print_dag_run_conf
, que executa o comando echo
no console. Esse comando gera metainformações sobre o DAG
(identificador numérico da execução do DAG).
Limpar
Para evitar cobranças na conta do Google Cloud pelos recursos usados nesta página, siga as etapas abaixo.
Exclua os recursos usados neste tutorial:
A seguir