함수 관리

Cloud Functions v2 API(예: gcloud functions, REST API, Terraform 사용)를 사용하여 만든 함수는 Cloud Functions v2 API뿐만 아니라 Cloud Run Admin API로도 관리할 수 있습니다. 예를 들어 gcloud functions 또는 gcloud run 명령어를 사용하여 기존 함수를 업데이트할 수 있습니다.

gcloud functions

  gcloud functions deploy FUNCTION_NAME" \
    --runtime=nodejs22\
    --source= . \
    --entry-point=ENTRYPOINT"
    --trigger-http

gcloud run

gcloud run deploy FUNCTION_NAME" \
  --source= . \
  --function="ENTRYPOINT"
  --base-image=google-22-full/nodejs22

분리

gcloud beta functions detach 명령어를 사용하면 Cloud Functions v2 함수를 기존 API 환경에서 분리할 수 있습니다. 함수를 분리한 후에는 Cloud Run Admin API를 사용하여만 함수를 관리할 수 있습니다. 워크로드가 보장된 워크로드run.googleapis.com API 경계 내에 있어야 하거나 워크로드가 Cloud Run SKU를 사용하도록 하려는 경우 이 작업을 실행할 수 있습니다.

분리를 위한 함수 준비

함수를 분리하려고 할 때 다음 사항을 고려하세요.

  • 분리 작업은 되돌릴 수 없습니다.
  • Cloud Run Functions (1세대)에는 분리 작업을 적용할 수 없습니다.
  • Google Cloud 콘솔, Google Cloud CLI, Terraform을 사용하여 Cloud Run에 함수를 배포하는 방법을 알아봅니다.
  • HTTP 함수는 할당된 URL을 유지합니다.
  • 이벤트 기반 함수에 연결된 트리거는 유지됩니다.
  • 트리거는 run.googleapis.com API를 통해 직접 관리할 수 없습니다. Eventarc 또는 Pub/Sub의 트리거 관리 가이드를 숙지하세요.
  • 실패 시 재시도를 사용 중지하는 기능은 Cloud Run에서 지원되지 않습니다.
    • 분리 작업 중에 Cloud Run 함수는 실패 시 재시도 안함으로 구성된 함수에 연결된 트리거를 수정하여 기본 Pub/Sub 주제가 최대 5회 전송을 시도하도록 합니다. 분리 작업이 완료되면 데드 레터 큐 주제에 전송되지 않은 메시지가 저장되며, 데드 레터 큐에 대한 새 구독을 만들어 이를 검색할 수 있습니다.
  • 함수가 성공적으로 분리되면 새 Cloud Run 버전이 생성됩니다. 이 버전부터 함수에 Cloud Run SKU가 사용되어 청구됩니다.

함수 분리

다음 명령어를 사용하여 함수를 분리할 수 있습니다.

gcloud beta functions detach FUNCTION_NAME

FUNCTION_NAME을 함수의 이름으로 바꿉니다.