Effectuer le scaling d'environnements

Cloud Composer 1 | Cloud Composer 2

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 planificateurs et de déclencheurs.

Options de scaling vertical :

  • Ajustez les paramètres de nœud de calcul, de programmeur, de déclencheur et de serveur Web.
  • 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 10 0,5 28 0,25 0,5 80 - 1 6,5 0,05 10 -
Déclencheurs 0 10 0,5 1 0,25 0,5 80 - 1 6,5 - - -
Serveur Web - - 0,5 28 0,25 1 80 - 1 6,5 0,05 10 -
Nœuds de calcul 1 100 0,5 28 0,25 0,5 80 - 1 6,5 0,05 10 -

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 les nœuds de calcul Airflow dans votre environnement. De cette manière, vous pouvez améliorer les performances de votre environnement, en plus du scaling horizontal fourni en utilisant plusieurs 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 des nœuds de calcul Airflow:

    • 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 dans votre environnement ne passe jamais en dessous de ce seuil, même si un nombre inférieur de nœuds de calcul peut 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, spécifiez le nombre de processeurs, la mémoire et l'espace de stockage des 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 toujours exécuter. Le nombre de nœuds de calcul dans votre environnement ne descend pas en dessous de ce nombre, même si un nombre inférieur de nœuds de calcul peut supporter la charge.
  • --max-workers: 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 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 tous les paramètres des nœuds de calcul, spécifiez le 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 les 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 toujours exécuter. Le nombre de nœuds de calcul dans votre environnement ne descend pas en dessous de ce nombre, même si un nombre inférieur de nœuds de calcul peut supporter la charge.
  • worker.max_count: 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 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é.

Vous pouvez avoir jusqu'à 10 planificateurs dans 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 les programmeurs Airflow dans votre environnement. De cette manière, vous pouvez améliorer les performances de votre environnement, en plus du scaling horizontal fourni par l'utilisation de plusieurs 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 des programmeurs Airflow:

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

    • Dans les champs Processeur, Mémoire et Stockage, spécifiez le nombre de processeurs, la mémoire et l'espace 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 paramètres du programmeur ou uniquement le nombre de programmeurs. Vous pouvez également mettre à jour les paramètres individuels du planificateur, à l'exception de count, en spécifiant un masque. 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 les paramètres du programmeur Airflow. Chaque programmeur utilise la quantité spécifiée de 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 vous avez besoin d'au moins une instance de déclencheur dans votre environnement (ou d'au moins deux dans les environnements hautement résilients) pour utiliser des opérateurs différables dans vos DAG.

Selon le mode de résilience de votre environnement, il existe différentes configurations possibles pour 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 et jusqu'à 10

Même si le nombre de déclencheurs est défini sur zéro, une définition de pod de déclencheur est créée et visible dans le cluster de votre environnement, mais aucune charge de travail de déclencheur réelle n'est exécutée.

Vous pouvez également spécifier la quantité de processeurs, de mémoire et d'espace disque utilisés par les déclencheurs Airflow dans votre environnement. De cette manière, vous pouvez améliorer les performances de votre environnement, en plus du scaling horizontal fourni en utilisant 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 des déclencheurs Airflow:

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

      Si vous définissez au moins un déclencheur pour votre environnement, utilisez également les champs Processeur et Mémoire afin de configurer l'allocation de ressources pour vos déclencheurs.

    2. Dans les champs Processeur et Mémoire, spécifiez le nombre de processeurs, la mémoire et l'espace 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 un déclencheur Airflow.

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 le 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 ne nécessite pas de spécifier de processeur ni de 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 les paramètres du déclencheur Airflow. Chaque déclencheur utilise la quantité spécifiée de 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 serveur Web

Vous pouvez spécifier la quantité de processeurs, de mémoire et d'espace disque utilisés par le serveur Web Airflow dans votre environnement. De cette manière, vous pouvez adapter les performances de l'interface utilisateur Airflow, par exemple, pour qu'elles correspondent à la demande provenant d'un grand nombre d'utilisateurs ou d'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 Configuration des charges de travail, ajustez les paramètres du serveur Web. Dans les champs Processeur, Mémoire et Stockage, spécifiez le nombre de processeurs, la mémoire et l'espace de 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 serveur Web Airflow.
  • --web-server-storage: quantité d'espace disque pour le serveur Web Airflow.

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 paramètres du serveur Web. Vous pouvez également mettre à jour des paramètres de serveur Web individuels en spécifiant un masque pour ces paramètres : config.workloadsConfig.webServer.cpu, config.workloadsConfig.webServer.memoryGb et 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 les paramètres du 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 de l'infrastructure Cloud Composer gérée, qui inclut, 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 volet Infrastructure principale, spécifiez la taille de l'environnement dans le champ 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 la taille de l'environnement:

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"

    }
  }
}

Étapes suivantes