Faire évoluer des environnements

Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3

Cette page explique comment effectuer le scaling d'environnements Cloud Composer.

Autres pages sur le scaling :

Scaling vertical et horizontal

Options de scaling horizontal :

  • Ajustez les nombres minimal et maximal de nœuds de calcul.
  • Ajustez le nombre de programmeurs, de processeurs DAG et les déclencheurs.

Options de scaling vertical :

  • Ajuster le nœud de calcul, le programmeur, le déclencheur le processeur DAG, et le serveur Web. d'échelle et de performances.
  • Ajustez la taille de l'environnement.

Limites de ressources

Composant Nombre minimal Nombre maximal Nombre minimal de vCPU Nombre maximal de vCPU Pas de vCPU minimum Mémoire minimale (Go) Mémoire maximale (Go) Pas de mémoire minimale (Go) Mémoire minimale pour 1 vCPU (Go) Mémoire maximale pour 1 vCPU (Go) Espace de stockage minimal (Go) Espace de stockage maximal (Go) Étape minimale de l'espace de stockage (Go)
Programmeurs 1 3 0,5 1 0.5 0,5 8 0,25 1 8 0 100 1
Déclencheurs 0 10 0,5 1 0.5 0,5 8 0,25 1 8 - - -
Serveur Web - - 0,5 32 0, 5, 1 ou un multiple de 2 1 256 0,25 1 8 0 100 1
Nœuds de calcul 1 100 0,5 32 0, 5, 1 ou un multiple de 2 1 256 0,25 1 8 0 100 1
Processeurs DAG 1 3 0,5 32 0, 5, 1 ou un multiple de 2 1 256 0,25 1 8 0 100 1

Ajuster les paramètres des nœuds de calcul

Vous pouvez définir le nombre minimal et maximal de nœuds de calcul pour votre environnement. Cloud Composer effectue un scaling automatique de votre environnement dans les limites définies. Vous pouvez ajuster ces limites à tout moment.

Vous pouvez spécifier la quantité de processeurs, de mémoire et d'espace disque utilisés par Airflow. les nœuds de calcul de votre environnement. Vous pouvez ainsi améliorer les performances cloud, en plus du scaling horizontal fourni par l'utilisation de plusieurs les nœuds de calcul.

Console

  1. Dans la console Google Cloud, accédez à la page Environnements.

    Accéder à la page Environnements

  2. Dans la liste des environnements, cliquez sur le nom de votre environnement. La page Détails de l'environnement s'ouvre.

  3. Accédez à l'onglet Configuration de l'environnement.

  4. Dans l'élément Ressources > Configuration des charges de travail : cliquez sur Modifier.

  5. Dans le volet Configuration des charges de travail, ajustez les paramètres pour Airflow. nœuds de calcul:

    • Dans le champ Nombre minimal de nœuds de calcul, spécifiez le nombre de nœuds de calcul Airflow que votre environnement doit exécuter en permanence. Le nombre de nœuds de calcul de votre environnement ne descend pas en dessous de ce nombre pendant la le fonctionnement normal de l'environnement, même si le nombre peuvent gérer la charge.

    • Dans le champ Nombre maximal de nœuds de calcul, spécifiez le nombre maximal de nœuds de calcul Airflow que votre environnement peut exécuter. Le nombre de nœuds de calcul dans votre environnement ne dépasse jamais ce nombre, même si un nombre plus élevé de nœuds de calcul est nécessaire pour gérer la charge.

    • Dans les champs Processeur, Mémoire et Stockage, indiquez le nombre de processeurs, de mémoire et de stockage pour les nœuds de calcul Airflow. Chaque nœud de calcul utilise la quantité de ressources spécifiée.

  6. Cliquez sur Enregistrer.

gcloud

Les paramètres des nœuds de calcul Airflow suivants sont disponibles:

  • --min-workers: nombre de nœuds de calcul Airflow que votre environnement doit s'exécuter en permanence. Le nombre de nœuds de calcul dans votre environnement ne descend pas en dessous ce nombre, même si moins de nœuds peuvent gérer la charge.
  • --max-workers: nombre maximal de nœuds de calcul Airflow peut s'exécuter. Le nombre de nœuds de calcul dans votre environnement ne dépasse jamais cette valeur, même si un nombre plus élevé de nœuds de calcul est nécessaire pour gérer la charge.
  • --worker-cpu: nombre de processeurs pour un nœud de calcul Airflow.
  • --worker-memory: quantité de mémoire pour un nœud de calcul Airflow.
  • --worker-storage: quantité d'espace disque pour un nœud de calcul Airflow.

Exécutez la commande Google Cloud CLI suivante:

gcloud composer environments update ENVIRONMENT_NAME \
  --location LOCATION \
  --min-workers WORKERS_MIN \
  --max-workers WORKERS_MAX \
  --worker-cpu WORKER_CPU \
  --worker-memory WORKER_MEMORY \
  --worker-storage WORKER_STORAGE

Remplacez les éléments suivants :

  • ENVIRONMENT_NAME: nom de l'environnement.
  • LOCATION: région dans laquelle se trouve l'environnement.
  • WORKERS_MIN: nombre minimal de nœuds de calcul Airflow.
  • WORKERS_MAX: nombre maximal de nœuds de calcul Airflow.
  • WORKER_CPU: nombre de processeurs d'un nœud de calcul, en unités de vCPU.
  • WORKER_MEMORY: quantité de mémoire pour un nœud de calcul.
  • WORKER_STORAGE: taille de disque d'un nœud de calcul.

Exemple :

gcloud composer environments update example-environment \
  --location us-central1 \
  --min-workers 2 \
  --max-workers 6 \
  --worker-cpu 1 \
  --worker-memory 2 \
  --worker-storage 2

API

  1. Rédigez une requête API environments.patch.

  2. Dans cette requête :

    1. Dans le paramètre updateMask, spécifiez les champs que vous souhaitez mettre à jour. Par exemple, pour mettre à jour des nœuds de calcul, spécifiez Masque config.workloadsConfig.worker.cpu,config.workloadsConfig.worker.memoryGb,config.workloadsConfig.worker.storageGB,config.softwareConfig.workloadsConfig.worker.minCount,config.softwareConfig.workloadsConfig.worker.maxCount.

    2. Dans le corps de la requête, spécifiez les nouveaux paramètres des nœuds de calcul.

"config": {
  "workloadsConfig": {
    "worker": {
      "minCount": WORKERS_MIN,
      "maxCount": WORKERS_MAX,
      "cpu": WORKER_CPU,
      "memoryGb": WORKER_MEMORY,
      "storageGb": WORKER_STORAGE
    }
  }
}

Remplacez les éléments suivants :

  • ENVIRONMENT_NAME: nom de l'environnement.
  • LOCATION: région dans laquelle se trouve l'environnement.
  • WORKERS_MIN: nombre minimal de nœuds de calcul Airflow.
  • WORKERS_MAX: nombre maximal de nœuds de calcul Airflow.
  • WORKER_CPU: nombre de processeurs d'un nœud de calcul, en unités de vCPU.
  • WORKER_MEMORY: quantité de mémoire d'un nœud de calcul, en Go.
  • WORKER_STORAGE: taille de disque d'un nœud de calcul, en Go.

Exemple :

// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.workloadsConfig.worker.minCount,
// config.workloadsConfig.worker.maxCount
// config.workloadsConfig.worker.cpu,
// config.workloadsConfig.worker.memoryGb,
// config.workloadsConfig.worker.storageGB

"config": {
  "workloadsConfig": {
    "worker": {
      "minCount": 2,
      "maxCount": 6,
      "cpu": 1,
      "memoryGb": 2,
      "storageGb": 2
    }
  }
}

Terraform

Les champs suivants du bloc workloads_config.worker contrôlent Paramètres des nœuds de calcul Airflow. Chaque nœud de calcul utilise la quantité de ressources spécifiée.

  • worker.min_count: nombre de nœuds de calcul Airflow que votre environnement doit s'exécuter en permanence. Le nombre de nœuds de calcul dans votre environnement ne descend pas en dessous ce nombre, même si moins de nœuds peuvent gérer la charge.
  • worker.max_count: nombre maximal de nœuds de calcul Airflow peut s'exécuter. Le nombre de nœuds de calcul dans votre environnement ne dépasse jamais cette valeur, même si un nombre plus élevé de nœuds de calcul est nécessaire pour gérer la charge.
  • worker.cpu: nombre de processeurs pour un nœud de calcul Airflow.
  • worker.memory_gb: quantité de mémoire pour un nœud de calcul Airflow.
  • worker.storage_gb: quantité d'espace disque pour un nœud de calcul Airflow.
resource "google_composer_environment" "example" {
  provider = google-beta
  name = "ENVIRONMENT_NAME"
  region = "LOCATION"

  config {

    workloads_config {
      worker {
        min_count = WORKERS_MIN
        max_count = WORKERS_MAX
        cpu = WORKER_CPU
        memory_gb = WORKER_MEMORY
        storage_gb = WORKER_STORAGE
      }
    }

  }
}

Remplacez les éléments suivants :

  • ENVIRONMENT_NAME: nom de l'environnement.
  • LOCATION: région dans laquelle se trouve l'environnement.
  • WORKERS_MIN: nombre minimal de nœuds de calcul Airflow.
  • WORKERS_MAX: nombre maximal de nœuds de calcul Airflow.
  • WORKER_CPU: nombre de processeurs d'un nœud de calcul, en unités de vCPU.
  • WORKER_MEMORY: quantité de mémoire d'un nœud de calcul, en Go.
  • WORKER_STORAGE: taille de disque d'un nœud de calcul, en Go.

Exemple :

resource "google_composer_environment" "example" {
  provider = google-beta
  name = "example-environment"
  region = "us-central1"

  config {

    workloads_config {
      worker {
        min_count = 2
        max_count = 6
        cpu = 1
        memory_gb = 2
        storage_gb = 2
      }
    }

  }
}

Ajuster les paramètres du programmeur

Votre environnement peut exécuter plusieurs programmeurs Airflow à la fois. Utilisez plusieurs programmeurs pour répartir la charge entre les instances de programmeur, et ainsi améliorer les performances et la fiabilité.

Jusqu'à 3. de votre environnement.

L'augmentation du nombre de programmeurs n'améliore pas toujours les performances d'Airflow. Par exemple, le fait d'avoir un seul programmeur peut offrir de meilleures performances que deux. C'est le cas lorsque le programmeur supplémentaire n'est pas utilisé et consomme donc les ressources de votre environnement sans incidence sur les performances globales. Les performances réelles du programmeur dépendent du nombre de nœuds de calcul Airflow, du nombre de DAG et des tâches exécutées dans votre environnement, ainsi que de la configuration d'Airflow et de l'environnement.

Nous vous recommandons de commencer par deux programmeurs, puis de surveiller les performances de votre environnement. Si vous modifiez le nombre de programmeurs, vous pouvez toujours rétablir l'échelle du nombre de programmeurs d'origine de votre environnement.

Pour en savoir plus sur la configuration de plusieurs programmeurs, consultez la documentation Airflow.

Vous pouvez spécifier la quantité de processeurs, de mémoire et d'espace disque utilisés par Airflow. de votre environnement. Vous pouvez ainsi améliorer les performances votre environnement, en plus du scaling horizontal fourni par l'utilisation de plusieurs les planificateurs.

Console

  1. Dans la console Google Cloud, accédez à la page Environnements.

    Accéder à la page Environnements

  2. Dans la liste des environnements, cliquez sur le nom de votre environnement. La page Détails de l'environnement s'ouvre.

  3. Accédez à l'onglet Configuration de l'environnement.

  4. Dans l'élément Ressources > Configuration des charges de travail : cliquez sur Modifier.

  5. Dans le volet Configuration des charges de travail, ajustez les paramètres pour Airflow. programmeurs:

    • Dans la liste déroulante Nombre de programmeurs, sélectionnez le nombre de pour votre environnement.

    • Dans les champs Processeur, Mémoire et Stockage, indiquez le nombre de processeurs, de mémoire et de stockage pour les programmeurs Airflow. Chaque programmeur utilise la quantité de ressources spécifiée.

  6. Cliquez sur Enregistrer.

gcloud

Les paramètres suivants du programmeur Airflow sont disponibles:

  • --scheduler-count: nombre de programmeurs dans votre environnement.

  • --scheduler-cpu: nombre de processeurs pour un programmeur Airflow.

  • --scheduler-memory: quantité de mémoire pour un programmeur Airflow.

  • --scheduler-storage: quantité d'espace disque pour un programmeur Airflow.

Exécutez la commande Google Cloud CLI suivante:

gcloud composer environments update ENVIRONMENT_NAME \
  --location LOCATION \
  --scheduler-cpu SCHEDULER_CPU \
  --scheduler-memory SCHEDULER_MEMORY \
  --scheduler-storage SCHEDULER_STORAGE \
  --scheduler-count SCHEDULER_COUNT

Remplacez les éléments suivants :

  • ENVIRONMENT_NAME: nom de l'environnement.
  • LOCATION: région dans laquelle se trouve l'environnement.

  • SCHEDULER_CPU: nombre de processeurs pour un programmeur, en unités de vCPU.

  • SCHEDULER_MEMORY: quantité de mémoire pour un programmeur.

  • SCHEDULER_STORAGE: taille de disque pour un programmeur.

  • SCHEDULER_COUNT: nombre de programmeurs.

Exemple :

gcloud composer environments update example-environment \
  --location us-central1 \
  --scheduler-cpu 0.5 \
  --scheduler-memory 2.5 \
  --scheduler-storage 2 \
  --scheduler-count 2

API

  1. Rédigez une requête API environments.patch.

  2. Dans cette requête :

    1. Dans le paramètre updateMask, spécifiez le masque config.workloadsConfig.scheduler pour mettre à jour tous les planificateurs des paramètres ou uniquement le nombre de planificateurs. Vous pouvez également mettre à jour paramètres individuels du programmeur, à l'exception de count, en spécifiant un masque. Par exemple, config.workloadsConfig.scheduler.cpu.

    2. Dans le corps de la requête, spécifiez les nouveaux paramètres du programmeur.

"config": {
  "workloadsConfig": {
    "scheduler": {
      "cpu": SCHEDULER_CPU,
      "memoryGb": SCHEDULER_MEMORY,
      "storageGb": SCHEDULER_STORAGE,
      "count": SCHEDULER_COUNT
    }
  }
}

Remplacez les éléments suivants :

  • ENVIRONMENT_NAME: nom de l'environnement.
  • LOCATION: région dans laquelle se trouve l'environnement.

  • SCHEDULER_CPU: nombre de processeurs pour un programmeur, en unités de vCPU.

  • SCHEDULER_MEMORY: quantité de mémoire pour un programmeur, en Go.

  • SCHEDULER_STORAGE: taille de disque d'un programmeur, en Go.

  • SCHEDULER_COUNT: nombre de programmeurs.

Exemple :

// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.workloadsConfig.scheduler

"config": {
  "workloadsConfig": {
    "scheduler": {
      "cpu": 0.5,
      "memoryGb": 2.5,
      "storageGb": 2,
      "count": 2
    }
  }
}

Terraform

Les champs suivants du bloc workloads_config.scheduler contrôlent Paramètres du programmeur Airflow. Chaque programmeur utilise la quantité spécifiée ressources.

  • scheduler.count: nombre de programmeurs dans votre environnement.

  • scheduler.cpu: nombre de processeurs pour un programmeur Airflow.

  • scheduler.memory_gb: quantité de mémoire pour un programmeur Airflow.

  • scheduler.storage_gb: quantité d'espace disque pour un programmeur.

resource "google_composer_environment" "example" {
  provider = google-beta
  name = "ENVIRONMENT_NAME"
  region = "LOCATION"

  config {

    workloads_config {
      scheduler {
        cpu = SCHEDULER_CPU
        memory_gb = SCHEDULER_MEMORY
        storage_gb = SCHEDULER_STORAGE
        count = SCHEDULER_COUNT
      }
    }

  }
}

Remplacez les éléments suivants :

  • ENVIRONMENT_NAME: nom de l'environnement.
  • LOCATION: région dans laquelle se trouve l'environnement.

  • SCHEDULER_CPU: nombre de processeurs pour un programmeur, en unités de vCPU.

  • SCHEDULER_MEMORY: quantité de mémoire pour un programmeur, en Go.

  • SCHEDULER_STORAGE: taille de disque d'un programmeur, en Go.

  • SCHEDULER_COUNT: nombre de programmeurs.

Exemple :

resource "google_composer_environment" "example" {
  provider = google-beta
  name = "example-environment"
  region = "us-central1"

  config {

    workloads_config {
      scheduler {
        
        cpu = 0.5
        memory_gb = 1.875
        storage_gb = 1
        
        count = 2
      }
    }

  }
}

Ajuster les paramètres du déclencheur

Vous pouvez définir le nombre de déclencheurs sur zéro, mais il vous en faut au moins un. de déclencheur dans votre environnement (ou au moins deux dans le cas (environnements d'exécution) opérateurs différables dans vos DAG.

Selon la configuration mode résilience, il existe différentes configurations possibles selon le nombre de déclencheurs:

  • Résilience standard: vous pouvez exécuter jusqu'à 10. déclencheurs.
  • Résilience élevée: au moins 2 déclencheurs, jusqu'à un maximum de 10.

Même si le nombre de déclencheurs est défini sur zéro, une définition de pod est créé et visible dans le cluster de votre environnement, mais qu'aucun déclencheur réel charges de travail sont exécutées.

Vous pouvez également spécifier la quantité de processeurs, de mémoire et d'espace disque utilisés par Airflow. et les déclencheurs de votre environnement. Vous pouvez ainsi améliorer les performances votre environnement, en plus du scaling horizontal fourni par l'utilisation de plusieurs déclencheurs.

Console

  1. Dans la console Google Cloud, accédez à la page Environnements.

    Accéder à la page Environnements

  2. Dans la liste des environnements, cliquez sur le nom de votre environnement. La page Détails de l'environnement s'ouvre.

  3. Accédez à l'onglet Configuration de l'environnement.

  4. Dans l'élément Ressources > Configuration des charges de travail : cliquez sur Modifier.

  5. Dans le volet Configuration des charges de travail, ajustez les paramètres pour Airflow. déclencheurs:

    1. Dans le champ Nombre de déclencheurs de la section Déclencheur, saisissez le nombre de déclencheurs dans votre environnement.

      Si vous avez défini au moins un déclencheur pour votre environnement, utilisez également la classe les champs Processeur et Mémoire pour configurer l'allocation des ressources pour vos déclencheurs.

    2. Dans les champs Processeur et Mémoire, indiquez le nombre de processeurs, de mémoire et de stockage pour les déclencheurs Airflow. Chaque déclencheur utilise la quantité de ressources spécifiée.

  6. Cliquez sur Enregistrer.

gcloud

Les paramètres suivants du déclencheur Airflow sont disponibles:

  • --triggerer-count: nombre de déclencheurs dans votre environnement.

    • Pour les environnements de résilience standards, utilisez une valeur comprise entre 0 et 10.
    • Pour les environnements hautement résilients, utilisez 0, ou une valeur comprise entre 2 et 10
  • --triggerer-cpu: nombre de processeurs pour un déclencheur Airflow.

  • --triggerer-memory: quantité de mémoire pour une instance Airflow ou un déclencheur spécifique.

Exécutez la commande Google Cloud CLI suivante:

gcloud composer environments update ENVIRONMENT_NAME \
  --location LOCATION \
  --triggerer-count TRIGGERER_COUNT \
  --triggerer-cpu TRIGGERER_CPU \
  --triggerer-memory TRIGGERER_MEMORY

Remplacez les éléments suivants :

  • ENVIRONMENT_NAME: nom de l'environnement.
  • LOCATION: région dans laquelle se trouve l'environnement.
  • TRIGGERER_COUNT: nombre de déclencheurs.
  • TRIGGERER_CPU: nombre de processeurs d'un déclencheur, en unités de vCPU.
  • TRIGGERER_MEMORY: quantité de mémoire pour un déclencheur.

Exemples :

  • Passez à quatre instances de déclencheur:
  gcloud composer environments update example-environment \
    --location us-central1 \
    --triggerer-count 4 \
    --triggerer-cpu 1 \
    --triggerer-memory 1
  ```

- Disable triggerers by setting triggerer count to `0`. This operation
  doesn't require specifying CPU or memory for the triggerers.

```bash
  gcloud composer environments update example-environment \
    --location us-central1 \
    --triggerer-count 0
  ```

API

  1. Dans le paramètre de requête updateMask, spécifiez la Masque config.workloadsConfig.triggerer.

  2. Dans le corps de la requête, spécifiez les trois paramètres des déclencheurs.

"config": {
  "workloadsConfig": {
    "triggerer": {
      "count": TRIGGERER_COUNT,
      "cpu": TRIGGERER_CPU,
      "memoryGb": TRIGGERER_MEMORY
    }
  }
}

Remplacez les éléments suivants :

  • TRIGGERER_COUNT: nombre de déclencheurs.

    • Pour les environnements de résilience standards, utilisez une valeur comprise entre 0 et 10.
    • Pour les environnements hautement résilients, utilisez 0, ou une valeur comprise entre 2 et 10
  • TRIGGERER_CPU: nombre de processeurs d'un déclencheur, en unités de vCPU.

  • TRIGGERER_MEMORY: quantité de mémoire pour un déclencheur.

Exemples :

  • Désactivez les déclencheurs en définissant le nombre de déclencheurs sur 0. Cette opération il n'est pas nécessaire de spécifier le processeur ni la mémoire pour les déclencheurs.
// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.workloadsConfig.triggerer
"config": {
  "workloadsConfig": {
    "triggerer": {
      "count": 0
    }
  }
}
  • Passez à quatre instances de déclencheur:
// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.workloadsConfig.triggerer
"config": {
  "workloadsConfig": {
    "triggerer": {
      "count": 4,
      "cpu": 1,
      "memoryGb": 1
    }
  }
}

Terraform

Les champs suivants du bloc workloads_config.triggerer contrôlent Paramètres du déclencheur Airflow. Chaque déclencheur utilise la quantité spécifiée ressources.

  • triggerer.count: nombre de déclencheurs dans votre environnement.

    • Pour les environnements de résilience standards, utilisez une valeur comprise entre 0 et 10.
    • Pour les environnements hautement résilients, utilisez 0, ou une valeur comprise entre 2 et 10
  • triggerer.cpu: nombre de processeurs pour un déclencheur Airflow.

  • triggerer.memory_gb: quantité de mémoire pour un déclencheur Airflow.

resource "google_composer_environment" "example" {
  provider = google-beta
  name = "ENVIRONMENT_NAME"
  region = "LOCATION"

  config {

    workloads_config {
      triggerer {
        count = TRIGGERER_COUNT
        cpu = TRIGGERER_CPU
        memory_gb = TRIGGERER_MEMORY
      }
    }

  }
}

Remplacez les éléments suivants :

  • ENVIRONMENT_NAME: nom de l'environnement.
  • LOCATION: région dans laquelle se trouve l'environnement.
  • TRIGGERER_COUNT: nombre de déclencheurs.
  • TRIGGERER_CPU: nombre de processeurs d'un déclencheur, en unités de vCPU.
  • TRIGGERER_MEMORY: quantité de mémoire d'un déclencheur, en Go.

Exemple :

resource "google_composer_environment" "example" {
  provider = google-beta
  name = "example-environment"
  region = "us-central1"

  config {

    workloads_config {
      triggerer {
        count = 1
        cpu = 0.5
        memory_gb = 0.5
      }
    }

  }
}

Ajuster les paramètres du processeur DAG

Vous pouvez spécifier le nombre de processeurs DAG dans votre environnement et la quantité de CPU, de mémoire et d'espace disque utilisés par chaque processeur DAG.

Console

  1. Dans la console Google Cloud, accédez à la page Environnements.

    Accéder à la page Environnements

  2. Dans la liste des environnements, cliquez sur le nom de votre environnement. La page Détails de l'environnement s'ouvre.

  3. Accédez à l'onglet Configuration de l'environnement.

  4. Dans l'élément Ressources > Configuration des charges de travail : cliquez sur Modifier.

  5. Dans le volet Configuration des charges de travail, ajustez les paramètres pour Airflow. Processeurs DAG:

    • Dans la liste déroulante Nombre de processeurs DAG, sélectionnez le nombre de des processeurs DAG pour votre environnement.

    • Dans les champs Processeur, Mémoire et Stockage, indiquez le nombre de processeurs, de mémoire et de stockage pour les processeurs DAG Airflow. Chaque DAG le processeur utilise la quantité spécifiée de ressources.

  6. Cliquez sur Enregistrer.

gcloud

Les paramètres suivants du processeur DAG Airflow sont disponibles:

  • --dag-processor-count: nombre de processeurs DAG
  • --dag-processor-cpu: nombre de processeurs pour le processeur DAG.
  • --dag-processor-memory: quantité de mémoire pour le DAG processeur.
  • --dag-processor-storage: quantité d'espace disque pour le DAG processeur.

Exécutez la commande Google Cloud CLI suivante:

gcloud composer environments update ENVIRONMENT_NAME \
  --location LOCATION \
    --dag-processor-count DAG_PROCESSOR_COUNT \
    --dag-processor-cpu DAG_PROCESSOR_CPU \
    --dag-processor-memory DAG_PROCESSOR_MEMORY \
    --dag-processor-storage DAG_PROCESSOR_STORAGE

Remplacez les éléments suivants :

  • ENVIRONMENT_NAME: nom de l'environnement.
  • LOCATION: région dans laquelle se trouve l'environnement.
  • DAG_PROCESSOR_CPU: nombre de processeurs pour le processeur DAG.
  • DAG_PROCESSOR_MEMORY: quantité de mémoire pour le DAG processeur.
  • DAG_PROCESSOR_STORAGE: quantité d'espace disque pour le DAG processeur.

Exemple :

gcloud composer environments update example-environment \
  --location us-central1 \
  --dag-processor-count 2 \
  --dag-processor-cpu 0.5 \
  --dag-processor-memory 2 \
  --dag-processor-storage 1

API

  1. Rédigez une requête API environments.patch.

  2. Dans cette requête :

    1. Dans le paramètre updateMask, spécifiez le masque config.workloadsConfig.dagProcessor pour mettre à jour tous les DAG paramètres du processeur, y compris le nombre de processeurs DAG. Vous pouvez et les paramètres individuels du processeur DAG en spécifiant un masque. Exemple : config.workloadsConfig.dagProcessor.cpu,config.workloadsConfig.dagProcessor.memoryGb,config.workloadsConfig.dagProcessor.storageGb.

    2. Dans le corps de la requête, spécifiez les nouveaux paramètres du processeur DAG.

"config": {
  "workloadsConfig": {
    "dagProcessor": {
      "count": DAG_PROCESSOR_COUNT,
      "cpu": DAG_PROCESSOR_CPU,
      "memoryGb": DAG_PROCESSOR_MEMORY,
      "storageGb": DAG_PROCESSOR_STORAGE
    }
  }
}

Remplacez les éléments suivants :

  • ENVIRONMENT_NAME: nom de l'environnement.
  • LOCATION: région dans laquelle se trouve l'environnement.
  • DAG_PROCESSOR_COUNT: nombre de processeurs DAG
  • DAG_PROCESSOR_CPU: nombre de processeurs pour le processeur DAG, en vCPU unités de mesure.
  • DAG_PROCESSOR_MEMORY: quantité de mémoire pour le DAG en Go.
  • DAG_PROCESSOR_STORAGE: quantité d'espace disque pour le DAG en Go.

Exemple :

// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.workloadsConfig.dagProcessor

"config": {
  "workloadsConfig": {
    "scheduler": {
      "count": 2
      "cpu": 0.5,
      "memoryGb": 2.5,
      "storageGb": 2
    }
  }
}

Terraform

Les champs suivants du bloc workloads_config.dag_processor contrôlent Paramètres du processeur DAG Airflow. Chaque processeur DAG utilise les valeurs quantité de ressources.

  • dag_processor.count: nombre de processeurs DAG dans votre environnement
  • dag_processor.cpu: nombre de processeurs d'un processeur DAG
  • dag_processor.memory_gb: quantité de mémoire d'un processeur DAG.
  • dag_processor.storage_gb est la quantité d'espace disque disponible pour un processeur DAG.
resource "google_composer_environment" "example" {
  provider = google-beta
  name = "ENVIRONMENT_NAME"
  region = "LOCATION"

  config {

    workloads_config {
      dag_processor {
        count = DAG_PROCESSOR_COUNT
        cpu = DAG_PROCESSOR_CPU
        memory_gb = DAG_PROCESSOR_MEMORY
        storage_gb = DAG_PROCESSOR_STORAGE
      }
    }

  }
}

Remplacez les éléments suivants :

  • ENVIRONMENT_NAME: nom de l'environnement.
  • LOCATION: région dans laquelle se trouve l'environnement.
  • DAG_PROCESSOR_COUNT: nombre de processeurs DAG
  • DAG_PROCESSOR_CPU: nombre de processeurs pour le processeur DAG, en vCPU unités de mesure.
  • DAG_PROCESSOR_MEMORY: quantité de mémoire pour le DAG en Go.
  • DAG_PROCESSOR_STORAGE: quantité d'espace disque pour le DAG en Go.

Exemple :

resource "google_composer_environment" "example" {
  provider = google-beta
  name = "example-environment"
  region = "us-central1"

  config {

    workloads_config {
      dag_processor {
        count = 2
        cpu = 0.5
        memory_gb = 2
        storage_gb = 1
      }
    }

  }
}

Ajuster les paramètres du serveur Web

Vous pouvez spécifier la quantité de processeurs, de mémoire et d'espace disque utilisés par Airflow dans votre environnement. Vous pouvez ainsi optimiser les performances Airflow, par exemple, pour répondre à la demande provenant d'un grand nombre ou un grand nombre de DAG gérés.

Console

  1. Dans la console Google Cloud, accédez à la page Environnements.

    Accéder à la page Environnements

  2. Dans la liste des environnements, cliquez sur le nom de votre environnement. La page Détails de l'environnement s'ouvre.

  3. Accédez à l'onglet Configuration de l'environnement.

  4. Dans l'élément Ressources > Configuration des charges de travail : cliquez sur Modifier.

  5. Dans le volet Workloads configuration (Configuration des charges de travail), ajustez les paramètres du paramètre Google Cloud. Dans les champs Processeur, Mémoire et Stockage, spécifiez le nombre de processeurs, la mémoire et le stockage pour le serveur web.

  6. Cliquez sur Enregistrer.

gcloud

Les paramètres de serveur Web Airflow suivants sont disponibles:

  • --web-server-cpu: nombre de processeurs pour le serveur Web Airflow.
  • --web-server-memory: quantité de mémoire pour le Web Airflow Google Cloud.
  • --web-server-storage: quantité d'espace disque pour Airflow Google Cloud.

Exécutez la commande Google Cloud CLI suivante:

gcloud composer environments update ENVIRONMENT_NAME \
  --location LOCATION \
  --web-server-cpu WEB_SERVER_CPU \
  --web-server-memory WEB_SERVER_MEMORY \
  --web-server-storage WEB_SERVER_STORAGE

Remplacez les éléments suivants :

  • ENVIRONMENT_NAME: nom de l'environnement.
  • LOCATION: région dans laquelle se trouve l'environnement.
  • WEB_SERVER_CPU: nombre de processeurs pour le serveur Web, exprimé en vCPU.
  • WEB_SERVER_MEMORY: quantité de mémoire pour le serveur Web.
  • WEB_SERVER_STORAGE: quantité de mémoire pour le serveur Web.

Exemple :

gcloud composer environments update example-environment \
  --location us-central1 \
  --web-server-cpu 1 \
  --web-server-memory 2.5 \
  --web-server-storage 2

API

  1. Rédigez une requête API environments.patch.

  2. Dans cette requête :

    1. Dans le paramètre updateMask, spécifiez le masque config.workloadsConfig.webServer pour mettre à jour tous les serveurs Web paramètres. Vous pouvez également mettre à jour les paramètres individuels du serveur Web en spécifiant un masque pour ces aramètres: config.workloadsConfig.webServer.cpu, config.workloadsConfig.webServer.memoryGb, config.workloadsConfig.webServer.storageGb

    2. Dans le corps de la requête, spécifiez les paramètres du nouveau serveur Web.

"config": {
  "workloadsConfig": {
    "webServer": {
      "cpu": WEB_SERVER_CPU,
      "memoryGb": WEB_SERVER_MEMORY,
      "storageGb": WEB_SERVER_STORAGE
    }
  }
}

Remplacez les éléments suivants :

  • ENVIRONMENT_NAME: nom de l'environnement.
  • LOCATION: région dans laquelle se trouve l'environnement.
  • WEB_SERVER_CPU: nombre de processeurs pour le serveur Web, exprimé en vCPU.
  • WEB_SERVER_MEMORY: quantité de mémoire pour le serveur Web, en Go.
  • WEB_SERVER_STORAGE: taille du disque du serveur Web, en Go.

Exemple :

// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.workloadsConfig.webServer.cpu,
// config.workloadsConfig.webServer.memoryGb,
// config.workloadsConfig.webServer.storageGb

"config": {
  "workloadsConfig": {
    "webServer": {
      "cpu": 0.5,
      "memoryGb": 2.5,
      "storageGb": 2
    }
  }
}

Terraform

Les champs suivants du bloc workloads_config.web_server contrôlent paramètres de serveur Web.

  • web_server.cpu: le nombre de processeurs pour le serveur Web.
  • web_server.memory_gb: quantité de mémoire pour le serveur Web.
  • web_server.storage_gb: quantité d'espace disque pour le serveur Web.
resource "google_composer_environment" "example" {
  provider = google-beta
  name = "ENVIRONMENT_NAME"
  region = "LOCATION"

  config {

    workloads_config {
      web_server {
        cpu = WEB_SERVER_CPU
        memory_gb = WEB_SERVER_MEMORY
        storage_gb = WEB_SERVER_STORAGE
      }
    }

  }
}

Remplacez les éléments suivants :

  • ENVIRONMENT_NAME: nom de l'environnement.
  • LOCATION: région dans laquelle se trouve l'environnement.
  • WEB_SERVER_CPU: nombre de processeurs pour le serveur Web, exprimé en vCPU.
  • WEB_SERVER_MEMORY: quantité de mémoire pour le serveur Web, en Go.
  • WEB_SERVER_STORAGE: taille du disque du serveur Web, en Go.

Exemple :

resource "google_composer_environment" "example" {
  provider = google-beta
  name = "example-environment"
  region = "us-central1"

  config {

    workloads_config {
      web_server {
        cpu = 0.5
        memory_gb = 1.875
        storage_gb = 1
      }
    }

  }
}

Ajuster la taille de l'environnement

La taille de l'environnement contrôle les paramètres de performances des L'infrastructure Cloud Composer, qui comprend, par exemple, la base de données Airflow.

Envisagez de sélectionner une plus grande taille d'environnement si vous souhaitez exécuter un grand nombre de DAG et de tâches.

Console

  1. Dans la console Google Cloud, accédez à la page Environnements.

    Accéder à la page Environnements

  2. Dans la liste des environnements, cliquez sur le nom de votre environnement. La page Détails de l'environnement s'ouvre.

  3. Accédez à l'onglet Configuration de l'environnement.

  4. Dans l'élément Ressources > Configuration des charges de travail : cliquez sur Modifier.

  5. Dans l'élément Ressources > Infrastructure de base : cliquez sur Modifier.

  6. Dans le champ Taille de l'environnement du volet Infrastructure de base : spécifier la taille de l'environnement.

  7. Cliquez sur Enregistrer.

gcloud

L'argument --environment-size contrôle la taille de l'environnement :

gcloud composer environments update ENVIRONMENT_NAME \
    --location LOCATION \
    --environment-size ENVIRONMENT_SIZE

Remplacez les éléments suivants :

  • ENVIRONMENT_NAME: nom de l'environnement.
  • LOCATION: région dans laquelle se trouve l'environnement.
  • ENVIRONMENT_SIZE : small, medium ou large.

Exemple :

gcloud composer environments update example-environment \
    --location us-central1 \
    --environment-size medium

API

  1. Créez une requête API environments.patch.

  2. Dans cette requête :

    1. Dans le paramètre updateMask, spécifiez le masque config.environmentSize.

    2. Dans le corps de la requête, spécifiez la taille de l'environnement.

  "config": {
    "environmentSize": "ENVIRONMENT_SIZE"
  }

Remplacez les éléments suivants :

  • ENVIRONMENT_SIZE: taille de l'environnement, ENVIRONMENT_SIZE_SMALL. ENVIRONMENT_SIZE_MEDIUM ou ENVIRONMENT_SIZE_LARGE.

Exemple :

// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.environmentSize

"config": {
  "environmentSize": "ENVIRONMENT_SIZE_MEDIUM"
}

Terraform

Le champ environment_size du bloc config contrôle l'environnement taille:

resource "google_composer_environment" "example" {
  provider = google-beta
  name = "ENVIRONMENT_NAME"
  region = "LOCATION"

  config {

    environment_size = "ENVIRONMENT_SIZE"

  }
}

Remplacez les éléments suivants :

  • ENVIRONMENT_NAME: nom de l'environnement.
  • LOCATION: région dans laquelle se trouve l'environnement.
  • ENVIRONMENT_SIZE: taille de l'environnement, ENVIRONMENT_SIZE_SMALL. ENVIRONMENT_SIZE_MEDIUM ou ENVIRONMENT_SIZE_LARGE.

Exemple :

resource "google_composer_environment" "example" {
  provider = google-beta
  name = "example-environment"
  region = "us-central1"

  config {

    environment_size = "ENVIRONMENT_SIZE_SMALL"

    }
  }
}

Étape suivante