인스턴스의 메모리 한도 구성

Cloud Run 인스턴스에 제공할 메모리 양을 선택할 수 있습니다. 이 페이지에서는 인스턴스에 사용할 수 있는 메모리 양을 지정하는 방법을 설명합니다.

메모리 사용량 이해

허용된 메모리 한도를 초과하면 Cloud Run 인스턴스가 종료됩니다.

인스턴스의 사용 가능한 메모리는 다음을 충족해야 합니다.

  • 인스턴스 실행 파일 실행(실행 파일이 메모리에 로드되어야 함)
  • 인스턴스 프로세스에 메모리 할당
  • 파일 시스템에 파일 쓰기

배포된 컨테이너 이미지의 크기는 인스턴스에 사용할 수 있는 메모리에 영향을 미치지 않습니다.

메모리 한도 설정 및 업데이트

Cloud Run 인스턴스에 메모리 한도를 설정할 수 있습니다. 기본적으로 각 인스턴스에 할당되는 메모리는 2GiB입니다 .

CPU 값 설정 시 필요한 메모리

CPU 값을 설정할 때 다음 메모리가 필요합니다.

CPU 필요한 메모리
vCPU 1개 512MiB~4GiB
2 vCPU 512MiB~8GiB
vCPU 4개 2~16GiB
vCPU 6개 4~24GiB
8 vCPU 4~32GiB

최대 메모리 용량

구성할 수 있는 최대 메모리 양은 32기비바이트(32 Gi)입니다.

커스텀 조직 정책을 사용하여 최대 메모리 한도를 적용할 수 있습니다.

최소 메모리

최소 메모리 설정은 512MiB입니다.

비용 고려사항

Cloud Run 인스턴스 비용은 메모리 구성 및 리소스 활성 기간과 같은 여러 요인에 영향을 받습니다. 리소스를 과도하게 프로비저닝하면 비용이 증가할 수 있습니다. 리소스에 가장 적합한 메모리 구성을 확인하려면 다음 단계를 따르세요.

  1. 초기 기준 구성을 설정합니다.
  2. 부하 상태에서 시스템을 테스트하는 동안 Cloud Monitoring에서 메모리 사용률 측정항목을 모니터링합니다.
  3. 필요에 따라 구성을 조정합니다.

메모리 사용률이 지속적으로 낮은 경우 할당된 메모리를 줄이는 것이 좋습니다. 지연 시간이 길고 메모리 사용률이 100%에 가까운 경우 할당된 메모리를 늘리는 것이 좋습니다. 메모리 부족 (OOM) 오류가 발생하는 경우 할당된 메모리를 늘리거나 메모리 누수를 방지하고 메모리 사용량을 줄이도록 애플리케이션을 수정해야 합니다. 메모리 사용률을 자세히 알아보려면 Cloud Monitoring 대시보드 를 참조하세요.

자세한 내용은 Cloud Run 가격 책정을 검토하거나 가격 계산기로 비용을 추정하세요.

필요한 역할

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

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

메모리 한도 구성

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

Google Cloud CLI 또는 YAML을 사용하여 Cloud Run 인스턴스의 메모리 한도를 설정할 수 있습니다.

gcloud

다음 명령어를 사용하여 지정된 인스턴스의 메모리 할당을 업데이트 할 수 있습니다.

gcloud beta run instances update INSTANCE --memory SIZE

다음을 바꿉니다.

  • INSTANCE: 인스턴스의 이름입니다.
  • SIZE: CPU 및 메모리 표의 메모리 크기. 크기 형식은 고정 소수점 수 또는 부동 소수점 수 뒤에 각각 기가바이트 또는 메가바이트를 의미하는 G 또는 M이라는 기호를 사용하거나 이진 단위인 Gi 또는 Mi(각각 기비바이트 또는 메비바이트)를 사용합니다.

배포 중에 다음 명령어를 사용하여 메모리 한도를 설정할 수도 있습니다.

gcloud beta run instances deploy --image IMAGE_URL --memory SIZE

다음을 바꿉니다.

  • IMAGE_URL: 컨테이너 이미지에 대한 참조(예: us-docker.pkg.dev/cloudrun/container/hello:latest)
  • SIZE: CPU 및 메모리 표의 메모리 크기. 크기 형식은 고정 소수점 수 또는 부동 소수점 수 뒤에 각각 기가바이트 또는 메가바이트를 의미하는 G 또는 M이라는 기호를 사용하거나 이진 단위인 Gi 또는 Mi(각각 기비바이트 또는 메비바이트)를 사용합니다.

YAML

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

    gcloud beta run instances describe INSTANCE --format export > instance.yaml
  2. 다음 예시에는 YAML 구성이 포함되어 있습니다.

    apiVersion: run.googleapis.com/v1
    kind: Instance
    metadata:
      name: INSTANCE
      annotations:
        run.googleapis.com/launch-stage: BETA
    spec:
      containers:
      - image: IMAGE_URL
        resources:
          limits:
            memory: SIZE

    다음을 바꿉니다.

    • INSTANCE: Cloud Run 인스턴스의 이름입니다.
    • IMAGE_URL: 컨테이너 이미지에 대한 참조(예: us-docker.pkg.dev/cloudrun/container/hello:latest)
    • SIZE: 선택한 메모리 크기. 형식은 고정 소수점 수 또는 부동 소수점 수 뒤에 단위가 옵니다. 기가바이트 또는 메가바이트에 해당하는 G 또는 M이거나, 이진 단위인 Gi 또는 Mi 에 해당하는 기비바이트 또는 메비바이트를 사용합니다.
  3. 다음 명령어를 사용하여 인스턴스를 만들거나 업데이트합니다.

    gcloud beta run instances replace instance.yaml