Cloud Run 작업자 풀에 제공할 메모리 양을 선택할 수 있습니다. 이 페이지에서는 작업자 풀에 사용할 수 있는 메모리 양을 지정하는 방법을 설명합니다.
메모리 사용량 이해
허용된 메모리 한도를 초과하면 Cloud Run 인스턴스가 종료됩니다.
인스턴스의 사용 가능한 메모리는 다음을 충족해야 합니다.
- 작업자 풀 실행 파일 실행(실행 파일이 메모리에 로드되어야 함)
- 작업자 풀 프로세스에 메모리 할당
- 파일 시스템에 파일 쓰기
배포된 컨테이너 이미지의 크기는 인스턴스에 사용할 수 있는 메모리에 영향을 미치지 않습니다.
메모리 한도 설정 및 업데이트
Cloud Run 작업자 풀에 메모리 한도를 설정할 수 있습니다. 기본적으로 각 작업자 풀에 할당되는 메모리는 512MiB입니다.
CPU 값을 설정할 때 필요한 메모리
CPU 값을 설정할 때는 다음 메모리가 필요합니다.
CPU | 필요한 메모리 |
---|---|
vCPU 1개 | 128MiB~4GiB |
2 vCPU | 128MiB~8GiB |
vCPU 4개 | 2~16GiB |
vCPU 6개 | 4~24GiB |
8 vCPU | 4~32GiB |
최대 메모리 용량
구성할 수 있는 최대 메모리 양은 32기비바이트(32 Gi
)입니다.
최소 메모리
최소 메모리 설정은 512MiB입니다.
필요한 역할
Cloud Run 작업자 풀을 구성하고 배포하는 데 필요한 권한을 얻으려면 관리자에게 다음 IAM 역할을 부여해 달라고 요청하세요.
-
Cloud Run 작업자 풀에 대한 Cloud Run 개발자(
roles/run.developer
) 역할 -
서비스 ID에 대한 서비스 계정 사용자(
roles/iam.serviceAccountUser
) 역할
Cloud Run과 연결된 IAM 역할 및 권한 목록은 Cloud Run IAM 역할 및 Cloud Run IAM 권한을 참조하세요. Cloud Run 작업자 풀이 Cloud 클라이언트 라이브러리와 같은Google Cloud API와 상호작용하는 경우에는 서비스 ID 구성 가이드를 참조하세요. 역할 부여에 대한 자세한 내용은 배포 권한 및 액세스 관리를 참조하세요.
메모리 한도 구성
구성을 변경하면 새 버전이 생성됩니다. 이를 변경하는 명시적 업데이트가 없으면 이후 버전에도 이 구성 설정이 자동으로 적용됩니다.
Google Cloud 콘솔, Google Cloud CLI, YAML 또는 Terraform을 사용하여 Cloud Run 작업자 풀의 메모리 한도를 설정할 수 있습니다.
콘솔
Google Cloud 콘솔에서 Cloud Run으로 이동합니다.
메뉴에서 작업자 풀을 선택하고 컨테이너 배포를 클릭하여 새 작업자 풀을 구성합니다. 기존 작업자 풀을 구성하는 경우 작업자 풀을 클릭한 후 새 버전 수정 및 배포를 클릭합니다.
새 작업자 풀을 구성하는 경우 초기 작업자 풀 페이지를 작성한 후 컨테이너, 볼륨, 네트워킹, 보안을 클릭하여 작업자 풀 구성 페이지를 펼칩니다.
컨테이너 탭을 클릭합니다.
- 메모리 목록에서 메모리 크기를 선택합니다.
만들기 또는 배포를 클릭합니다.
gcloud
다음 명령어를 사용하여 지정된 작업자 풀의 메모리 할당을 업데이트할 수 있습니다.
gcloud beta run worker-pools update WORKER_POOL --memory SIZE
다음을 바꿉니다.
- WORKER_POOL을 작업자 풀 이름으로 바꿉니다.
- SIZE: CPU 및 메모리 표의 메모리 크기입니다.
크기 형식은 고정 소수점 수 또는 부동 소수점 수 뒤에 각각 기가바이트 또는 메가바이트를 의미하는
G
또는M
이라는 기호를 사용하거나 이진 단위인Gi
또는Mi
(각각 기비바이트 또는 메비바이트)를 사용합니다.
배포 중에 다음 명령어를 사용하여 메모리 한도를 설정할 수도 있습니다.
gcloud beta run worker-pools deploy --image IMAGE_URL --memory SIZE
다음을 바꿉니다.
- IMAGE_URL: 작업자 풀이 포함된 컨테이너 이미지에 대한 참조(예:
us-docker.pkg.dev/cloudrun/container/worker-pool:latest
)입니다. - SIZE: CPU 및 메모리 표의 메모리 크기입니다. 크기 형식은 고정 소수점 수 또는 부동 소수점 수 뒤에 각각 기가바이트 또는 메가바이트를 의미하는 G 또는 M이라는 기호를 사용하거나 이진 단위인 Gi 또는 Mi(각각 기비바이트 또는 메비바이트)를 사용합니다.
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 spec: template: spec: containers: - image: IMAGE_URL resources: limits: memory: SIZE
다음을 바꿉니다.
- WORKER_POOL: Cloud Run 작업자 풀의 이름
- IMAGE_URL: 작업자 풀이 포함된 컨테이너 이미지에 대한 참조(예:
us-docker.pkg.dev/cloudrun/container/worker-pool:latest
)입니다. - SIZE: 선택한 메모리 크기입니다.
형식은 고정 소수점 수 또는 부동 소수점 수 뒤에 각각 기가바이트 또는 메가바이트를 의미하는
G
또는M
라는 기호를 사용하거나 이진 단위인Gi
또는Mi
(각각 기비바이트 또는 메비바이트)를 사용합니다.
다음 명령어를 사용하여 작업자 풀을 만들거나 업데이트합니다.
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"
resources {
limits = {
memory = "SIZE"
}
}
}
}
}
다음을 바꿉니다.
- WORKER_POOL: 작업자 풀의 이름입니다.
- REGION: Google Cloud 리전입니다. 예를 들어 europe-west1입니다.
- IMAGE_URL을 작업자 풀이 포함된 컨테이너 이미지에 대한 참조로 바꿉니다(예:
us-docker.pkg.dev/cloudrun/container/worker-pool:latest
). - SIZE: CPU 및 메모리 표의 메모리 크기입니다.
크기 형식은 고정 소수점 수 또는 부동 소수점 수 뒤에 각각 기가바이트 또는 메가바이트를 의미하는
G
또는M
이라는 기호를 사용하거나 이진 단위인Gi
또는Mi
(각각 기비바이트 또는 메비바이트)를 사용합니다.
작업자 풀의 메모리 구성 보기
Google Cloud 콘솔에서 Cloud Run으로 이동합니다.
작업자 풀을 클릭하여 배포된 작업자 풀 목록을 표시합니다.
검사할 작업자 풀을 클릭하여 세부정보 창을 표시합니다.
컨테이너 탭을 클릭하여 각 컨테이너의 작업자 풀 메모리 구성을 표시합니다.