Ambienti di scalabilità

Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3

Questa pagina descrive come scalare gli ambienti Cloud Composer.

Altre pagine sulla scalabilità:

Scalabilità verticale e orizzontale

Opzioni per la scalabilità orizzontale:

  • Modifica il numero minimo e massimo di worker.
  • Regola il numero di scheduler, processori DAG e triggerer.

Opzioni per la scalabilità verticale:

  • Regola worker, scheduler, triggerer, processore DAG, e server web. di scalabilità e parametri di prestazioni.
  • Modifica le dimensioni dell'ambiente.

Limiti delle risorse

Componente Conteggio minimo Numero massimo vCPU minima vCPU massima Passaggio minimo vCPU Memoria minima (GB) Memoria massima (GB) Passaggio minimo della memoria (GB) Memoria minima per 1 vCPU (GB) Memoria massima per 1 vCPU (GB) Spazio di archiviazione minimo (GB) Spazio di archiviazione massimo (GB) Passaggio minimo dello spazio di archiviazione (GB)
Scheduler 1 3 0,5 1 0,5 0,5 8 0,25 1 8 0 100 1
Triggerer 0 10 0,5 1 0,5 0,5 8 0,25 1 8 - - -
Server web - - 0,5 32 0, 5, 1 o un multiplo di 2 1 256 0,25 1 8 0 100 1
Worker 1 100 0,5 32 0, 5, 1 o un multiplo di 2 1 256 0,25 1 8 0 100 1
Processori DAG 1 3 0,5 32 0, 5, 1 o un multiplo di 2 1 256 0,25 1 8 0 100 1

Modificare i parametri dei lavoratori

Puoi impostare il numero minimo e massimo di worker per il tuo ambiente. Cloud Composer scala automaticamente l'ambiente nei limiti impostati. Puoi modificare questi limiti in qualsiasi momento.

Puoi specificare la quantità di CPU, memoria e spazio su disco utilizzati dai worker Airflow nel tuo ambiente. In questo modo, puoi aumentare il rendimento dell'ambiente di rete, oltre alla scalabilità orizzontale fornita dall'uso worker.

Console

  1. Nella console Google Cloud, vai alla pagina Ambienti.

    Vai ad Ambienti

  2. Nell'elenco degli ambienti, fai clic sul nome dell'ambiente. Viene visualizzata la pagina Dettagli dell'ambiente.

  3. Vai alla scheda Configurazione dell'ambiente.

  4. Nell'elemento Risorse > Configurazione dei carichi di lavoro, fai clic su Modifica.

  5. Nel riquadro Configurazione dei carichi di lavoro, modifica i parametri per i worker Airflow:

    • Nel campo Numero minimo di worker, specifica il numero di Worker Airflow che il tuo ambiente deve sempre eseguire. Il numero di worker nel tuo ambiente non scende al di sotto di questo numero durante il normale funzionamento dell'ambiente, anche se un numero inferiore di worker può gestire il carico.

    • Nel campo Numero massimo di worker, specifica il numero massimo di worker Airflow che il tuo ambiente può eseguire. Il numero di worker nel tuo ambiente non supera questo numero, anche se è necessario un numero maggiore di worker per gestire il carico.

    • Nei campi CPU, Memoria e Archiviazione, specifica il numero di CPU, memoria e spazio di archiviazione per i worker di Airflow. Ogni worker utilizza la quantità di risorse specificata.

  6. Fai clic su Salva.

gcloud

Sono disponibili i seguenti parametri worker Airflow:

  • --min-workers: il numero di worker Airflow che il tuo ambiente deve eseguire sempre. Il numero di worker nel tuo ambiente non è inferiore a anche se un numero inferiore di worker è in grado di gestire il carico.
  • --max-workers: il numero massimo di worker Airflow che il tuo dell'ambiente di rete. Il numero di worker nel tuo ambiente non superiore a questo numero, anche se è necessario un numero più elevato di worker per gestire il carico.
  • --worker-cpu: il numero di CPU per un worker Airflow.
  • --worker-memory: la quantità di memoria per un worker Airflow.
  • --worker-storage: la quantità di spazio su disco per un worker Airflow.

Esegui il seguente comando Google Cloud CLI:

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

Sostituisci quanto segue:

  • ENVIRONMENT_NAME: il nome dell'ambiente.
  • LOCATION: la regione in cui si trova l'ambiente.
  • WORKERS_MIN: il numero minimo di worker Airflow.
  • WORKERS_MAX: il numero massimo di worker Airflow.
  • WORKER_CPU: il numero di CPU per un worker, in unità vCPU.
  • WORKER_MEMORY: la quantità di memoria per un worker.
  • WORKER_STORAGE: le dimensioni del disco per un worker.

Esempio:

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. Creare una richiesta API environments.patch.

  2. In questa richiesta:

    1. Nel parametro updateMask, specifica i campi che vuoi aggiornare. Ad esempio, per aggiornare tutti per i worker, specifica Maschera config.workloadsConfig.worker.cpu,config.workloadsConfig.worker.memoryGb,config.workloadsConfig.worker.storageGB,config.softwareConfig.workloadsConfig.worker.minCount,config.softwareConfig.workloadsConfig.worker.maxCount.

    2. Nel corpo della richiesta, specifica i nuovi parametri del worker.

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

Sostituisci quanto segue:

  • ENVIRONMENT_NAME: il nome dell'ambiente.
  • LOCATION: la regione in cui si trova l'ambiente.
  • WORKERS_MIN: il numero minimo di worker Airflow.
  • WORKERS_MAX: il numero massimo di worker Airflow.
  • WORKER_CPU: il numero di CPU per un worker, in unità vCPU.
  • WORKER_MEMORY: la quantità di memoria per un worker, in GB.
  • WORKER_STORAGE: le dimensioni del disco per un worker, in GB.

Esempio:

// 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

I seguenti campi nel blocco workloads_config.worker controllano i parametri del worker Airflow. Ogni worker utilizza la quantità specificata di risorse.

  • worker.min_count: il numero di worker Airflow che il tuo ambiente deve eseguire sempre. Il numero di worker nel tuo ambiente non deve essere inferiore a questo valore, anche se un numero inferiore di worker può gestire il carico.
  • worker.max_count: il numero massimo di worker Airflow che il tuo ambiente può eseguire. Il numero di worker nel tuo ambiente non deve superare questo numero, anche se è necessario un numero maggiore di worker per gestire il carico.
  • worker.cpu: il numero di CPU per un worker Airflow.
  • worker.memory_gb: la quantità di memoria per un worker Airflow.
  • worker.storage_gb: la quantità di spazio su disco per un worker 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
      }
    }

  }
}

Sostituisci quanto segue:

  • ENVIRONMENT_NAME: il nome dell'ambiente.
  • LOCATION: la regione in cui si trova l'ambiente.
  • WORKERS_MIN: il numero minimo di worker Airflow.
  • WORKERS_MAX: il numero massimo di worker Airflow.
  • WORKER_CPU: il numero di CPU per un worker, in unità vCPU.
  • WORKER_MEMORY: la quantità di memoria per un worker, in GB.
  • WORKER_STORAGE: le dimensioni del disco per un worker, in GB.

Esempio:

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
      }
    }

  }
}

Regola i parametri dello scheduler

Il tuo ambiente può eseguire più di uno scheduler Airflow contemporaneamente. Utilizza più scheduler per distribuire il carico tra diversi scheduler per migliorare prestazioni e affidabilità.

Puoi avere fino a 3 scheduler nel tuo ambiente.

L'aumento del numero di scheduler non migliora sempre Airflow le prestazioni dei dispositivi. Ad esempio, avere un solo scheduler può fornire una migliore anziché averne due. Ciò può accadere quando il programmatore aggiuntivo non viene utilizzato e, di conseguenza, consuma le risorse del tuo ambiente senza contribuire al rendimento complessivo. Le prestazioni effettive dello scheduler dipendono dal numero di worker Airflow, dal numero di DAG e attività in esecuzione nel tuo ambiente e dalla configurazione di Airflow e dell'ambiente.

Ti consigliamo di iniziare con due scheduler e poi di monitorare le prestazioni del tuo ambiente. Se modifichi il numero di scheduler, puoi sempre scalare l'ambiente al numero originale di scheduler.

Per ulteriori informazioni sulla configurazione di più pianificatori, consulta la documentazione di Airflow.

Puoi specificare la quantità di CPU, memoria e spazio su disco utilizzati dagli schedulatori Airflow nel tuo ambiente. In questo modo, puoi aumentare il rendimento del tuo ambiente, oltre alla scalabilità orizzontale fornita utilizzando scheduler.

Console

  1. Nella console Google Cloud, vai alla pagina Ambienti.

    Vai ad Ambienti

  2. Nell'elenco degli ambienti, fai clic sul nome dell'ambiente. Viene visualizzata la pagina Dettagli dell'ambiente.

  3. Vai alla scheda Configurazione dell'ambiente.

  4. Nell'elemento Risorse > Configurazione dei carichi di lavoro, fai clic su Modifica.

  5. Nel riquadro Configurazione dei carichi di lavoro, modifica i parametri per gli schedulatori Airflow:

    • Nell'elenco a discesa Numero di pianificatori, seleziona il numero di pianificatori per il tuo ambiente.

    • Nei campi CPU, Memoria e Archiviazione, specifica il numero di CPU, memoria e spazio di archiviazione per gli scheduler di Airflow. Ogni scheduler la quantità di risorse specificata.

  6. Fai clic su Salva.

gcloud

Sono disponibili i seguenti parametri dello scheduler Airflow:

  • --scheduler-count: il numero di scheduler nel tuo ambiente.

  • --scheduler-cpu: il numero di CPU per uno scheduler Airflow.

  • --scheduler-memory: la quantità di memoria per uno scheduler Airflow.

  • --scheduler-storage: la quantità di spazio su disco per uno scheduler Airflow.

Esegui questo comando di Google Cloud CLI:

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

Sostituisci quanto segue:

  • ENVIRONMENT_NAME: il nome dell'ambiente.
  • LOCATION: la regione in cui si trova l'ambiente.

  • SCHEDULER_CPU: il numero di CPU per uno scheduler, in unità vCPU.

  • SCHEDULER_MEMORY: la quantità di memoria per un programmatore.

  • SCHEDULER_STORAGE: le dimensioni del disco per un pianificatore.

  • SCHEDULER_COUNT: il numero di scheduler.

Esempio:

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. Creare una richiesta API environments.patch.

  2. In questa richiesta:

    1. Nel parametro updateMask, specifica la maschera config.workloadsConfig.scheduler per aggiornare tutti gli scheduler o solo il numero di scheduler. Puoi anche aggiornare i singoli parametri dello scheduler, ad eccezione di count, specificando una maschera. Ad esempio: config.workloadsConfig.scheduler.cpu.

    2. Nel corpo della richiesta, specifica i nuovi parametri del programma.

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

Sostituisci quanto segue:

  • ENVIRONMENT_NAME: il nome dell'ambiente.
  • LOCATION: la regione in cui si trova l'ambiente.

  • SCHEDULER_CPU: il numero di CPU per un pianificatore, in unità vCPU.

  • SCHEDULER_MEMORY: la quantità di memoria per uno scheduler, in GB.

  • SCHEDULER_STORAGE: le dimensioni del disco per un pianificatore, in GB.

  • SCHEDULER_COUNT: il numero di pianificatori.

Esempio:

// 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

I seguenti campi nel blocco workloads_config.scheduler controllano i parametri del programmatore Airflow. Ogni scheduler utilizza la quantità specificata Google Cloud.

  • scheduler.count: il numero di pianificatori nel tuo ambiente.

  • scheduler.cpu: il numero di CPU per uno scheduler Airflow.

  • scheduler.memory_gb: la quantità di memoria per uno scheduler Airflow.

  • scheduler.storage_gb: la quantità di spazio su disco per un programmatore.

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
      }
    }

  }
}

Sostituisci quanto segue:

  • ENVIRONMENT_NAME: il nome dell'ambiente.
  • LOCATION: la regione in cui si trova l'ambiente.

  • SCHEDULER_CPU: il numero di CPU per un pianificatore, in unità vCPU.

  • SCHEDULER_MEMORY: la quantità di memoria per uno scheduler, in GB.

  • SCHEDULER_STORAGE: le dimensioni del disco per un pianificatore, in GB.

  • SCHEDULER_COUNT: il numero di pianificatori.

Esempio:

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
      }
    }

  }
}

Modificare i parametri dell'attivatore

Puoi impostare il numero di attivatori su zero, ma devi avere almeno un'istanza di attivatore nel tuo ambiente (o almeno due in ambienti altamente resilienti) per utilizzare gli operatori differibili nei tuoi DAG.

A seconda della configurazione modalità resilienza, esistono diverse configurazioni possibili per il numero di triggerer:

  • Resilienza standard: puoi eseguire fino a 10 attivatori.
  • Elevata resilienza: almeno 2 attivatori, fino a un massimo di 10.

Anche se il numero di triggerer è impostato su zero, una definizione del pod dell'attivatore viene creato ed è visibile nel cluster dell'ambiente, ma non esiste un triggerer effettivo carichi di lavoro con scale out impegnativi.

Puoi anche specificare la quantità di CPU, memoria e spazio su disco utilizzati dagli attivatori Airflow nel tuo ambiente. In questo modo, puoi aumentare il rendimento del tuo ambiente, oltre alla scalabilità orizzontale fornita utilizzando triggerer.

Console

  1. Nella console Google Cloud, vai alla pagina Ambienti.

    Vai ad Ambienti

  2. Nell'elenco degli ambienti, fai clic sul nome dell'ambiente. Viene visualizzata la pagina Dettagli dell'ambiente.

  3. Vai alla scheda Configurazione dell'ambiente.

  4. Nell'elemento Risorse > Configurazione dei carichi di lavoro, fai clic su Modifica.

  5. Nel riquadro Configurazione dei carichi di lavoro, modifica i parametri per gli attivatori Airflow:

    1. Nel campo Numero di triggerer della sezione Triggerer, inserisci il numero di triggerer nel tuo ambiente.

      Se imposti almeno un attivatore per il tuo ambiente, utilizza anche i campi CPU e Memoria per configurare l'allocazione delle risorse per gli attivatori.

    2. In CPU e Memoria, specifica il numero di CPU, memoria e spazio di archiviazione per gli attivatori di Airflow. Ogni triggerer la quantità di risorse specificata.

  6. Fai clic su Salva.

gcloud

Sono disponibili i seguenti parametri dell'attivatore Airflow:

  • --triggerer-count: il numero di attivatori nel tuo ambiente.

    • Per ambienti di resilienza standard, utilizza un valore compreso tra 0 e 10.
    • Per ambienti altamente resilienti, utilizza 0 o un valore compreso tra 2 e 10.
  • --triggerer-cpu: il numero di CPU per un attivatore Airflow.

  • --triggerer-memory: la quantità di memoria per un flusso di lavoro Airflow triggerer.

Esegui il seguente comando Google Cloud CLI:

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

Sostituisci quanto segue:

  • ENVIRONMENT_NAME: il nome dell'ambiente.
  • LOCATION: la regione in cui si trova l'ambiente.
  • TRIGGERER_COUNT: il numero di triggerer.
  • TRIGGERER_CPU: il numero di CPU per un attivatore, in unità vCPU.
  • TRIGGERER_MEMORY: la quantità di memoria per un triggerer.
di Gemini Advanced.

Esempi:

  • Esegui la scalabilità fino a quattro istanze di triggerer:
  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. Nel parametro di query updateMask, specifica la maschera config.workloadsConfig.triggerer.

  2. Nel corpo della richiesta, specifica tutti e tre i parametri per gli attivatori.

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

Sostituisci quanto segue:

  • TRIGGERER_COUNT: il numero di attivatori.

    • Per ambienti di resilienza standard, utilizza un valore compreso tra 0 e 10.
    • Per ambienti altamente resilienti, utilizza 0 o un valore compreso tra 2 e 10.
  • TRIGGERER_CPU: il numero di CPU per un attivatore, in unità vCPU.

  • TRIGGERER_MEMORY: la quantità di memoria per un attivatore.

Esempi:

  • Disattiva gli attivatori impostando il conteggio degli attivatori su 0. Questa operazione non richiede la specifica di CPU o memoria per gli attivatori.
// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.workloadsConfig.triggerer
"config": {
  "workloadsConfig": {
    "triggerer": {
      "count": 0
    }
  }
}
  • Esegui la scalabilità fino a quattro istanze di triggerer:
// 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

I seguenti campi nel blocco workloads_config.triggerer controllano i parametri dell'attivatore Airflow. Ogni triggerer utilizza la quantità specificata Google Cloud.

  • triggerer.count: il numero di attivatori nel tuo ambiente.

    • Per gli ambienti di resilienza standard, utilizza un valore compreso tra 0 e 10.
    • Per ambienti altamente resilienti, utilizza 0 o un valore compreso tra 2 e 10.
  • triggerer.cpu: il numero di CPU per un triggerer Airflow.

  • triggerer.memory_gb: la quantità di memoria per un triggerer 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
      }
    }

  }
}

Sostituisci quanto segue:

  • ENVIRONMENT_NAME: il nome dell'ambiente.
  • LOCATION: la regione in cui si trova l'ambiente.
  • TRIGGERER_COUNT: il numero di triggerer.
  • TRIGGERER_CPU: il numero di CPU per un attivatore, in unità vCPU.
  • TRIGGERER_MEMORY: la quantità di memoria per un attivatore, in GB.

Esempio:

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
      }
    }

  }
}

Modificare i parametri del processore DAG

Puoi specificare il numero di processori DAG nel tuo ambiente e la quantità di CPU, memoria e spazio su disco utilizzati da ciascun processore DAG.

Console

  1. Nella console Google Cloud, vai alla pagina Ambienti.

    Vai ad Ambienti

  2. Nell'elenco degli ambienti, fai clic sul nome dell'ambiente. Viene visualizzata la pagina Dettagli dell'ambiente.

  3. Vai alla scheda Configurazione dell'ambiente.

  4. Nell'elemento Risorse > Configurazione dei carichi di lavoro, fai clic su Modifica.

  5. Nel riquadro Configurazione dei carichi di lavoro, regola i parametri per Airflow Processori DAG:

    • Nell'elenco a discesa Numero di processori DAG, seleziona il numero di processori DAG per il tuo ambiente.

    • Nei campi CPU, Memoria e Spazio di archiviazione, specifica il numero di CPU, memoria e spazio di archiviazione per i processori DAG Airflow. Ogni DAG di un processore usa la quantità specificata di risorse.

  6. Fai clic su Salva.

gcloud

Sono disponibili i seguenti parametri del processore DAG di Airflow:

  • --dag-processor-count: il numero di processori DAG.
  • --dag-processor-cpu: il numero di CPU per il processore DAG.
  • --dag-processor-memory: la quantità di memoria per il processore DAG.
  • --dag-processor-storage: la quantità di spazio su disco per il DAG di fatturazione.

Esegui il seguente comando Google Cloud CLI:

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

Sostituisci quanto segue:

  • ENVIRONMENT_NAME: il nome dell'ambiente.
  • LOCATION: la regione in cui si trova l'ambiente.
  • DAG_PROCESSOR_CPU: il numero di CPU per il processore DAG.
  • DAG_PROCESSOR_MEMORY: la quantità di memoria per il processore DAG.
  • DAG_PROCESSOR_STORAGE: lo spazio su disco per il processore DAG.
di Gemini Advanced.

Esempio:

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. Crea una richiesta API environments.patch.

  2. In questa richiesta:

    1. Nel parametro updateMask, specifica la maschera config.workloadsConfig.dagProcessor per aggiornare tutti i parametri del processore DAG, incluso il numero di processori DAG. Puoi aggiornano anche i singoli parametri del processore DAG specificando una maschera. Ad esempio, config.workloadsConfig.dagProcessor.cpu,config.workloadsConfig.dagProcessor.memoryGb,config.workloadsConfig.dagProcessor.storageGb.

    2. Nel corpo della richiesta, specifica i nuovi parametri del processore DAG.

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

Sostituisci quanto segue:

  • ENVIRONMENT_NAME: il nome dell'ambiente.
  • LOCATION: la regione in cui si trova l'ambiente.
  • DAG_PROCESSOR_COUNT: il numero di processori DAG.
  • DAG_PROCESSOR_CPU: il numero di CPU per il processore DAG, in vCPU unità.
  • DAG_PROCESSOR_MEMORY: la quantità di memoria per il DAG in GB.
  • DAG_PROCESSOR_STORAGE: la quantità di spazio su disco per il processore DAG, in GB.

Esempio:

// 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

I seguenti campi nel blocco workloads_config.dag_processor controllano i parametri del processore DAG di Airflow. Ogni processore DAG utilizza il valore una quantità di risorse.

  • dag_processor.count: il numero di processori DAG nel tuo ambiente.
  • dag_processor.cpu: il numero di CPU per un processore DAG.
  • dag_processor.memory_gb: la quantità di memoria per un processore DAG.
  • dag_processor.storage_gb la quantità di spazio su disco per un processore 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
      }
    }

  }
}

Sostituisci quanto segue:

  • ENVIRONMENT_NAME: il nome dell'ambiente.
  • LOCATION: la regione in cui si trova l'ambiente.
  • DAG_PROCESSOR_COUNT: il numero di processori DAG.
  • DAG_PROCESSOR_CPU: il numero di CPU per il processore DAG, in vCPU unità.
  • DAG_PROCESSOR_MEMORY: la quantità di memoria per il DAG in GB.
  • DAG_PROCESSOR_STORAGE: la quantità di spazio su disco per il processore DAG, in GB.

Esempio:

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
      }
    }

  }
}

Regola i parametri del server web

Puoi specificare la quantità di CPU, memoria e spazio su disco utilizzata dal server web Airflow nel tuo ambiente. In questo modo, puoi scalare le prestazioni UI di Airflow, ad esempio, per soddisfare la domanda proveniente da un gran numero o un numero elevato di DAG gestiti.

Console

  1. Nella console Google Cloud, vai alla pagina Ambienti.

    Vai ad Ambienti

  2. Nell'elenco degli ambienti, fai clic sul nome dell'ambiente. Viene visualizzata la pagina Dettagli dell'ambiente.

  3. Vai alla scheda Configurazione dell'ambiente.

  4. Nell'elemento Risorse > Configurazione dei carichi di lavoro, fai clic su Modifica.

  5. Nel riquadro Configurazione dei carichi di lavoro, modifica i parametri per il server web. Nei campi CPU, Memoria e Spazio di archiviazione, specifica il numero di CPU, la memoria e lo spazio di archiviazione per il server web.

  6. Fai clic su Salva.

gcloud

Sono disponibili i seguenti parametri del server web di Airflow:

  • --web-server-cpu: il numero di CPU per il server web Airflow.
  • --web-server-memory: la quantità di memoria per il web Airflow server web.
  • --web-server-storage: la quantità di spazio su disco per Airflow server web.

Esegui questo comando di Google Cloud CLI:

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

Sostituisci quanto segue:

  • ENVIRONMENT_NAME: il nome dell'ambiente.
  • LOCATION: la regione in cui si trova l'ambiente.
  • WEB_SERVER_CPU: il numero di CPU per il server web, in unità vCPU.
  • WEB_SERVER_MEMORY: la quantità di memoria per il server web.
  • WEB_SERVER_STORAGE: la quantità di memoria per il server web.
di Gemini Advanced.

Esempio:

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

API

  1. Crea una richiesta API environments.patch.

  2. In questa richiesta:

    1. Nel parametro updateMask, specifica la maschera config.workloadsConfig.webServer per aggiornare tutti i parametri del server web. Puoi anche aggiornare i singoli parametri del server web specificando una maschera per questi parametri: config.workloadsConfig.webServer.cpu, config.workloadsConfig.webServer.memoryGb, config.workloadsConfig.webServer.storageGb.

    2. Specifica i nuovi parametri del server web nel corpo della richiesta.

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

Sostituisci quanto segue:

  • ENVIRONMENT_NAME: il nome dell'ambiente.
  • LOCATION: la regione in cui si trova l'ambiente.
  • WEB_SERVER_CPU: il numero di CPU per il server web, in unità vCPU.
  • WEB_SERVER_MEMORY: la quantità di memoria per il server web, in GB.
  • WEB_SERVER_STORAGE: le dimensioni del disco per il server web, in GB.

Esempio:

// 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

I seguenti campi nel blocco workloads_config.web_server controllano i parametri del server web.

  • web_server.cpu: il numero di CPU per il server web.
  • web_server.memory_gb: la quantità di memoria per il server web.
  • web_server.storage_gb: la quantità di spazio su disco per il server 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
      }
    }

  }
}

Sostituisci quanto segue:

  • ENVIRONMENT_NAME: il nome dell'ambiente.
  • LOCATION: la regione in cui si trova l'ambiente.
  • WEB_SERVER_CPU: il numero di CPU per il server web, in unità vCPU.
  • WEB_SERVER_MEMORY: la quantità di memoria per il server web, in GB.
  • WEB_SERVER_STORAGE: le dimensioni del disco per il server web, in GB.

Esempio:

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
      }
    }

  }
}

Modificare le dimensioni dell'ambiente

Le dimensioni dell'ambiente controllano i parametri delle prestazioni dell'infrastruttura Cloud Composer che include, ad esempio, il database Airflow.

Considera la possibilità di selezionare una dimensione dell'ambiente più grande se vuoi eseguire un di DAG e attività.

Console

  1. Nella console Google Cloud, vai alla pagina Ambienti.

    Vai ad Ambienti

  2. Nell'elenco degli ambienti, fai clic sul nome dell'ambiente. Viene visualizzata la pagina Dettagli dell'ambiente.

  3. Vai alla scheda Configurazione dell'ambiente.

  4. Nell'elemento Risorse > Configurazione carichi di lavoro, fai clic su Modifica.

  5. Nell'elemento Risorse > Infrastruttura di base, fai clic su Modifica.

  6. Nel riquadro Infrastruttura di base, nel campo Dimensione dell'ambiente, specifica la dimensione dell'ambiente.

  7. Fai clic su Salva.

gcloud

L'argomento --environment-size controlla le dimensioni dell'ambiente:

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

Sostituisci quanto segue:

  • ENVIRONMENT_NAME: il nome dell'ambiente.
  • LOCATION: la regione in cui si trova l'ambiente.
  • ENVIRONMENT_SIZE: small, medium o large.

Esempio:

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

API

  1. Crea una richiesta API environments.patch.

  2. In questa richiesta:

    1. Nel parametro updateMask, specifica la maschera config.environmentSize.

    2. Nel corpo della richiesta, specifica le dimensioni dell'ambiente.

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

Sostituisci quanto segue:

  • ENVIRONMENT_SIZE: le dimensioni dell'ambiente ENVIRONMENT_SIZE_SMALL, ENVIRONMENT_SIZE_MEDIUM o ENVIRONMENT_SIZE_LARGE.

Esempio:

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

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

Terraform

Il campo environment_size nel blocco config controlla l'ambiente dimensioni:

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

  config {

    environment_size = "ENVIRONMENT_SIZE"

  }
}

Sostituisci quanto segue:

  • ENVIRONMENT_NAME: il nome dell'ambiente.
  • LOCATION: la regione in cui si trova l'ambiente.
  • ENVIRONMENT_SIZE: le dimensioni dell'ambiente ENVIRONMENT_SIZE_SMALL, ENVIRONMENT_SIZE_MEDIUM o ENVIRONMENT_SIZE_LARGE.

Esempio:

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

  config {

    environment_size = "ENVIRONMENT_SIZE_SMALL"

    }
  }
}

Passaggi successivi