Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3
Cette page explique comment procéder au scaling d'environnements Cloud Composer.
Autres pages sur le scaling :
- Pour savoir comment sélectionner l'échelle et les paramètres de performances optimaux pour votre consultez l'article Optimiser les performances et les coûts de l'environnement.
- Pour en savoir plus sur le fonctionnement du scaling d'environnement, consultez la page Scaling de l'environnement.
Évolutivité verticale et horizontale
Options de scaling horizontal :
- Ajustez les nombres minimal et maximal de nœuds de calcul.
- Ajustez le nombre de planificateurs, de processeurs DAG et de déclencheurs.
Options de scaling vertical :
- Ajustez les paramètres de scaling et de performances des nœuds de calcul, du programmeur, du déclencheur, du processeur DAG et du serveur Web.
- Ajustez la taille de l'environnement.
Limites de ressources
Composant | Nombre minimal | Nombre maximal | vCPU minimal | 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 par vCPU (Go) | 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 augmenter les performances de votre environnement, en plus du scaling horizontal fourni par l'utilisation de plusieurs nœuds de calcul.
Console
Dans la console Google Cloud, accédez à la page Environnements.
Dans la liste des environnements, cliquez sur le nom de votre environnement. La page Détails de l'environnement s'ouvre.
Accédez à l'onglet Configuration de l'environnement.
Dans l'élément Ressources > Configuration des charges de travail, cliquez sur Modifier.
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 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, spécifiez le nombre de processeurs, de mémoire et d'espace disque pour les nœuds de calcul Airflow. Chaque nœud de calcul utilise la quantité de ressources spécifiée.
Cliquez sur Enregistrer.
gcloud
Les paramètres de nœud 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 ce nombre, même si moins de nœuds peuvent gérer 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 où 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 du 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
Rédigez une requête API
environments.patch
.Dans cette requête :
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 Masqueconfig.workloadsConfig.worker.cpu,config.workloadsConfig.worker.memoryGb,config.workloadsConfig.worker.storageGB,config.softwareConfig.workloadsConfig.worker.minCount,config.softwareConfig.workloadsConfig.worker.maxCount
.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 où 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 pour un nœud de calcul, en unités de processeur virtuel.WORKER_MEMORY
: quantité de mémoire pour un nœud de calcul, en Go.WORKER_STORAGE
: taille du disque pour 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 toujours exécuter. 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 que vos 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 où 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 pour un nœud de calcul, en unités de processeur virtuel.WORKER_MEMORY
: quantité de mémoire pour un nœud de calcul, en Go.WORKER_STORAGE
: taille du disque pour 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 utiliser jusqu'à trois ordonnanceurs 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 planificateurs Airflow dans votre environnement. Vous pouvez ainsi augmenter les performances de votre environnement, en plus du scaling horizontal fourni par l'utilisation de plusieurs planificateurs.
Console
Dans la console Google Cloud, accédez à la page Environnements.
Dans la liste des environnements, cliquez sur le nom de votre environnement. La page Détails de l'environnement s'ouvre.
Accédez à l'onglet Configuration de l'environnement.
Dans l'élément Ressources > Configuration des charges de travail, cliquez sur Modifier.
Dans le volet Configuration des charges de travail, ajustez les paramètres pour Airflow. schedulers:
Dans la liste déroulante Nombre de planificateurs, sélectionnez le nombre de pour votre environnement.
Dans les champs CPU, Mémoire et Stockage, spécifiez le nombre de processeurs, de mémoire et d'espace de stockage pour les planificateurs Airflow. Chaque planificateur utilise la quantité de ressources spécifiée.
Cliquez sur Enregistrer.
gcloud
Les paramètres de planification Airflow suivants sont disponibles :
--scheduler-count
: nombre de planificateurs 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 où 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 planificateurs.
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
Rédigez une requête API
environments.patch
.Dans cette requête :
Dans le paramètre
updateMask
, spécifiez le masqueconfig.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 decount
, en spécifiant un masque. Par exemple,config.workloadsConfig.scheduler.cpu
.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 où 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 planificateur, 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 planificateurs 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 où 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 planificateur, 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.
- Haute résilience : au moins deux déclencheurs, jusqu'à 10 au maximum.
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 n'est exécutée.
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 augmenter les performances de votre environnement, en plus du scaling horizontal fourni par l'utilisation de plusieurs déclencheurs.
Console
Dans la console Google Cloud, accédez à la page Environnements.
Dans la liste des environnements, cliquez sur le nom de votre environnement. La page Détails de l'environnement s'ouvre.
Accédez à l'onglet Configuration de l'environnement.
Dans l'élément Ressources > Configuration des charges de travail : cliquez sur Modifier.
Dans le volet Configuration des charges de travail, ajustez les paramètres des déclencheurs Airflow :
Dans la section Déclencheur, dans le champ Nombre de déclencheurs, 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.
Dans les champs CPU et Mémoire, spécifiez le nombre de processeurs, de mémoire et d'espace disque pour les déclencheurs Airflow. Chaque déclencheur utilise la quantité de ressources spécifiée.
Cliquez sur Enregistrer.
gcloud
Les paramètres de déclencheur Airflow suivants sont disponibles :
--triggerer-count
: nombre de déclencheurs dans votre environnement.- Pour les environnements de résilience standards, utilisez une valeur comprise entre
0
et10
. - Pour les environnements hautement résilients, utilisez
0
ou une valeur comprise entre2
et10
.
- Pour les environnements de résilience standards, utilisez une valeur comprise entre
--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 où se trouve l'environnement.TRIGGERER_COUNT
: nombre de déclencheurs.TRIGGERER_CPU
: nombre de processeurs pour un déclencheur, en unités de processeur virtuel.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
Dans le paramètre de requête
updateMask
, spécifiez la Masqueconfig.workloadsConfig.triggerer
.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
et10
. - Pour les environnements hautement résilients, utilisez
0
ou une valeur comprise entre2
et10
- Pour les environnements de résilience standards, utilisez une valeur comprise entre
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
}
}
}
- Passer à 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
et10
. - Pour les environnements très résilients, utilisez
0
ou une valeur comprise entre2
et10
.
- Pour les environnements de résilience standards, utilisez une valeur comprise entre
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 où 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
Dans la console Google Cloud, accédez à la page Environnements.
Dans la liste des environnements, cliquez sur le nom de votre environnement. La page Détails de l'environnement s'ouvre.
Accédez à l'onglet Configuration de l'environnement.
Dans l'élément Ressources > Configuration des charges de travail : cliquez sur Modifier.
Dans le volet Configuration des charges de travail, ajustez les paramètres pour Airflow. Les processeurs DAG:
Dans la liste déroulante Nombre de processeurs DAG, sélectionnez le nombre de processeurs DAG pour votre environnement.
Dans les champs CPU, Mémoire et Stockage, spécifiez le nombre de processeurs, de mémoire et d'espace disque pour les processeurs DAG Airflow. Chaque processeur DAG utilise la quantité de ressources spécifiée.
Cliquez sur Enregistrer.
gcloud
Les paramètres de processeur DAG Airflow suivants 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 processeur DAG.
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 processeur DAG.
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
Rédigez une requête API
environments.patch
.Dans cette requête :
Dans le paramètre
updateMask
, spécifiez le masqueconfig.workloadsConfig.dagProcessor
pour mettre à jour tous les paramètres du processeur DAG, y compris le nombre de processeurs DAG. Vous pouvez également mettre à jour des paramètres de processeur DAG individuels en spécifiant un masque. Exemple :config.workloadsConfig.dagProcessor.cpu,config.workloadsConfig.dagProcessor.memoryGb,config.workloadsConfig.dagProcessor.storageGb
.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 unités de vCPU.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 les paramètres du processeur DAG Airflow. Chaque processeur DAG utilise la quantité de ressources spécifiée.
dag_processor.count
: nombre de processeurs DAG dans votre environnementdag_processor.cpu
: nombre de processeurs pour un processeur DAG.dag_processor.memory_gb
: quantité de mémoire d'un processeur DAG.dag_processor.storage_gb
la quantité d'espace disque 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 unités de vCPU.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 le serveur Web 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
Dans la console Google Cloud, accédez à la page Environnements.
Dans la liste des environnements, cliquez sur le nom de votre environnement. La page Détails de l'environnement s'ouvre.
Accédez à l'onglet Configuration de l'environnement.
Dans l'élément Ressources > Configuration des charges de travail : cliquez sur Modifier.
Dans le volet 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.
Cliquez sur Enregistrer.
gcloud
Les paramètres suivants du serveur Web Airflow 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
Rédigez une requête API
environments.patch
.Dans cette requête :
Dans le paramètre
updateMask
, spécifiez le masqueconfig.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
etconfig.workloadsConfig.webServer.storageGb
.Dans le corps de la requête, spécifiez les nouveaux paramètres du 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 où se trouve l'environnement.WEB_SERVER_CPU
: nombre de processeurs pour le serveur Web, en unités de processeur virtuel.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
: 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 où se trouve l'environnement.WEB_SERVER_CPU
: nombre de processeurs pour le serveur Web, en unités de processeur virtuel.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 performance 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
Dans la console Google Cloud, accédez à la page Environnements.
Dans la liste des environnements, cliquez sur le nom de votre environnement. La page Détails de l'environnement s'ouvre.
Accédez à l'onglet Configuration de l'environnement.
Dans l'élément Ressources > Configuration des charges de travail : cliquez sur Modifier.
Dans l'élément Ressources > Infrastructure principale, cliquez sur Modifier.
Dans le champ Taille de l'environnement du volet Infrastructure de base : spécifier la taille de l'environnement.
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
oularge
.
Exemple :
gcloud composer environments update example-environment \
--location us-central1 \
--environment-size medium
API
Créez une requête API
environments.patch
.Dans cette requête :
Dans le paramètre
updateMask
, spécifiez le masqueconfig.environmentSize
.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
ouENVIRONMENT_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
ouENVIRONMENT_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
- Scaling et performances des environnements
- Tarifs de Cloud Composer
- Mettre à jour des environnements
- Architecture des environnements