Cloud Run 함수 트리거
Cloud Functions API (v2)로 만든 함수를 배포하거나 업데이트하면 Cloud Run의 모든 구성 기능에 액세스할 수 있습니다.
함수를 트리거하는 방법에는 두 가지가 있습니다.
Cloud Functions API (v2)로 함수를 만들 때는 함수 배포의 일부로 트리거를 지정합니다.
Cloud Run Admin API로 함수를 만들 때 Eventarc, Pub/Sub 또는 기타 HTTP 트리거를 사용하여 함수를 트리거할 수 있습니다.
이 페이지에서는 함수에 구성할 수 있는 다양한 유형의 트리거를 알아봅니다. 지원되는 트리거의 전체 목록은 Cloud Run 문서를 참고하세요.
트리거 유형
트리거를 구성하여 다양한 시나리오에 대한 응답으로 실행되도록 함수를 설정할 수 있습니다. HTTP 함수의 경우 HTTP 트리거를, CloudEvents 함수의 경우 이벤트 트리거를 구성합니다.
HTTP 트리거
HTTP 트리거는 HTTP(S) 요청에 반응하며 HTTP 함수에 대응합니다. HTTP 함수 작성에 관한 자세한 내용은 HTTP 함수 작성을 참고하세요.
Cloud Functions API (v2)로 함수를 만들면 기본적으로 함수에 HTTP 엔드포인트 URL cloudfunctions.net
이 있습니다. 이 함수를 사용하여 Cloud Run에 배포하면 함수에 run.app
URL도 수신됩니다. 그러나 Cloud Run에서 만든 함수에는 cloudfunctions.net
HTTP 엔드포인트 URL이 없습니다. 함수의 cloudfunctions.net
URL과 run.app
URL은 동일한 방식으로 작동합니다. 서로 바꿔서 사용할 수 있으며 함수를 트리거하는 데 사용됩니다.
HTTP 트리거로 함수를 호출하는 방법에 관한 자세한 내용은 HTTPS 요청으로 호출을 참고하세요.
이벤트 트리거
이벤트 트리거는 Google Cloud 프로젝트 내의 이벤트에 반응하며 이벤트 기반 함수 (CloudEvents 함수라고도 함)에 대응합니다. 이벤트 기반 함수 작성에 관한 자세한 내용은 CloudEvents 함수 작성을 참고하세요. 이벤트 트리거에 대한 응답으로 함수를 호출하는 방법에 관한 자세한 내용은 Eventarc로 트리거 만들기를 참고하세요.
모든 이벤트 기반 함수는 이벤트 전송에 Eventarc를 사용합니다. Pub/Sub 트리거 및 Cloud Storage 트리거는 특정 유형의 Eventarc 트리거로 구현됩니다.
이 섹션에서는 Cloud Run 함수가 지원하는 이벤트 트리거의 몇 가지 예를 설명합니다.
Pub/Sub 트리거
Eventarc를 사용하여 Pub/Sub 메시지에 대한 응답으로 함수를 트리거할 수 있습니다. 함수에 대해 Pub/Sub 트리거를 지정할 때는 Pub/Sub 주제도 지정합니다. 이 트리거의 결과로 지정된 주제에 메시지를 게시할 때마다 함수가 호출됩니다. 자세한 내용은 Pub/Sub 트리거를 참고하세요.
Cloud Logging을 사용하여 로그를 Pub/Sub 주제로 라우팅하여 Cloud Run 함수에서 사용할 수도 있습니다. 자세한 내용은 로그 항목에서 함수 트리거를 참고하세요.
Cloud Storage 트리거
Cloud Storage의 변경사항에 대한 응답으로 Eventarc를 사용하여 Cloud Storage에서 함수를 트리거할 수 있습니다. 함수에 Cloud Storage 트리거를 지정하면 이벤트 유형을 선택하고 Cloud Storage 버킷을 지정합니다. 이 트리거의 결과로 지정된 버킷 내의 객체 (파일)에 변경사항이 발생할 때마다 함수가 호출됩니다. 자세한 내용은 Cloud Storage 트리거를 참고하세요.
Firestore 트리거
Firestore 데이터베이스의 이벤트에 의해 트리거되도록 Cloud Run 함수를 구성할 수 있습니다. 트리거되면 함수는 Firestore API 및 클라이언트 라이브러리를 통해 이러한 이벤트에 대한 응답으로 Firestore 데이터베이스를 읽고 업데이트합니다. 자세한 내용은 Firestore 트리거를 참고하세요.
기타 이벤트 트리거
Cloud Run 함수는 Cloud 감사 로그를 통한 90개 이상의 이벤트 소스를 포함하여 Eventarc에서 지원되는 모든 이벤트 유형을 지원합니다.
Pub/Sub 및 Webhook을 통한 추가 트리거
Pub/Sub 주제의 메시지로 Cloud Run Functions를 트리거할 수 있으므로, Pub/Sub을 이벤트 버스로 지원하는 다른 Google 서비스와 Cloud Run Functions를 통합할 수 있습니다. 또한 HTTP 트리거를 사용하면 HTTP 콜백(웹훅)을 제공하는 모든 서비스와 통합할 수도 있습니다. 다음 섹션에서는 몇 가지 통합 예시를 설명합니다.
Cloud Scheduler
HTTP 트리거 또는 이벤트 트리거를 사용하여 함수를 트리거할 수 있습니다.
HTTP Cloud Run 함수를 예약하려면 HTTP를 사용하여 작업을 트리거하는 Cloud Scheduler 작업을 만듭니다. Google Cloud 프로젝트 내에서 이벤트에 대한 응답으로 직접 트리거되는 이벤트 기반 함수를 예약할 수도 있습니다(예: 메시지가 Pub/Sub 주제에 게시되는 경우).
자세한 내용은 Cloud Scheduler 정보를 참고하세요.
Cloud Tasks
Cloud Tasks HTTP 대상 태스크를 사용하면 모든 HTTP 엔드포인트에서 태스크 핸들러를 실행할 수 있으므로 HTTP 트리거가 있는 Cloud Run 함수를 태스크 핸들러로 사용할 수 있습니다. 태스크를 사용하여 함수 호출을 제한하거나 속도 제한할 수도 있습니다. 자세한 내용은 Cloud Tasks 문서의 HTTP 대상 태스크 만들기를 참고하세요.
Gmail
Gmail Push Notification API를 사용하여 Gmail 이벤트를 Pub/Sub 주제로 전송하여 Cloud Run Functions과 함께 사용할 수 있습니다.