CPU 한도 구성

이 페이지에서는 각 Cloud Run 인스턴스에 사용할 CPU 수를 지정하는 방법을 설명합니다. 기본적으로 Cloud Run 컨테이너 인스턴스는 CPU 1개로 제한됩니다. 이 페이지의 설명대로 이 값을 늘리거나 줄일 수 있습니다.

또한 시작 지연 시간을 줄이기 위해 인스턴스 시작 중에 CPU 할당을 일시적으로 늘리는 기능인 시작 CPU 부스트를 사용 설정 또는 중지하는 방법을 설명합니다.

CPU 한도 설정 및 업데이트

기본적으로 각 인스턴스는 1개의 CPU로 제한됩니다. 정수 값을 사용하여 이 한도를 최대 CPU 8개까지 늘릴 수 있습니다.

CPU 및 메모리

다음은 CPU의 최소 메모리 요구사항입니다.

CPU 최소 메모리
4 2GiB
6 4GiB
8 4GiB

또는 CPU 1개 미만을 사용하려면 0.08~1 사이의 값을 선택하면 됩니다(0.01 단위). 1보다 큰 값은 정수 값이어야 합니다. CPU 1개 미만을 사용하면 다음 요구사항이 적용됩니다.

설정 요구사항
메모리 메모리 한도를 512MiB 이상으로 설정하려면 CPU가 최소 0.5개 필요합니다.
메모리 한도를 1GiB 이상으로 설정하려면 CPU가 최소 1개 필요합니다.
동시 실행 최대 동시 실행1로 설정해야 합니다.
할당 CPU CPU 할당을 요청 처리 중에만 할당된 CPU로 설정해야 합니다.
실행 환경 1세대 실행 환경을 사용해야 합니다.

필요한 역할

Cloud Run 서비스를 구성하고 배포하는 데 필요한 권한을 얻으려면 관리자에게 다음 IAM 역할을 부여해 달라고 요청하세요.

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

CPU 한도 구성

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

새 서비스를 만들거나 새 버전을 배포할 때 Google Cloud 콘솔, gcloud 명령줄 또는 YAML 파일을 사용하여 CPU 한도를 설정할 수 있습니다.

콘솔

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

    Cloud Run으로 이동

  2. 컨테이너 배포를 클릭하고 서비스를 선택하여 새 서비스를 구성합니다. 기존 서비스를 구성하는 경우 서비스를 클릭한 후 새 버전 수정 및 배포를 클릭합니다.

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

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

    이미지

    • CPU 1개 미만을 사용하려면 커스텀을 사용하여 드롭다운 목록에서 원하는 CPU 한도를 선택합니다. 1, 2, 4, 6 또는 8 CPU 값을 선택하거나 CPU 1개 미만의 경우 0.08에서 1.00 미만의 값을 0.01 단위로 지정합니다. 필요한 설정은 CPU 한도 설정 및 업데이트의 표를 참조하세요.
  5. 만들기 또는 배포를 클릭합니다.

gcloud

다음 명령어를 사용하면 특정 서비스의 CPU 한도를 업데이트할 수 있습니다.

gcloud run services update SERVICE --cpu CPU

바꾸기

  • SERVICE를 서비스 이름으로 바꿉니다.
  • CPU를 원하는 CPU 한도로 바꿉니다. 1, 2, 4, 6 또는 8 CPU 값을 지정하거나 CPU 1개 미만의 경우 0.08에서 1.00 미만의 값을 0.01 단위로 지정합니다. 필요한 설정은 CPU 한도 설정 및 업데이트의 표를 참조하세요.

또한 다음 명령어를 사용하여 배포 중 CPU를 설정할 수도 있습니다.

gcloud run deploy --image IMAGE_URL --cpu CPU

바꾸기

  • IMAGE_URL: 컨테이너 이미지에 대한 참조(예: us-docker.pkg.dev/cloudrun/container/hello:latest). Artifact Registry를 사용하는 경우 저장소 REPO_NAME이 이미 생성되어 있어야 합니다. URL의 형식은 LOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG입니다.
  • CPU1, 2, 4, 6 또는 8 CPU 값으로 바꾸거나 CPU 1개 미만의 경우 0.08에서 1.00 미만의 값을 0.01 단위로 지정합니다. 필요한 설정은 CPU 한도 설정 및 업데이트의 표를 참조하세요.

YAML

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

    gcloud run services describe SERVICE --format export > service.yaml
  2. cpu 속성을 업데이트합니다.

    apiVersion: serving.knative.dev/v1
    kind: Service
    metadata:
      name: SERVICE
    spec:
      template:
        metadata:
          name: REVISION
        spec:
          containers:
          - image: IMAGE
            resources:
              limits:
                cpu: CPU

    다음과 같이 바꿉니다.

    • SERVICE: Cloud Run 서비스 이름
    • IMAGE_URL: 컨테이너 이미지에 대한 참조(예: us-docker.pkg.dev/cloudrun/container/hello:latest). Artifact Registry를 사용하는 경우 저장소 REPO_NAME이 이미 생성되어 있어야 합니다. URL의 형식은 LOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG입니다.
    • CPU를 원하는 CPU 한도 값으로 바꿉니다. 1, 2, 4, 6 또는 8 CPU 값을 지정하거나 CPU 1개 미만의 경우 0.08에서 1.00 미만의 값을 0.01 단위로 지정합니다. 필요한 설정은 CPU 한도 설정 및 업데이트의 표를 참조하세요.
    • REVISION을 새 버전 이름으로 변경하거나 삭제합니다(있는 경우). 새 버전 이름을 제공할 경우 다음 기준을 반드시 충족해야 합니다.
      • SERVICE-로 시작해야 합니다.
      • 소문자, 숫자, -만 포함합니다.
      • -로 끝나면 안 됩니다.
      • 63자(영문 기준) 이하여야 합니다.
  3. 다음 명령어를 사용하여 서비스를 만들거나 업데이트합니다.

    gcloud run services replace service.yaml

Terraform

Terraform 구성을 적용하거나 삭제하는 방법은 기본 Terraform 명령어를 참조하세요.

다음 google_cloud_run_v2_service 리소스는 template.containers.resources.limits에서 CPU 한도를 지정합니다. 1을 원하는 CPU 수로 바꿉니다.

resource "google_cloud_run_v2_service" "default" {
  name     = "cloudrun-service-cpu"
  location = "us-central1"

  deletion_protection = false # set to "true" in production

  template {
    containers {
      image = "us-docker.pkg.dev/cloudrun/container/hello"
      resources {
        limits = {
          # CPU usage limit
          cpu = "1"
        }
      }
    }
  }
}

시작 CPU 부스트 설정

버전의 시작 CPU 부스트 기능은 인스턴스 시작 시간 동안 그리고 인스턴스가 시작된 후 10초 동안 추가 CPU를 제공합니다.

실제 CPU 부스트는 CPU 한도 설정에 따라 다릅니다.

CPU 한도 부스티드 CPU
0~1 2
2 4
4 8
6 8
8 8

컨테이너의 시작 시간 동안 할당된 부스트된 CPU에 대한 요금이 청구됩니다. 예를 들어 컨테이너 시작 시간이 15초이고 시작 CPU 부스트를 포함하여 2개의 CPU를 할당한 경우 컨테이너가 시작을 완료한 후 10초를 포함한 인스턴스 시작 시간(더 짧을 수 있음) 동안 4개 CPU에 대한 요금이 청구되고 나머지 컨테이너 수명 주기 동안 2개의 CPU에 대한 요금이 청구됩니다.

Google Cloud 콘솔 또는 Google Cloud CLI를 사용하여 시작 CPU 부스트를 사용 설정하거나 사용 중지할 수 있습니다.

콘솔

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

    Cloud Run으로 이동

  2. 컨테이너 배포를 클릭하고 서비스를 선택하여 새 서비스를 구성합니다. 기존 서비스를 구성하는 경우 서비스를 클릭한 후 새 버전 수정 및 배포를 클릭합니다.

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

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

    이미지

    • 시작 CPU 부스트를 사용 설정하려면 시작 CPU 부스트 체크박스를 선택합니다. 이 기능을 사용 중지하려면 체크박스를 선택 해제하세요.
  5. 만들기 또는 배포를 클릭합니다.

gcloud

  1. 다음 명령어를 사용하여 지정된 서비스에 시작 CPU 부스트를 사용 설정할 수 있습니다.

    gcloud run services update SERVICE --cpu-boost

    SERVICE를 서비스 이름으로 바꿉니다.

    배포 중에 다음 명령어를 사용하여 시작 CPU 부스트를 사용 설정할 수 있습니다.

    gcloud run deploy --image IMAGE_URL --cpu-boost

    IMAGE_URL을 컨테이너 이미지에 대한 참조(예: us-docker.pkg.dev/cloudrun/container/hello:latest)로 바꿉니다. Artifact Registry를 사용하는 경우 저장소 REPO_NAME이 이미 생성되어 있어야 합니다. URL의 형식은 LOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG입니다.

  2. 다음 명령어를 사용하여 지정된 서비스에 대해 시작 CPU 부스트를 사용 중지할 수 있습니다.

    gcloud run services update SERVICE --no-cpu-boost

    SERVICE를 서비스 이름으로 바꿉니다.

    배포 중에 다음 명령어를 사용하여 시작 CPU 부스트를 사용 중지할 수 있습니다.

    gcloud run deploy --image IMAGE_URL --no-cpu-boost

YAML

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

    gcloud run services describe SERVICE --format export > service.yaml
  2. 시작 CPU 부스트를 사용 설정하려면 'true'를 지정하고 사용 중지하려면 'false'를 지정하여 run.googleapis.com/startup-cpu-boost 속성을 업데이트합니다.

    apiVersion: serving.knative.dev/v1
    kind: Service
    metadata:
      name: SERVICE
    spec:
      template:
        metadata:
          annotations:
            run.googleapis.com/startup-cpu-boost: 'true'

    바꾸기

    • SERVICE: Cloud Run 서비스 이름
  3. 다음 명령어를 사용하여 서비스를 만들거나 업데이트합니다.

    gcloud run services replace service.yaml

CPU 설정 보기

Cloud Run 서비스의 현재 CPU 할당 설정을 보려면 다음 안내를 따르세요.

콘솔

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

    Cloud Run으로 이동

  2. 관심이 있는 서비스를 클릭하여 서비스 세부정보 페이지를 엽니다.

  3. 버전 탭을 클릭합니다.

  4. 오른쪽의 세부정보 패널에서 CPU 설정이 컨테이너 탭에 표시됩니다.

gcloud

  1. 다음 명령어를 사용하세요.

    gcloud run services describe SERVICE
  2. 반환된 구성에서 CPU 설정을 찾습니다.