Como configurar a classe de ambiente do Amazon MWAA - Amazon Managed Workflows for Apache Airflow

Como configurar a classe de ambiente do Amazon MWAA

A classe de ambiente que você escolhe para seu ambiente Amazon MWAA determina o tamanho dos contêineres AWS Fargate gerenciados pela AWS nos quais o Executor Celery é executado e do banco de dados de metadados Amazon Aurora PostgreSQL gerenciado pela AWS em que os programadores do Apache Airflow criam instâncias de tarefas. Este tópico descreve cada classe de ambiente do Amazon MWAA e como atualizar a classe de ambiente no console do Amazon MWAA.

Funcionalidades do ambiente

A seção a seguir contém as tarefas simultâneas padrão do Apache Airflow, a Memória de Acesso Aleatório (RAM) e as unidades de processamento virtual centralizadas (vCPUs) para cada classe de ambiente. As tarefas simultâneas listadas pressupõem que a simultaneidade de tarefas não exceda a capacidade de operadores do Apache Airflow no ambiente.

Na tabela a seguir, a capacidade do DAG se refere às definições do DAG, não às execuções, e pressupõe que seus DAGs sejam dinâmicos em um único arquivo Python e gravados com as práticas recomendadas do Apache Airflow.

As execuções de tarefas dependem de quantas são agendadas simultaneamente, pressupondo que o número de execuções do DAG, definidas para iniciar ao mesmo tempo, não exceda o padrão max_dagruns_per_loop_to_schedule, bem como o tamanho e o número de operadores, conforme detalhado neste tópico.

mw1.micro
  • Até 25 DAG de capacidade

  • 3 tarefas simultâneas (por padrão)

  • Componentes:

    • Servidores Web: 1 vCPU, 3 GB de RAM

    • Operador e agendador: 1 vCPU, 3 GB de RAM

    • Banco de dados: 2 vCPUs, 4 GB de RAM

      nota

      mw1.micro não oferece suporte ao ajuste de escala automático.

mw1.small
  • Até 50 DAG de capacidade

  • 5 tarefas simultâneas (por padrão)

  • Componentes:

    • Servidores Web: 1 vCPU, 2 GB de RAM cada

    • Trabalhadores: 1 vCPU, 2 GB de RAM cada

    • Programadores: 1 vCPU, 2 GB de RAM cada

    • Banco de dados: 2 vCPUs, 4 GB de RAM

mw1.medium
  • Até 250 DAG de capacidade

  • 10 tarefas simultâneas (por padrão)

  • Componentes:

    • Servidores Web: 1 vCPU, 2 GB de RAM cada

    • Trabalhadores: 2 vCPUs, 4 GB de RAM cada

    • Programadores: 2 vCPUs, 4 GB de RAM cada

    • Banco de dados: 2 vCPUs, 8 GB de RAM

mw1.large
  • Até 1000 DAG de capacidade

  • 20 tarefas simultâneas (por padrão)

  • Componentes:

    • Servidores Web: 2 vCPU, 4 GB de RAM cada

    • Trabalhadores: 4 vCPUs, 8 GB de RAM cada

    • Programadores: 4 vCPUs, 8 GB de RAM cada

    • Banco de dados: 2 vCPUs, 8 GB de RAM

mw1.xlarge
  • Até 2000 DAG de capacidade

  • 40 tarefas simultâneas (por padrão)

  • Componentes:

    • Servidores Web: 4 vCPU, 12 GB de RAM cada

    • Trabalhadores: 8 vCPUs, 24 GB de RAM cada

    • Programadores: 8 vCPUs, 24 GB de RAM cada

    • Banco de dados: 4 vCPUs, 32 GB de RAM

mw1.2xlarge
  • Até 4000 DAG de capacidade

  • 80 tarefas simultâneas (por padrão)

  • Componentes:

    • Servidores Web: 8 vCPU, 24 GB de RAM cada

    • Trabalhadores: 16 vCPUs, 48 GB de RAM cada

    • Programadores: 16 vCPUs, 48 GB de RAM cada

    • Banco de dados: 8 vCPUs, 64 GB de RAM

Você pode usar celery.worker_autoscale para aumentar as tarefas por operador. Para obter mais informações, consulte Exemplo de caso de uso de alto desempenho.

Agendadores do Apache Airflow

A seção a seguir contém as opções de programadores do Apache Airflow disponíveis no Amazon MWAA e como o número de programadores afeta o número de acionadores.

No Apache Airflow, um acionador gerencia tarefas que são adiadas até que certas condições especificadas usando um acionador sejam atendidas. No Amazon MWAA, o acionador é executado com o programador na mesma tarefa do Fargate. Aumentar a contagem de programadores aumenta correspondentemente o número de acionadores disponíveis, otimizando a forma como o ambiente gerencia tarefas adiadas. Isso garante o manuseio eficiente das tarefas, programando-as prontamente para serem executadas quando as condições forem atendidas.

Apache Airflow v3
  • v3 - Para ambientes maiores que mw1.micro, aceita valores de 2 a 5. O padrão é 2 para todos os tamanhos de ambiente, exceto mw1.micro, cujo padrão é 1.

Apache Airflow v2
  • v2 - Para ambientes maiores que mw1.micro, aceita valores de 2 a 5. O padrão é 2 para todos os tamanhos de ambiente, exceto mw1.micro, cujo padrão é 1.