Cloud Composer 1 | Cloud Composer 2
En esta página, se describe cómo escalar entornos de Cloud Composer en Cloud Composer 2.
Otras páginas sobre el escalamiento:
Para obtener una guía sobre cómo seleccionar los parámetros de escala y rendimiento óptimos para tu entorno, consulta Optimiza el rendimiento y los costos del entorno.
Para obtener información sobre cómo funciona el escalamiento del entorno, consulta Escalamiento del entorno.
Escalar vertical y horizontalmente
Opciones de escalamiento horizontal:
- Ajusta la cantidad mínima y máxima de trabajadores
- Ajusta la cantidad de programadores
- Ajusta la cantidad de activadores
Opciones de escalamiento vertical:
- Ajusta los parámetros de escala y rendimiento de trabajadores, programadores, activadores y servidores web
- Ajusta el tamaño del entorno
Ajusta la cantidad mínima y máxima de trabajadores
Puedes configurar la cantidad mínima y máxima de trabajadores para tu entorno. Cloud Composer escala automáticamente tu entorno dentro de los límites establecidos. Puedes ajustar estos límites en cualquier momento.
Console
Ve a la página Entornos en la consola de Google Cloud:
Selecciona tu entorno.
Ve a la pestaña Configuración del entorno.
En el elemento Recursos > Configuración de cargas de trabajo (Workloads configuration), haz clic en Editar (Edit).
En el diálogo Configuración de las cargas de trabajo, en la sección Ajuste de escala automático de los trabajadores, ajusta los límites para los trabajadores de Airflow:
En el campo Cantidad mínima de trabajadores, especifica la cantidad de trabajadores de Airflow que tu entorno debe ejecutar en todo momento. La cantidad de trabajadores en tu entorno no es inferior a esta cantidad, incluso si una cantidad menor de trabajadores puede manejar la carga.
En el campo Cantidad máxima de trabajadores, especifica la cantidad máxima de trabajadores de Airflow que tu entorno puede ejecutar. La cantidad de trabajadores en tu entorno no supera esta cantidad, incluso si se requiere una mayor cantidad de trabajadores para manejar la carga.
Haz clic en Guardar.
gcloud
Ejecuta el siguiente comando de Google Cloud CLI:
gcloud composer environments update ENVIRONMENT_NAME \
--location LOCATION \
--min-workers WORKERS_MIN \
--max-workers WORKERS_MAX
Reemplaza lo siguiente:
ENVIRONMENT_NAME
por el nombre del entorno.LOCATION
por la región en la que se encuentra el entornoWORKERS_MIN
por la cantidad mínima de trabajadores de Airflow que tu entorno puede ejecutar. La cantidad de trabajadores de tu entorno no es inferior a esta cantidad, incluso si una cantidad menor de trabajadores puede manejar la carga.WORKERS_MAX
por la cantidad máxima de trabajadores de Airflow que tu entorno puede ejecutar. La cantidad de trabajadores en tu entorno no supera esta cantidad, incluso si se requiere una mayor cantidad de trabajadores para manejar la carga.
Ejemplo:
gcloud composer environments update example-environment \
--location us-central1 \
--min-workers 2 \
--max-workers 6
API
Realiza una solicitud a la API de
environments.patch
.En esta solicitud, realiza lo siguiente:
En el parámetro
updateMask
, especifica la máscaraconfig.softwareConfig.workloadsConfig.worker.minCount,config.softwareConfig.workloadsConfig.worker.maxCount
.En el cuerpo de la solicitud, en los campos
minCount
ymaxCount
, especifica los límites nuevos para los trabajadores.
"config": {
"workloadsConfig": {
"worker": {
"minCount": WORKERS_MIN,
"maxCount": WORKERS_MAX
}
}
}
Reemplaza lo siguiente:
WORKERS_MIN
por la cantidad mínima de trabajadores de Airflow que tu entorno puede ejecutar. La cantidad de trabajadores de tu entorno no es inferior a esta cantidad, incluso si una cantidad menor de trabajadores puede manejar la carga.WORKERS_MAX
por la cantidad máxima de trabajadores de Airflow que tu entorno puede ejecutar. La cantidad de trabajadores en tu entorno no supera esta cantidad, incluso si se requiere una mayor cantidad de trabajadores para manejar la carga.
Ejemplo:
// 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": {
"minCount": 2,
"maxCount": 6
}
}
}
Terraform
En los campos min_count
y max_count
del bloque workloadsConfig.worker
, se especifica la cantidad mínima y máxima de trabajadores en tu entorno:
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
}
}
}
}
Reemplaza lo siguiente:
ENVIRONMENT_NAME
por el nombre del entorno.LOCATION
por la región en la que se encuentra el entornoWORKERS_MIN
por la cantidad mínima de trabajadores de Airflow que tu entorno puede ejecutar. La cantidad de trabajadores de tu entorno no es inferior a esta cantidad, incluso si una cantidad menor de trabajadores puede manejar la carga.WORKERS_MAX
por la cantidad máxima de trabajadores de Airflow que tu entorno puede ejecutar. La cantidad de trabajadores en tu entorno no supera esta cantidad, incluso si se requiere una mayor cantidad de trabajadores para manejar la carga.
Ejemplo:
resource "google_composer_environment" "example" {
provider = google-beta
name = "example-environment"
region = "us-central1"
config {
workloads_config {
worker {
min_count = 2
max_count = 6
}
}
}
}
Ajusta la cantidad de programadores
Tu entorno puede ejecutar más de un programador de Airflow al mismo tiempo. Usa varios programadores para distribuir la carga entre varias instancias del programador a fin de mejorar el rendimiento y la confiabilidad.
Puedes tener hasta 10 programadores en tu entorno.Aumentar la cantidad de programadores no siempre mejora el rendimiento de Airflow. Por ejemplo, tener solo un programador puede proporcionar un mejor rendimiento que tener dos. Esto puede suceder cuando no se usa el programador adicional y, por lo tanto, consume recursos de tu entorno sin contribuir al rendimiento general. El rendimiento real del programador depende de la cantidad de trabajadores de Airflow, la cantidad de DAG y tareas que se ejecutan en tu entorno y la configuración de Airflow y el entorno.
Recomendamos comenzar con dos programadores y, luego, supervisar el rendimiento del entorno. Si cambias la cantidad de programadores, siempre puedes volver a escalar el entorno a la cantidad original.
Para obtener más información sobre la configuración de varios programadores, consulta la documentación de Airflow.
Para cambiar la cantidad de programadores de tu entorno, sigue estos pasos:
Console
Ve a la página Entornos en la consola de Google Cloud:
Selecciona tu entorno.
Ve a la pestaña Configuración del entorno.
En el elemento Recursos > Configuración de cargas de trabajo (Workloads configuration), haz clic en Editar (Edit).
En el cuadro de diálogo Configuración de cargas de trabajo (Workloads configuration), en la lista desplegable Cantidad de programadores, establece la cantidad de programadores de tu entorno.
Haz clic en Guardar.
gcloud
Ejecuta el siguiente comando de Google Cloud CLI:
gcloud composer environments update ENVIRONMENT_NAME \
--location LOCATION \
--scheduler-count SCHEDULER_COUNT
Reemplaza lo siguiente:
ENVIRONMENT_NAME
por el nombre del entorno.LOCATION
por la región en la que se encuentra el entornoSCHEDULER_COUNT
por la cantidad de programadores.
Ejemplo:
gcloud composer environments update example-environment \
--location us-central1 \
--scheduler-count 2
API
Crea una solicitud a la API de
environments.patch
.En esta solicitud, realiza lo siguiente:
En el parámetro
updateMask
, especifica la máscaraconfig.softwareConfig.workloadsConfig.scheduler
.En el cuerpo de la solicitud, en el campo
count
, especifica la cantidad de programadores.
"config": {
"workloadsConfig": {
"scheduler": {
"count": SCHEDULER_COUNT
}
}
}
Reemplaza lo siguiente:
SCHEDULER_COUNT
por la cantidad de programadores.
Ejemplo:
// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environmentsexample-environment?updateMask=
// config.workloadsConfig.scheduler
"config": {
"workloadsConfig": {
"scheduler": {
"count": 2
}
}
}
Terraform
El campo count
en el bloque workloads_config.scheduler
especifica la cantidad de programadores en el entorno.
resource "google_composer_environment" "example" {
provider = google-beta
name = "ENVIRONMENT_NAME"
region = "LOCATION"
config {
workloads_config {
scheduler {
count = SCHEDULER_COUNT
}
}
}
}
Reemplaza lo siguiente:
ENVIRONMENT_NAME
por el nombre del entorno.LOCATION
por la región en la que se encuentra el entornoSCHEDULER_COUNT
por la cantidad de programadores.
Ejemplo:
resource "google_composer_environment" "example" {
provider = google-beta
name = "example-environment"
region = "us-central1"
config {
workloads_config {
scheduler {
count = 2
}
}
}
}
Ajusta la cantidad de activadores
Puedes establecer la cantidad de activadores en cero, pero necesitas al menos una instancia de activador en tu entorno (o al menos dos en entornos de alta resiliencia) para usar operadores diferibles en tus DAG.
Según la configuración de resiliencia de tu entorno, existen diferentes configuraciones posibles para la cantidad de activadores:
- Resiliencia estándar: puedes ejecutar hasta 10 activadores
- Resiliencia alta: al menos 2 activadores, hasta un máximo de 10
Incluso si la cantidad de activadores se establece en cero, se crea una definición de Pod del activador y es visible en el clúster de tu entorno, pero no se ejecutan cargas de trabajo reales de activadores.
Si tienes más de cero activadores, se facturan con los SKU de Cloud Composer de Compute, al igual que otros componentes del entorno.
Console
En la consola de Google Cloud, ve a la página Entornos.
En la lista de entornos, haz clic en el nombre de tu entorno. Se abrirá la página Detalles del entorno.
Ve a la pestaña Configuración del entorno.
En el elemento Recursos > Cargas de trabajo, haz clic en Editar. Se abrirá el panel Configuración de cargas de trabajo.
En la sección Activador, usa el campo Cantidad de activadores para ingresar la cantidad de activadores de tu entorno.
Si configuras al menos un activador para tu entorno, usa los campos CPU y Memoria a fin de configurar la asignación de recursos para tus activadores.
Haz clic en Guardar y espera hasta que se actualice tu entorno.
gcloud
Ejecuta el siguiente comando de Google Cloud CLI:
gcloud composer environments update ENVIRONMENT_NAME \
--location LOCATION \
--triggerer-count TRIGGERER_COUNT
--triggerer-cpu TRIGGERER_CPU,
--triggerer-memory TRIGGERER_MEMORY
Reemplaza lo siguiente:
ENVIRONMENT_NAME
por el nombre del entorno.LOCATION
por la región en la que se encuentra el entornoTRIGGERER_COUNT
por la cantidad de activadores- Para entornos de resiliencia estándar, usa un valor entre
0
y10
. - Para entornos de alta resiliencia, usa
0
o un valor entre2
y10
.
- Para entornos de resiliencia estándar, usa un valor entre
TRIGGERER_CPU
por la cantidad de CPU de un activador, en unidades de CPU virtual Esta marca es opcional; si no se proporciona, se usa el valor predeterminado de la CPU virtual0.5
. Valores permitidos:0.5
,0.75
,1
.TRIGGERER_MEMORY
por la cantidad de memoria para un activador Esta marca es opcional; si no se proporciona, se usa el valor predeterminado de0.5
GB.La memoria mínima requerida es igual a la cantidad de CPU asignadas para los activadores. El valor máximo permitido es igual a la cantidad de CPU del activador multiplicada por 6.5.
Por ejemplo, si estableces la marca
--triggerer-cpu
en1
, el valor mínimo para--triggerer-memory
es1
y el valor máximo es6.5
.
Ejemplos:
Se inhabilitaron los activadores mediante la configuración del recuento de activadores en
0
. Esta operación no requiere especificar la CPU o la memoria para los activadores.gcloud composer environments update example-environment \ --location us-central1 \ --triggerer-count 0
Escalamiento a varias instancias de activadores:
gcloud composer environments update example-environment \ --location us-central1 \ --triggerer-count 4 \ --triggerer-cpu 1 \ --triggerer-memory 1GB
API
Crea una solicitud a la API de
environments.patch
.En el parámetro de consulta
updateMask
, especifica la máscaraconfig.workloadsConfig.triggerer
.En el cuerpo de la solicitud, usa el siguiente objeto:
"config": {
"workloadsConfig": {
"triggerer": {
"count": TRIGGERER_COUNT,
"cpu": TRIGGERER_CPU,
"memoryGb": TRIGGERER_MEMORY
}
}
}
Reemplaza lo siguiente:
TRIGGERER_COUNT
por la cantidad de activadores- Para entornos de resiliencia estándar, usa un valor entre
0
y10
. Para entornos de alta resiliencia, usa
0
o un valor entre2
y10
.Si usas al menos un activador, también debes especificar los valores para
TRIGGERER_CPU
yTRIGGERER_MEMORY
:Establece
TRIGGERER_CPU
en la cantidad de CPU para un activador, en unidades de CPU virtual. Valores permitidos:0.5
,0.75
,1
.Establece
TRIGGERER_MEMORY
en la cantidad de memoria para un activador. La memoria mínima requerida es igual a la cantidad de CPU asignadas para los activadores. El valor máximo permitido es igual a la cantidad de CPU del activador multiplicada por 6.5.Por ejemplo, si configuras
TRIGGERER_CPU
como1
, el valor mínimo paraTRIGGERER_MEMORY
es1
y el valor máximo es6.5
.
- Para entornos de resiliencia estándar, usa un valor entre
Ejemplos:
Se inhabilitaron los activadores mediante la configuración del recuento de activadores en
0
. Esta operación no requiere especificar la CPU o la memoria para los activadores.// PATCH https://composer.googleapis.com/v1beta1/projects/example-project/ // locations/us-central1/environments/example-environment?updateMask= // config.workloadsConfig.triggerer "config": { "workloadsConfig": { "triggerer": { "count": 0 } } }
Escalamiento a varias instancias de activadores:
// PATCH https://composer.googleapis.com/v1beta1/projects/example-project/ // locations/us-central1/environments/example-environment?updateMask= // config.workloadsConfig.triggerer "config": { "workloadsConfig": { "triggerer": { "count": 4, "cpu": 1, "memoryGb": 1 } } }
Terraform
El campo count
en el bloque workloads_config.triggerer
especifica la cantidad de activadores en el entorno:
resource "google_composer_environment" "example" {
provider = google-beta
name = "ENVIRONMENT_NAME"
region = "LOCATION"
config {
workloads_config {
triggerer {
count = TRIGGERER_COUNT
}
}
}
}
Reemplaza lo siguiente:
ENVIRONMENT_NAME
por el nombre del entorno.LOCATION
por la región en la que se encuentra el entornoTRIGGERER_COUNT
por la cantidad de activadores
Ejemplo:
resource "google_composer_environment" "example" {
provider = google-beta
name = "example-environment"
region = "us-central1"
config {
workloads_config {
triggerer {
count = 1
}
}
}
}
Ajustar los parámetros de escala y rendimiento de trabajadores, programadores, activadores y servidores web
Puedes especificar la cantidad de CPU, memoria y espacio en disco que usa tu entorno. De esta manera, puedes aumentar el rendimiento de tu entorno, además del escalamiento horizontal proporcionado mediante el uso de varios trabajadores y programadores.
Console
En la consola de Google Cloud, ve a la página Entornos.
En la lista de entornos, haz clic en el nombre de tu entorno. Se abrirá la página Detalles del entorno.
Ve a la pestaña Configuración del entorno.
En el elemento Recursos > Cargas de trabajo, haz clic en Editar. Se abrirá el panel Configuración de cargas de trabajo.
En las listas desplegables Cantidad de programadores y Cantidad de activadores, selecciona la cantidad de programadores y activadores de tu entorno.
En el panel Configuración de cargas de trabajo, en los campos CPU, Memoria y Almacenamiento, se especifica la cantidad de CPU, memoria y almacenamiento para los programadores, el activador, el servidor web y los trabajadores de Airflow.
Haz clic en Guardar.
gcloud
Los siguientes argumentos controlan los parámetros de CPU, memoria y espacio en el disco de los programadores, el servidor web y los trabajadores de Airflow. Cada programador y trabajador usa la cantidad especificada de recursos.
--scheduler-cpu
especifica la cantidad de CPU para un programador de Airflow.--scheduler-memory
especifica la cantidad de memoria para un programador de Airflow.--scheduler-storage
especifica la cantidad de espacio en disco para un programador de Airflow.--triggerer-cpu
especifica la cantidad de CPU para un activador de Airflow. Valores permitidos:0.5
,0.75
,1
. Si deseas ajustar la CPU del activador, también se requieren las marcas--triggerer-memory
y--triggerer-count
.--triggerer-memory
especifica la cantidad de memoria para un activador de Airflow. Si deseas ajustar la memoria del activador, también se requieren las marcas--triggerer-cpu
y--triggerer-count
.La memoria mínima requerida es igual a la cantidad de CPU asignadas para los activadores. El valor máximo permitido es igual a la cantidad de CPU del activador multiplicada por 6.5.
Por ejemplo, si estableces la marca
--triggerer-cpu
en1
, el valor mínimo para--triggerer-memory
es1
y el valor máximo es6.5
.--web-server-cpu
especifica la cantidad de CPU para el servidor web de Airflow.--web-server-memory
especifica la cantidad de memoria para el servidor web de Airflow.--web-server-storage
especifica la cantidad de espacio en disco para el servidor web de Airflow.--worker-cpu
especifica la cantidad de CPU para un trabajador de Airflow.--worker-memory
especifica la cantidad de memoria para un trabajador de Airflow.--worker-storage
especifica la cantidad de espacio en el disco para un trabajador de Airflow.
gcloud composer environments update ENVIRONMENT_NAME \
--location LOCATION \
--scheduler-cpu SCHEDULER_CPU \
--scheduler-memory SCHEDULER_MEMORY \
--scheduler-storage SCHEDULER_STORAGE \
--triggerer-count TRIGGERER_COUNT \
--triggerer-cpu TRIGGERER_CPU \
--triggerer-memory TRIGGERER_MEMORY \
--web-server-cpu WEB_SERVER_CPU \
--web-server-memory WEB_SERVER_MEMORY \
--web-server-storage WEB_SERVER_STORAGE \
--worker-cpu WORKER_CPU \
--worker-memory WORKER_MEMORY \
--worker-storage WORKER_STORAGE
Reemplaza lo siguiente:
ENVIRONMENT_NAME
por el nombre del entorno.LOCATION
por la región en la que se encuentra el entornoSCHEDULER_CPU
por la cantidad de CPU para un programador, en unidades de CPU virtual.SCHEDULER_MEMORY
por la cantidad de memoria para un programador.SCHEDULER_STORAGE
por el tamaño del disco de un programador.TRIGGERER_COUNT
por la cantidad de activadores Este valor es obligatorio incluso si no quieres cambiar la cantidad actual de activadores y solo quieres ajustar su asignación de CPU o memoria.TRIGGERER_CPU
por la cantidad de CPU de un activador, en unidades de CPU virtualTRIGGERER_MEMORY
por la cantidad de memoria para un activadorWEB_SERVER_CPU
por la cantidad de CPU para el servidor web, en unidades de CPU virtuales.WEB_SERVER_MEMORY
por la cantidad de memoria para el servidor web.WEB_SERVER_STORAGE
por la cantidad de memoria para el servidor web.WORKER_CPU
por la cantidad de CPU para un trabajador, en unidades de CPU virtual.WORKER_MEMORY
por la cantidad de memoria para un trabajador.WORKER_STORAGE
por el tamaño del disco de un trabajador.
Ejemplo:
gcloud composer environments update example-environment \
--location us-central1 \
--scheduler-cpu 0.5 \
--scheduler-memory 2.5GB\
--scheduler-storage 2GB \
--triggerer-count 2 \
--triggerer-cpu 1 \
--triggerer-memory 1GB \
--web-server-cpu 1 \
--web-server-memory 2.5GB \
--web-server-storage 2GB \
--worker-cpu 1 \
--worker-memory 2GB \
--worker-storage 2GB
API
Crea una solicitud a la API de
environments.patch
.En esta solicitud, realiza lo siguiente:
- En el parámetro
updateMask
, especifica los campos que deseas actualizar. Por ejemplo, para actualizar todos los parámetros de los programadores, especifica la máscaraconfig.workloadsConfig.scheduler.cpu,config.workloadsConfig.scheduler.memoryGb,config.workloadsConfig.scheduler.storageGB
.
Cuando actualices los parámetros del activador, especifica la máscara
config.workloadsConfig.triggerer
. No se pueden especificar máscaras para parámetros individuales del activador.- En el cuerpo de la solicitud, especifica los parámetros de escalamiento y rendimiento.
- En el parámetro
"config": {
"workloadsConfig": {
"scheduler": {
"cpu": SCHEDULER_CPU,
"memoryGb": SCHEDULER_MEMORY,
"storageGb": SCHEDULER_STORAGE
},
"triggerer": {
"count": TRIGGERER_COUNT,
"cpu": TRIGGERER_CPU,
"memoryGb": TRIGGERER_MEMORY
}
"webServer": {
"cpu": WEB_SERVER_CPU,
"memoryGb": WEB_SERVER_MEMORY,
"storageGb": WEB_SERVER_STORAGE
},
"worker": {
"cpu": WORKER_CPU,
"memoryGb": WORKER_MEMORY,
"storageGb": WORKER_STORAGE
}
}
}
Reemplaza lo siguiente:
SCHEDULER_CPU
por la cantidad de CPU para un programador, en unidades de CPU virtual.SCHEDULER_MEMORY
por la cantidad de memoria para un programador, en GB.SCHEDULER_STORAGE
por el tamaño del disco de un programador, en GB.TRIGGERER_COUNT
por la cantidad de activadores Este parámetro es obligatorio incluso si no quieres cambiar la cantidad actual de activadores y solo quieres ajustar su asignación de CPU o memoria.TRIGGERER_CPU
por la cantidad de CPU de un activador, en unidades de CPU virtual Valores permitidos:0.5
,0.75
,1
.TRIGGERER_MEMORY
por la cantidad de memoria para un activadorLa memoria mínima requerida es igual a la cantidad de CPU asignadas para los activadores. El valor máximo permitido es igual a la cantidad de CPU del activador multiplicada por 6.5.
Por ejemplo, si configuras
TRIGGERER_CPU
como1
, el valor mínimo paraTRIGGERER_MEMORY
es1
y el valor máximo es6.5
.WEB_SERVER_CPU
por la cantidad de CPU para el servidor web, en unidades de CPU virtuales.WEB_SERVER_MEMORY
por la cantidad de memoria para el servidor web, en GB.WEB_SERVER_STORAGE
por el tamaño del disco del servidor web, en GB.WORKER_CPU
por la cantidad de CPU para un trabajador, en unidades de CPU virtual.WORKER_MEMORY
por la cantidad de memoria para un trabajador, en GB.WORKER_STORAGE
por el tamaño del disco de un trabajador, en GB.
Ejemplo:
// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.workloadsConfig.scheduler.cpu,
// config.workloadsConfig.scheduler.memoryGB,
// config.workloadsConfig.scheduler.storageGb,
// config.workloadsConfig.triggerer
// config.workloadsConfig.webServer.cpu,
// config.workloadsConfig.webServer.memoryGb,
// config.workloadsConfig.webServer.storageGb,
// config.workloadsConfig.worker.cpu,
// config.workloadsConfig.worker.memoryGb,
// config.workloadsConfig.worker.storageGb
"config": {
"workloadsConfig": {
"scheduler": {
"cpu": 0.5,
"memoryGb": 2.5,
"storageGb": 2
},
"triggerer": {
"count": 1,
"cpu": 1,
"memoryGb": 1
},
"webServer": {
"cpu": 0.5,
"memoryGb": 2.5,
"storageGb": 2
},
"worker": {
"cpu": 1,
"memoryGb": 2,
"storageGb": 2
}
}
}
Terraform
Los siguientes bloques en el bloque workloadsConfig
controlan los parámetros de CPU, memoria y espacio en disco de los programadores, el servidor web, los activadores y los trabajadores de Airflow. Cada programador, activador y trabajador usa la cantidad especificada de recursos.
- El campo
scheduler.cpu
especifica la cantidad de CPU para un programador de Airflow. - El campo
scheduler.memory_gb
especifica la cantidad de memoria para un programador de Airflow. - El campo
scheduler.storage_gb
especifica la cantidad de espacio en el disco de un programador. - El campo
triggerer.cpu
especifica la cantidad de CPU para un activador de Airflow. - El campo
triggerer.memory_gb
especifica la cantidad de memoria para un activador de Airflow. - El campo
web_server.cpu
especifica la cantidad de CPU para el servidor web de Airflow. - El campo
web_server.memory_gb
especifica la cantidad de memoria para el servidor web de Airflow. - En el campo
web_server.storage_gb
, se especifica la cantidad de espacio en el disco para el servidor web de Airflow. - En el campo
worker.cpu
, se especifica la cantidad de CPU para un trabajador de Airflow. - En el campo
worker.memory_gb
, se especifica la cantidad de memoria para un trabajador de Airflow. - En el campo
worker.storage_gb
, se especifica la cantidad de espacio en el disco para un trabajador de Airflow.
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
}
triggerer {
cpu = TRIGGERER_CPU
memory_gb = TRIGGERER_MEMORY
count = 1
}
web_server {
cpu = WEB_SERVER_CPU
memory_gb = WEB_SERVER_MEMORY
storage_gb = WEB_SERVER_STORAGE
}
worker {
cpu = WORKER_CPU
memory_gb = WORKER_MEMORY
storage_gb = WORKER_STORAGE
}
}
}
}
Reemplaza lo siguiente:
ENVIRONMENT_NAME
por el nombre del entorno.LOCATION
por la región en la que se encuentra el entornoSCHEDULER_CPU
por la cantidad de CPU para un programador, en unidades de CPU virtual.SCHEDULER_MEMORY
por la cantidad de memoria para un programador, en GB.SCHEDULER_STORAGE
por el tamaño del disco de un programador, en GB.TRIGGERER_CPU
por la cantidad de CPU de un activador, en unidades de CPU virtualTRIGGERER_MEMORY
por la cantidad de memoria para un activador, en GB.WEB_SERVER_CPU
por la cantidad de CPU para el servidor web, en unidades de CPU virtuales.WEB_SERVER_MEMORY
por la cantidad de memoria para el servidor web, en GB.WEB_SERVER_STORAGE
por el tamaño del disco del servidor web, en GB.WORKER_CPU
por la cantidad de CPU para un trabajador, en unidades de CPU virtual.WORKER_MEMORY
por la cantidad de memoria para un trabajador, en GB.WORKER_STORAGE
por el tamaño del disco de un trabajador, en GB.
Ejemplo:
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
}
triggerer {
cpu = 0.5
memory_gb = 0.5
count = 1
}
web_server {
cpu = 0.5
memory_gb = 1.875
storage_gb = 1
}
worker {
cpu = 0.5
memory_gb = 1.875
storage_gb = 1
}
}
}
}
Ajusta el tamaño del entorno
El tamaño del entorno controla los parámetros de rendimiento de la infraestructura administrada de Cloud Composer que incluye la base de datos de Airflow. Considera seleccionar un tamaño de entorno más grande si deseas ejecutar una gran cantidad de DAG y tareas.
Console
Ve a la página Entornos en la consola de Google Cloud:
Selecciona tu entorno.
Ve a la pestaña Configuración del entorno.
En el elemento Recursos > Infraestructura principal, haz clic en Editar.
En el cuadro de diálogo Infraestructura principal, en el campo Tamaño del entorno, especifica el tamaño del entorno.
Haz clic en Guardar.
gcloud
El argumento --environment-size
controla el tamaño del entorno:
gcloud composer environments update ENVIRONMENT_NAME \
--location LOCATION \
--environment-size ENVIRONMENT_SIZE
Reemplaza lo siguiente:
ENVIRONMENT_NAME
por el nombre del entorno.LOCATION
por la región en la que se encuentra el entornoENVIRONMENT_SIZE
porsmall
,medium
olarge
.
Ejemplo:
gcloud composer environments update example-environment \
--location us-central1 \
--environment-size medium
API
Crea una solicitud a la API de
environments.patch
.En esta solicitud, realiza lo siguiente:
En el parámetro
updateMask
, especifica la máscaraconfig.environmentSize
.En el cuerpo de la solicitud, especifica el tamaño del entorno.
"config": {
"environmentSize": "ENVIRONMENT_SIZE"
}
Reemplaza lo siguiente:
ENVIRONMENT_SIZE
por el tamaño del entorno,ENVIRONMENT_SIZE_SMALL
,ENVIRONMENT_SIZE_MEDIUM
oENVIRONMENT_SIZE_LARGE
.
Ejemplo:
// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.environmentSize
"config": {
"environmentSize": "ENVIRONMENT_SIZE_MEDIUM"
}
Terraform
El campo environment_size
en el bloque config
controla el tamaño del entorno:
resource "google_composer_environment" "example" {
provider = google-beta
name = "ENVIRONMENT_NAME"
region = "LOCATION"
config {
environment_size = "ENVIRONMENT_SIZE"
}
}
Reemplaza lo siguiente:
ENVIRONMENT_NAME
por el nombre del entorno.LOCATION
por la región en la que se encuentra el entornoENVIRONMENT_SIZE
por el tamaño del entorno,ENVIRONMENT_SIZE_SMALL
,ENVIRONMENT_SIZE_MEDIUM
oENVIRONMENT_SIZE_LARGE
.
Ejemplo:
resource "google_composer_environment" "example" {
provider = google-beta
name = "example-environment"
region = "us-central1"
config {
environment_size = "ENVIRONMENT_SIZE_SMALL"
}
}
}
¿Qué sigue?
- Escalamiento y rendimiento del entorno
- Precios de Cloud Composer
- Actualización de entornos
- Arquitectura del entorno