Amazon MWAA 環境クラスの構成 - Amazon Managed Workflows for Apache Airflow

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon MWAA 環境クラスの構成

Amazon MWAA 環境用に選択した環境クラスによって、Celery Executor が実行される AWSマネージド AWS Fargate コンテナのサイズと、Apache Airflow スケジューラがタスクインスタンスを作成する AWSマネージド Amazon Aurora PostgreSQL メタデータデータベースが決まります。このトピックでは、各 Amazon MWAA 環境クラスと、Amazon MWAA コンソールで環境クラスを更新する方法について説明します。

環境機能

次のセクションには、各環境クラスのデフォルトの同時 Apache Airflow タスク、ランダムアクセスメモリ (RAM)、および仮想中央処理装置 (vCPUs) が含まれています。記載されている同時実行タスクは、タスクの同時実行性が環境内の Apache Airflow ワーカーのキャパシティを超えないことを前提としています。

次の表で、DAG キャパシティとは、実行ではなく DAG 定義を指し、DAG が 1 つの Python ファイル内で 動的 であり、「Apache Airflow のベストプラクティス」に従って記述されていることを前提としています。

タスクの実行は、同時にスケジュールされる DAG の数によって異なり、同時に開始するように設定されている DAG 実行の数と、このトピックで詳しく説明するワーカーのサイズと数がデフォルト max_dagruns_per_loop_to_schedule を超えないことを前提としています。

mw1.micro
  • 最大 25 個の DAG 容量

  • 3 つの同時タスク (デフォルト)

  • コンポーネント:

    • ウェブサーバー: 1 vCPU、3GB RAM

    • ワーカーとスケジューラ: 1 vCPU、3GB RAM

    • データベース: 2 vCPU、4GB RAM

      注記

      mw1.micro は Auto Scaling をサポートしていません。

mw1.small
  • 最大 50 個の DAG 容量

  • 同時 5 タスク (デフォルト)

  • コンポーネント:

    • ウェブサーバー: 各 1 vCPU、2GB RAM

    • ワーカー: 各 vCPU 1 個、2GB RAM

    • スケジューラ: 各 1 vCPU、2GB RAM

    • データベース: 2 vCPU、4GB RAM

mw1.medium
  • 最大 250 個の DAG 容量

  • 同時 10 タスク (デフォルト)

  • コンポーネント:

    • ウェブサーバー: 各 1 vCPU 2GB RAM

    • ワーカー: 各 2 vCPU 4GB RAM

    • スケジューラ: 各 2 vCPU 4GB RAM

    • データベース: 2 vCPU 8GB RAM

mw1.large
  • 最大 1,000 個の DAG 容量

  • 同時 20 タスク (デフォルト)

  • コンポーネント:

    • ウェブサーバー: 各 2 vCPU 4GB RAM

    • ワーカー: 各 4 vCPU 8GB RAM

    • スケジューラ: 各 4 vCPU 8GB RAM

    • データベース: 2 vCPU 8GB RAM

mw1.xlarge
  • 最大 2,000 個の DAG 容量

  • 同時 40 タスク (デフォルト)

  • コンポーネント:

    • ウェブサーバー: 各 4 vCPU 12GB RAM

    • ワーカー: 各 8 vCPU 24GB RAM

    • スケジューラ: 各 8 vCPU 24GB RAM

    • データベース: 4 vCPU 32GB RAM

mw1.2xlarge
  • 最大 4,000 個の DAG 容量

  • 同時 80 タスク (デフォルト)

  • コンポーネント:

    • ウェブサーバー: 各 8 vCPU 24GB RAM

    • ワーカー: 各 16 vCPU 48GB RAM

    • スケジューラ: 各 16 vCPU 48GB RAM

    • データベース: 8 vCPU 64GB RAM

celery.worker_autoscale を使用して、作業者 1 人あたりのタスク数を増やすことができます。詳細については、「高パフォーマンスのユースケースの例」を参照してください。

Apache Airflow スケジューラー

以下のセクションでは、Amazon MWAA で使用できる Apache Airflow スケジューラーオプションと、スケジューラーの数がトリガーの数にどのように影響するかについて説明します。

Apache Airflow では、トリガー を使用して指定された特定の条件が満たされるまでタスクを延期する トリガー がタスクを管理します。Amazon MWAA では、トリガーは同じ Fargate タスクでスケジューラーと並行して実行されます。スケジューラーの数を増やすと、それに応じて使用可能なトリガーの数も増え、遅延されたタスクを環境がどのように管理するかが最適化されます。これにより、タスクを効率的に処理できるようになり、条件が満たされた時点でタスクを迅速に実行するようにスケジューリングできます。

Apache Airflow v2
  • v2 - mw1.micro より大きい環境では、 は から 2までの値を受け入れます5。mw1.micro を除くすべての環境サイズ2で、デフォルトで に設定されます1