Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3
이 페이지에서는 Cloud Composer 환경을 확장하는 방법을 설명합니다.
확장 관련 다른 페이지:
- 환경에 가장 적합한 규모 및 성능 매개변수를 선택하는 방법은 환경 성능 및 비용 최적화를 참조하세요.
- 환경 확장 작동 방식에 대한 상세 설명은 환경 확장을 참조하세요.
수직 및 수평 확장
수평 확장 옵션:
- 최소 및 최대 작업자 수를 조정합니다.
- 스케줄러 및 트리거 수를 조정합니다.
수직 확장 옵션:
- 작업자, 스케줄러, 트리거, 웹 서버 확장 및 성능 매개변수를 조정합니다.
- 환경 크기를 조정합니다.
리소스 한도
구성요소 | 최소 수 | 최대 수 | 최소 vCPU | 최대 vCPU | vCPU 최소 단계 | 최소 메모리(GB) | 최대 메모리(GB) | 메모리 최소 단계(GB) | vCPU 1개당 최소 메모리(GB) | vCPU 1개당 최대 메모리(GB) | 최소 저장용량(GB) | 최대 저장용량(GB) | 저장용량 최소 단계(GB) |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
스케줄러 | 1 | 10 | 0.5 | 28 | 0.25 | 0.5 | 80 | - | 1 | 6.5 | 0.05 | 10 | - |
트리거 | 0 | 10 | 0.5 | 1 | 0.25 | 0.5 | 80 | - | 1 | 6.5 | - | - | - |
웹 서버 | - | - | 0.5 | 28 | 0.25 | 1 | 80 | - | 1 | 6.5 | 0.05 | 10 | - |
작업자 | 1 | 100 | 0.5 | 28 | 0.25 | 0.5 | 80 | - | 1 | 6.5 | 0.05 | 10 | - |
작업자 매개변수 조정
환경의 최소 및 최대 작업자 수를 설정할 수 있습니다. Cloud Composer는 설정된 한도 내에서 환경을 자동으로 확장합니다. 이 한도는 언제든지 조정할 수 있습니다.
환경에서 Airflow 작업자가 사용하는 CPU, 메모리, 디스크 공간의 크기를 지정할 수 있습니다. 이러한 방식으로 여러 작업자를 사용하여 제공되는 수평 확장 외에도 환경의 성능을 향상시킬 수 있습니다.
콘솔
Google Cloud 콘솔에서 환경 페이지로 이동합니다.
환경 목록에서 환경 이름을 클릭합니다. 환경 세부정보 페이지가 열립니다.
환경 구성 탭으로 이동합니다.
리소스 > 워크로드 구성 항목에서 수정을 클릭합니다.
워크로드 구성 창에서 Airflow 작업자의 매개변수를 조정합니다.
최소 작업자 수 필드에 환경에서 항상 실행해야 하는 Airflow 작업자 수를 지정합니다. 더 적은 작업자 수로 부하를 처리할 수 있더라도 사용자 환경의 작업자 수는 정상적인 환경 작동 중에 이 수보다 줄어들지 않습니다.
최대 작업자 수 필드에 환경에서 실행할 수 있는 최대 Airflow 작업자 수를 지정합니다. 더 많은 작업자 수로 부하를 처리해야 하는 경우에도 사용자 환경의 작업자 수는 이 수보다 많지 않습니다.
CPU, 메모리, 스토리지 필드에서 Airflow 작업자의 CPU, 메모리, 스토리지 수를 지정합니다. 각 작업자는 지정된 양의 리소스를 사용합니다.
저장을 클릭합니다.
gcloud
다음과 같은 Airflow 작업자 매개변수를 사용할 수 있습니다.
--min-workers
: 환경에서 항상 실행해야 하는 Airflow 작업자 수입니다. 더 적은 작업자 수로 부하를 처리할 수 있어도 사용자 환경의 작업자 수는 이 수보다 적지 않습니다.--max-workers
: 환경에서 실행할 수 있는 최대 Airflow 작업자 수입니다. 더 많은 작업자 수로 부하를 처리해야 하는 경우에도 사용자 환경의 작업자 수는 이 수보다 많지 않습니다.--worker-cpu
: Airflow 작업자의 CPU 수입니다.--worker-memory
: Airflow 작업자의 메모리 양입니다.--worker-storage
: Airflow 작업자의 디스크 공간 크기입니다.
다음 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
다음을 바꿉니다.
ENVIRONMENT_NAME
: 환경의 이름입니다.LOCATION
: 환경이 위치한 리전WORKERS_MIN
: 최소 Airflow 작업자 수WORKERS_MAX
: 최대 Airflow 작업자 수WORKER_CPU
: 작업자의 CPU 수(vCPU 단위)WORKER_MEMORY
: 작업자의 메모리 양WORKER_STORAGE
: 작업자의 디스크 크기
예를 들면 다음과 같습니다.
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
environments.patch
API 요청을 생성합니다.이 요청의 작성 방법:
updateMask
매개변수에서 업데이트할 필드를 지정합니다. 예를 들어 작업자의 모든 매개변수를 업데이트하려면config.workloadsConfig.worker.cpu,config.workloadsConfig.worker.memoryGb,config.workloadsConfig.worker.storageGB,config.softwareConfig.workloadsConfig.worker.minCount,config.softwareConfig.workloadsConfig.worker.maxCount
마스크를 지정합니다.요청 본문에서 새 작업자 매개변수를 지정합니다.
"config": {
"workloadsConfig": {
"worker": {
"minCount": WORKERS_MIN,
"maxCount": WORKERS_MAX,
"cpu": WORKER_CPU,
"memoryGb": WORKER_MEMORY,
"storageGb": WORKER_STORAGE
}
}
}
다음을 바꿉니다.
ENVIRONMENT_NAME
: 환경의 이름입니다.LOCATION
: 환경이 위치한 리전WORKERS_MIN
: 최소 Airflow 작업자 수WORKERS_MAX
: 최대 Airflow 작업자 수WORKER_CPU
: 작업자의 CPU 수(vCPU 단위)WORKER_MEMORY
: 작업자의 메모리 양(GB)WORKER_STORAGE
: 작업자의 디스크 크기(GB)
예를 들면 다음과 같습니다.
// 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
workloads_config.worker
블록의 다음 필드는 Airflow 작업자 매개변수를 제어합니다. 각 작업자는 지정된 양의 리소스를 사용합니다.
worker.min_count
: 환경에서 항상 실행해야 하는 Airflow 작업자 수입니다. 더 적은 작업자 수로 부하를 처리할 수 있어도 사용자 환경의 작업자 수는 이 수보다 적지 않습니다.worker.max_count
: 환경에서 실행할 수 있는 최대 Airflow 작업자 수입니다. 더 많은 작업자 수로 부하를 처리해야 하는 경우에도 사용자 환경의 작업자 수는 이 수보다 많지 않습니다.worker.cpu
: Airflow 작업자의 CPU 수입니다.worker.memory_gb
: Airflow 작업자의 메모리 양입니다.worker.storage_gb
: 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
}
}
}
}
다음을 바꿉니다.
ENVIRONMENT_NAME
: 환경의 이름입니다.LOCATION
: 환경이 위치한 리전WORKERS_MIN
: 최소 Airflow 작업자 수WORKERS_MAX
: 최대 Airflow 작업자 수WORKER_CPU
: 작업자의 CPU 수(vCPU 단위)WORKER_MEMORY
: 작업자의 메모리 양(GB)WORKER_STORAGE
: 작업자의 디스크 크기(GB)
예를 들면 다음과 같습니다.
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
}
}
}
}
스케줄러 매개변수 조정
환경에서 동시에 2개 이상의 Airflow 스케줄러를 실행할 수 있습니다. 성능 및 안정성을 높이기 위해 여러 스케줄러를 사용하여 여러 스케줄러 인스턴스 사이에 부하를 분산합니다.
환경에는 최대 10개의 스케줄러를 사용할 수 있습니다.
스케줄러 수를 늘린다고 해서 항상 Airflow 성능이 향상되는 것은 아닙니다. 예를 들어 1개의 스케줄러만 사용하면 2개를 사용할 때보다 더 나은 성능을 제공할 수 있습니다. 스케줄러를 추가해도 전체 성능에 도움을 주지 않고 환경의 리소스만 소비될 때가 여기에 해당합니다. 실제 스케줄러 성능은 Airflow 작업자 수, 환경에서 실행되는 DAG 및 태스크 수, Airflow와 환경의 구성에 따라 다릅니다.
2개의 스케줄러로 시작한 다음 환경의 성능을 모니터링하는 것이 좋습니다. 스케줄러 수를 변경한 후 언제든지 환경을 원래 스케줄러 수로 다시 조정할 수 있습니다.
여러 스케줄러 구성에 대한 자세한 내용은 Airflow 문서를 참조하세요.
환경에서 Airflow 스케줄러가 사용하는 CPU, 메모리, 디스크 공간의 크기를 지정할 수 있습니다. 이러한 방식으로 여러 스케줄러를 사용하여 제공되는 수평 확장 외에도 환경의 성능을 향상시킬 수 있습니다.
콘솔
Google Cloud 콘솔에서 환경 페이지로 이동합니다.
환경 목록에서 환경 이름을 클릭합니다. 환경 세부정보 페이지가 열립니다.
환경 구성 탭으로 이동합니다.
리소스 > 워크로드 구성 항목에서 수정을 클릭합니다.
워크로드 구성 창에서 Airflow 스케줄러의 매개변수를 조정합니다.
스케줄러 수 드롭다운 목록에서 환경의 스케줄러 수를 선택합니다.
CPU, 메모리, 스토리지 필드에서 Airflow 스케줄러의 CPU, 메모리, 스토리지 수를 지정합니다. 각 스케줄러는 지정된 양의 리소스를 사용합니다.
저장을 클릭합니다.
gcloud
다음과 같은 Airflow 스케줄러 매개변수를 사용할 수 있습니다.
--scheduler-count
: 환경의 스케줄러 수입니다.--scheduler-cpu
: Airflow 스케줄러의 CPU 수입니다.--scheduler-memory
: Airflow 스케줄러의 메모리 양입니다.--scheduler-storage
: Airflow 스케줄러의 디스크 공간 크기입니다.
다음 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
다음을 바꿉니다.
ENVIRONMENT_NAME
: 환경의 이름입니다.LOCATION
: 환경이 위치한 리전SCHEDULER_CPU
: 스케줄러의 CPU 수(vCPU 단위)입니다.SCHEDULER_MEMORY
: 스케줄러의 메모리 양입니다.SCHEDULER_STORAGE
: 스케줄러의 디스크 크기입니다.SCHEDULER_COUNT
: 스케줄러 수입니다.
예를 들면 다음과 같습니다.
gcloud composer environments update example-environment \
--location us-central1 \
--scheduler-cpu 0.5 \
--scheduler-memory 2.5 \
--scheduler-storage 2 \
--scheduler-count 2
API
environments.patch
API 요청을 생성합니다.이 요청의 작성 방법:
updateMask
매개변수에서 모든 스케줄러 매개변수 또는 스케줄러 수만 업데이트하도록config.workloadsConfig.scheduler
마스크를 지정합니다. 마스크를 지정하여count
를 제외하고 개별 스케줄러 매개변수를 업데이트할 수도 있습니다. 예를 들면config.workloadsConfig.scheduler.cpu
입니다.요청 본문에서 새 스케줄러 매개변수를 지정합니다.
"config": {
"workloadsConfig": {
"scheduler": {
"cpu": SCHEDULER_CPU,
"memoryGb": SCHEDULER_MEMORY,
"storageGb": SCHEDULER_STORAGE,
"count": SCHEDULER_COUNT
}
}
}
다음을 바꿉니다.
ENVIRONMENT_NAME
: 환경의 이름입니다.LOCATION
: 환경이 위치한 리전SCHEDULER_CPU
: 스케줄러의 CPU 수(vCPU 단위)입니다.SCHEDULER_MEMORY
: 스케줄러의 메모리 양(GB)입니다.SCHEDULER_STORAGE
: 스케줄러의 디스크 크기(GB)입니다.SCHEDULER_COUNT
: 스케줄러 수입니다.
예를 들면 다음과 같습니다.
// 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
workloads_config.scheduler
블록의 다음 필드는 Airflow 스케줄러 매개변수를 제어합니다. 각 스케줄러는 지정된 양의 리소스를 사용합니다.
scheduler.count
: 환경의 스케줄러 수입니다.scheduler.cpu
: Airflow 스케줄러의 CPU 수입니다.scheduler.memory_gb
: Airflow 스케줄러의 메모리 양입니다.scheduler.storage_gb
: 스케줄러의 디스크 공간 크기입니다.
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
}
}
}
}
다음을 바꿉니다.
ENVIRONMENT_NAME
: 환경의 이름입니다.LOCATION
: 환경이 위치한 리전SCHEDULER_CPU
: 스케줄러의 CPU 수(vCPU 단위)입니다.SCHEDULER_MEMORY
: 스케줄러의 메모리 양(GB)입니다.SCHEDULER_STORAGE
: 스케줄러의 디스크 크기(GB)입니다.SCHEDULER_COUNT
: 스케줄러 수입니다.
예를 들면 다음과 같습니다.
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
}
}
}
}
트리거 매개변수 조정
트리거 수를 0으로 설정할 수 있지만 환경에는 트리거 인스턴스가 1개 이상(또는 복원력이 우수한 환경에서는 2개 이상)이 있어야 DAG에서 지연 가능한 연산자를 사용할 수 있습니다.
환경의 복원력 모드에 따라 트리거 수에 대한 여러 구성이 가능합니다.
- 표준 복원력: 최대 10개의 트리거를 실행할 수 있음
- 높은 복원력: 트리거 최소 2개, 최대 10개
트리거 수를 0으로 설정해도 트리거 포드 정의가 생성되고 환경의 클러스터에 표시되지만 실제 트리거 워크로드는 실행되지 않습니다.
환경에서 Airflow 트리거가 사용하는 CPU, 메모리, 디스크 공간의 크기를 지정할 수도 있습니다. 이러한 방식으로 여러 트리거를 사용하여 제공되는 수평 확장 외에도 환경의 성능을 향상시킬 수 있습니다.
콘솔
Google Cloud 콘솔에서 환경 페이지로 이동합니다.
환경 목록에서 환경 이름을 클릭합니다. 환경 세부정보 페이지가 열립니다.
환경 구성 탭으로 이동합니다.
리소스 > 워크로드 구성 항목에서 수정을 클릭합니다.
워크로드 구성 창에서 Airflow 트리거의 매개변수를 조정합니다.
트리거 섹션의 트리거 수 필드에 환경의 트리거 수를 입력합니다.
환경에 트리거를 최소 하나 이상 설정하는 경우 CPU 및 메모리 필드도 사용하여 트리거에 대한 리소스 할당을 구성합니다.
CPU 및 메모리에서 Airflow 트리거의 CPU, 메모리, 스토리지 수를 지정합니다. 각 트리거는 지정된 양의 리소스를 사용합니다.
저장을 클릭합니다.
gcloud
다음과 같은 Airflow 트리거 매개변수를 사용할 수 있습니다.
--triggerer-count
: 환경의 트리거 수입니다.- 표준 복원력 환경의 경우
0
에서10
사이의 값을 사용합니다. - 복원력이 우수한 환경의 경우
0
을 사용하거나2
에서10
사이의 값을 사용합니다.
- 표준 복원력 환경의 경우
--triggerer-cpu
: Airflow 트리거의 CPU 수입니다.--triggerer-memory
: Airflow 트리거의 메모리 양입니다.
다음 Google Cloud CLI 명령어를 실행합니다.
gcloud composer environments update ENVIRONMENT_NAME \
--location LOCATION \
--triggerer-count TRIGGERER_COUNT \
--triggerer-cpu TRIGGERER_CPU \
--triggerer-memory TRIGGERER_MEMORY
다음을 바꿉니다.
ENVIRONMENT_NAME
: 환경의 이름입니다.LOCATION
: 환경이 위치한 리전TRIGGERER_COUNT
: 트리거 수TRIGGERER_CPU
: 트리거의 CPU 수(vCPU 단위)TRIGGERER_MEMORY
: 트리거의 메모리 양
예를 들면 다음과 같습니다.
- 4개의 트리거 인스턴스로 확장합니다.
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
updateMask
쿼리 매개변수에서config.workloadsConfig.triggerer
마스크를 지정합니다.요청 본문에서 트리거에 대한 세 가지 매개변수를 모두 지정합니다.
"config": {
"workloadsConfig": {
"triggerer": {
"count": TRIGGERER_COUNT,
"cpu": TRIGGERER_CPU,
"memoryGb": TRIGGERER_MEMORY
}
}
}
다음을 바꿉니다.
TRIGGERER_COUNT
: 트리거 수- 표준 복원력 환경의 경우
0
에서10
사이의 값을 사용합니다. - 복원력이 우수한 환경의 경우
0
을 사용하거나2
에서10
사이의 값을 사용합니다.
- 표준 복원력 환경의 경우
TRIGGERER_CPU
: 트리거의 CPU 수(vCPU 단위)TRIGGERER_MEMORY
: 트리거의 메모리 양
예를 들면 다음과 같습니다.
- 트리거 수를
0
으로 설정하여 트리거를 사용 중지합니다. 이 작업에서는 트리거의 CPU 또는 메모리를 지정할 필요가 없습니다.
// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.workloadsConfig.triggerer
"config": {
"workloadsConfig": {
"triggerer": {
"count": 0
}
}
}
- 4개의 트리거 인스턴스로 확장합니다.
// 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
workloads_config.triggerer
블록의 다음 필드는 Airflow 트리거 매개변수를 제어합니다. 각 트리거는 지정된 양의 리소스를 사용합니다.
triggerer.count
: 환경의 트리거 수입니다.- 표준 복원력 환경의 경우
0
에서10
사이의 값을 사용합니다. - 복원력이 우수한 환경의 경우
0
을 사용하거나2
에서10
사이의 값을 사용합니다.
- 표준 복원력 환경의 경우
triggerer.cpu
: Airflow 트리거의 CPU 수입니다.triggerer.memory_gb
: 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
}
}
}
}
다음을 바꿉니다.
ENVIRONMENT_NAME
: 환경의 이름입니다.LOCATION
: 환경이 위치한 리전TRIGGERER_COUNT
: 트리거 수TRIGGERER_CPU
: 트리거의 CPU 수(vCPU 단위)TRIGGERER_MEMORY
: 트리거의 메모리 양(GB)
예를 들면 다음과 같습니다.
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
}
}
}
}
웹 서버 매개변수 조정
환경에서 Airflow 웹 서버가 사용하는 CPU, 메모리, 디스크 공간의 크기를 지정할 수 있습니다. 이러한 방식으로 예를 들어 다수의 사용자 또는 다수의 관리형 DAG로부터 발생하는 수요에 맞게 Airflow UI의 성능을 확장할 수 있습니다.
콘솔
Google Cloud 콘솔에서 환경 페이지로 이동합니다.
환경 목록에서 환경 이름을 클릭합니다. 환경 세부정보 페이지가 열립니다.
환경 구성 탭으로 이동합니다.
리소스 > 워크로드 구성 항목에서 수정을 클릭합니다.
워크로드 구성 창에서 웹 서버의 매개변수를 조정합니다. CPU, 메모리, 스토리지 필드에서 웹 서버의 CPU, 메모리, 스토리지 수를 지정합니다.
저장을 클릭합니다.
gcloud
다음과 같은 Airflow 웹 서버 매개변수를 사용할 수 있습니다.
--web-server-cpu
: Airflow 웹 서버의 CPU 수입니다.--web-server-memory
: Airflow 웹 서버의 메모리 양입니다.--web-server-storage
: Airflow 웹 서버의 디스크 공간 크기입니다.
다음 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
다음을 바꿉니다.
ENVIRONMENT_NAME
: 환경의 이름입니다.LOCATION
: 환경이 위치한 리전WEB_SERVER_CPU
: 웹 서버의 CPU 수(vCPU 단위)WEB_SERVER_MEMORY
: 웹 서버의 메모리 양WEB_SERVER_STORAGE
: 웹 서버의 메모리 양
예를 들면 다음과 같습니다.
gcloud composer environments update example-environment \
--location us-central1 \
--web-server-cpu 1 \
--web-server-memory 2.5 \
--web-server-storage 2
API
environments.patch
API 요청을 생성합니다.이 요청의 작성 방법:
updateMask
매개변수에서 모든 웹 서버 매개변수를 업데이트하도록config.workloadsConfig.webServer
마스크를 지정합니다. 이러한 매개변수(config.workloadsConfig.webServer.cpu
,config.workloadsConfig.webServer.memoryGb
,config.workloadsConfig.webServer.storageGb
)에 마스크를 지정하여 개별 웹 서버 매개변수를 업데이트할 수도 있습니다.요청 본문에서 새 웹 서버 매개변수를 지정합니다.
"config": {
"workloadsConfig": {
"webServer": {
"cpu": WEB_SERVER_CPU,
"memoryGb": WEB_SERVER_MEMORY,
"storageGb": WEB_SERVER_STORAGE
}
}
}
다음을 바꿉니다.
ENVIRONMENT_NAME
: 환경의 이름입니다.LOCATION
: 환경이 위치한 리전WEB_SERVER_CPU
: 웹 서버의 CPU 수(vCPU 단위)입니다.WEB_SERVER_MEMORY
: 웹 서버의 메모리 양(GB)입니다.WEB_SERVER_STORAGE
: 웹 서버의 디스크 크기(GB)입니다.
예를 들면 다음과 같습니다.
// 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
workloads_config.web_server
블록의 다음 필드는 웹 서버 매개변수를 제어합니다.
web_server.cpu
: 웹 서버의 CPU 수입니다.web_server.memory_gb
: 웹 서버의 메모리 양입니다.web_server.storage_gb
: 웹 서버의 디스크 공간 크기입니다.
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
}
}
}
}
다음을 바꿉니다.
ENVIRONMENT_NAME
: 환경의 이름입니다.LOCATION
: 환경이 위치한 리전WEB_SERVER_CPU
: 웹 서버의 CPU 수(vCPU 단위)입니다.WEB_SERVER_MEMORY
: 웹 서버의 메모리 양(GB)입니다.WEB_SERVER_STORAGE
: 웹 서버의 디스크 크기(GB)입니다.
예를 들면 다음과 같습니다.
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
}
}
}
}
환경 크기 조정
환경 크기는 예를 들어 Airflow 데이터베이스가 포함된 관리형 Cloud Composer 인프라의 성능 매개변수를 제어합니다.
DAG 및 태스크를 대량으로 실행하려는 경우에는 더 큰 환경 크기를 선택해 보세요.
콘솔
Google Cloud 콘솔에서 환경 페이지로 이동합니다.
환경 목록에서 환경 이름을 클릭합니다. 환경 세부정보 페이지가 열립니다.
환경 구성 탭으로 이동합니다.
리소스 > 워크로드 구성 항목에서 수정을 클릭합니다.
리소스 > 핵심 인프라 항목에서 수정을 클릭합니다.
핵심 인프라 창의 환경 크기 필드에서 환경 크기를 지정합니다.
저장을 클릭합니다.
gcloud
--environment-size
인수는 환경 크기를 제어합니다.
gcloud composer environments update ENVIRONMENT_NAME \
--location LOCATION \
--environment-size ENVIRONMENT_SIZE
다음을 바꿉니다.
ENVIRONMENT_NAME
: 환경의 이름입니다.LOCATION
: 환경이 위치한 리전ENVIRONMENT_SIZE
:small
,medium
또는large
예를 들면 다음과 같습니다.
gcloud composer environments update example-environment \
--location us-central1 \
--environment-size medium
API
environments.patch
API 요청을 만듭니다.이 요청의 작성 방법:
updateMask
매개변수에서config.environmentSize
마스크를 지정합니다.요청 본문에서 환경 크기를 지정합니다.
"config": {
"environmentSize": "ENVIRONMENT_SIZE"
}
다음을 바꿉니다.
ENVIRONMENT_SIZE
: 환경 크기(ENVIRONMENT_SIZE_SMALL
,ENVIRONMENT_SIZE_MEDIUM
또는ENVIRONMENT_SIZE_LARGE
)
예를 들면 다음과 같습니다.
// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.environmentSize
"config": {
"environmentSize": "ENVIRONMENT_SIZE_MEDIUM"
}
Terraform
config
블록의 environment_size
필드는 환경 크기를 제어합니다.
resource "google_composer_environment" "example" {
provider = google-beta
name = "ENVIRONMENT_NAME"
region = "LOCATION"
config {
environment_size = "ENVIRONMENT_SIZE"
}
}
다음을 바꿉니다.
ENVIRONMENT_NAME
: 환경의 이름입니다.LOCATION
: 환경이 위치한 리전ENVIRONMENT_SIZE
: 환경 크기(ENVIRONMENT_SIZE_SMALL
,ENVIRONMENT_SIZE_MEDIUM
또는ENVIRONMENT_SIZE_LARGE
)
예를 들면 다음과 같습니다.
resource "google_composer_environment" "example" {
provider = google-beta
name = "example-environment"
region = "us-central1"
config {
environment_size = "ENVIRONMENT_SIZE_SMALL"
}
}
}