작업자 풀의 메모리 한도 구성

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과 연결된 IAM 역할 및 권한 목록은 Cloud Run IAM 역할Cloud Run IAM 권한을 참조하세요. Cloud Run 작업자 풀이 Cloud 클라이언트 라이브러리와 같은Google Cloud API와 상호작용하는 경우에는 서비스 ID 구성 가이드를 참조하세요. 역할 부여에 대한 자세한 내용은 배포 권한액세스 관리를 참조하세요.

메모리 한도 구성

구성을 변경하면 새 버전이 생성됩니다. 이를 변경하는 명시적 업데이트가 없으면 이후 버전에도 이 구성 설정이 자동으로 적용됩니다.

Google Cloud 콘솔, Google Cloud CLI, YAML 또는 Terraform을 사용하여 Cloud Run 작업자 풀의 메모리 한도를 설정할 수 있습니다.

콘솔

  1. Google Cloud 콘솔에서 Cloud Run으로 이동합니다.

    Cloud Run으로 이동

  2. 메뉴에서 작업자 풀을 선택하고 컨테이너 배포를 클릭하여 새 작업자 풀을 구성합니다. 기존 작업자 풀을 구성하는 경우 작업자 풀을 클릭한 후 새 버전 수정 및 배포를 클릭합니다.

  3. 새 작업자 풀을 구성하는 경우 초기 작업자 풀 페이지를 작성한 후 컨테이너, 볼륨, 네트워킹, 보안을 클릭하여 작업자 풀 구성 페이지를 펼칩니다.

  4. 컨테이너 탭을 클릭합니다.

    이미지

    • 메모리 목록에서 메모리 크기를 선택합니다.
  5. 만들기 또는 배포를 클릭합니다.

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

  1. 새 작업자 풀을 만드는 경우에는 이 단계를 건너뜁니다. 기존 작업자 풀을 업데이트하는 경우 YAML 구성을 다운로드합니다.

    gcloud beta run worker-pools describe WORKER_POOL --format export > workerpool.yaml
  2. 다음 예시에는 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(각각 기비바이트 또는 메비바이트)를 사용합니다.
  3. 다음 명령어를 사용하여 작업자 풀을 만들거나 업데이트합니다.

    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(각각 기비바이트 또는 메비바이트)를 사용합니다.

작업자 풀의 메모리 구성 보기

  1. Google Cloud 콘솔에서 Cloud Run으로 이동합니다.

    Cloud Run으로 이동

  2. 작업자 풀을 클릭하여 배포된 작업자 풀 목록을 표시합니다.

  3. 검사할 작업자 풀을 클릭하여 세부정보 창을 표시합니다.

  4. 컨테이너 탭을 클릭하여 각 컨테이너의 작업자 풀 메모리 구성을 표시합니다.