이 페이지에서는 작업자 풀을 수동으로 확장하는 방법을 보여줍니다.
개요
수동 확장을 사용하면 재배포 없이 특정 인스턴스 수를 설정할 수 있습니다. 이를 통해 외부 시스템을 사용하여 자체 확장 로직을 작성할 수 있습니다. 예시는 Kafka 자동 확장 처리를 참조하세요.
수동 확장 사용 시 결제 고려사항
수동 확장을 사용하면 요청한 모든 인스턴스가 유휴 상태인 경우에도 활성 인스턴스로 청구됩니다. 전체 결제 세부정보는 가격 책정 페이지를 참조하세요.
필요한 역할
Cloud Run 작업자 풀을 배포하는 데 필요한 권한을 얻으려면 관리자에게 다음 IAM 역할을 부여해 달라고 요청하세요.
-
Cloud Run 서비스에 대한 Cloud Run 개발자(
roles/run.developer
) 역할 -
서비스 ID에 대한 서비스 계정 사용자(
roles/iam.serviceAccountUser
) 역할 -
배포된 컨테이너 이미지의 Artifact Registry 저장소에 대한 Artifact Registry 리더(
roles/artifactregistry.reader
)(해당하는 경우)
Cloud Run과 연결된 IAM 역할 및 권한 목록은 Cloud Run IAM 역할 및 Cloud Run IAM 권한을 참조하세요. Cloud Run 작업자 풀이 Cloud 클라이언트 라이브러리와 같은Google Cloud API와 상호작용하는 경우에는 서비스 ID 구성 가이드를 참조하세요. 역할 부여에 대한 자세한 내용은 배포 권한 및 액세스 관리를 참조하세요.
확장 구성
확장 모드를 변경하거나 수동 인스턴스 수를 변경해도 새 버전이 생성되지 않습니다.
확장 모드를 구성하려면 Google Cloud 콘솔, Google Cloud CLI, YAML 또는 Terraform을 사용하세요.
콘솔
Google Cloud 콘솔에서 Cloud Run으로 이동합니다.
새 작업자 풀을 구성하는 경우 메뉴에서 작업자 풀을 선택하고 컨테이너 배포를 클릭합니다. 기존 작업자 풀을 구성하는 경우 작업자 풀을 클릭하여 세부정보 창을 표시한 후 세부정보 패널 오른쪽 상단의 확장 옆에 있는 펜 아이콘을 클릭합니다.
새 작업자 풀의 경우 확장 양식을, 기존 작업자 풀의 경우 확장 수정 양식을 찾습니다.
인스턴스 수로 라벨이 지정된 필드에서 서비스의 컨테이너 인스턴스 수를 지정합니다.
사양을 완료합니다.
새 작업자 풀의 경우 만들기를 클릭하고 기존 작업자 풀의 경우 저장을 클릭합니다.
gcloud
새 작업자 풀의 확장을 지정하려면 deploy 명령어를 사용합니다.
gcloud beta run worker-pools deploy WORKER_POOL \ --scaling=INSTANCE_COUNT \ --image IMAGE_URL
다음을 바꿉니다.
- WORKER_POOL: 작업자 풀의 이름입니다.
- INSTANCE_COUNT: 작업자 풀의 인스턴스 수입니다.
이렇게 하면 작업자 풀이 수동 확장으로 설정됩니다. 작업자 풀을 중지하려면
0
값을 지정합니다. - IMAGE_URL: 작업자 풀이 포함된 컨테이너 이미지에 대한 참조(예:
us-docker.pkg.dev/cloudrun/container/worker-pool:latest
)입니다.
다음 update 명령어를 사용하여 기존 작업자 풀의 확장을 지정합니다.
gcloud beta run worker-pools update WORKER_POOL \ --scaling=INSTANCE_COUNT
YAML
새 작업자 풀을 만드는 경우에는 이 단계를 건너뜁니다. 기존 작업자 풀을 업데이트하는 경우 YAML 구성을 다운로드합니다.
gcloud beta run worker-pools describe WORKER_POOL --format export > workerpool.yaml
다음 예시에는 YAML 구성이 포함되어 있습니다.
apiVersion: run.googleapis.com/v1 kind: WorkerPool metadata: name: WORKER_POOL annotations: run.googleapis.com/launch-stage: BETA run.googleapis.com/manualInstanceCount: `INSTANCE_COUNT`
다음을 바꿉니다.
- WORKER_POOL: Cloud Run 작업자 풀의 이름
- INSTANCE_COUNT: 작업자 풀에 대해 수동으로 확장하는 인스턴스 수입니다. 작업자 풀을 사용 중지하려면
0
값을 지정합니다.
다음 명령어를 사용하여 작업자 풀을 만들거나 업데이트합니다.
gcloud beta run worker-pools replace workerpool.yaml
Terraform
Terraform 구성을 적용하거나 삭제하는 방법은 기본 Terraform 명령어를 참조하세요.
resource "google_cloud_run_v2_worker_pool" "default" {
name = "WORKER_POOL"
location = "REGION"
launch_stage = "BETA"
template {
containers {
image = "IMAGE_URL"
}
}
scaling {
scaling_mode = "MANUAL"
manual_instance_count = "INSTANCE_COUNT"
}
}
다음을 바꿉니다.
- WORKER_POOL: 작업자 풀의 이름입니다.
- REGION: Google Cloud 리전(예:
europe-west1
) - IMAGE_URL: 작업자 풀이 포함된 컨테이너 이미지에 대한 참조(예:
us-docker.pkg.dev/cloudrun/container/worker-pool:latest
)입니다. - INSTANCE_COUNT: 작업자 풀의 인스턴스 수입니다.
이렇게 하면 작업자 풀이 수동 확장으로 설정됩니다. 작업자 풀을 사용 중지하려면
0
값을 지정합니다.
작업자 풀의 확장 구성 보기
Google Cloud 콘솔에서 Cloud Run으로 이동합니다.
작업자 풀을 클릭하여 배포된 작업자 풀 목록을 표시합니다.
검사할 작업자 풀을 클릭하여 세부정보 창을 표시합니다.
현재 확장 설정은 작업자 풀 버전 목록 위에 표시됩니다(확장: 수동(인스턴스: )).
작업자 풀 중지
작업자 풀을 중지하려면 다음 명령어를 사용하여 0으로 축소 설정합니다.
gcloud beta run worker-pools update WORKER_POOL --scaling=0
WORKER_POOL을 작업자 풀 이름으로 바꿉니다.