이 튜토리얼에서는 Cloud Scheduler를 사용하고 Pub/Sub 주제를 타겟팅하여 이벤트 기반 Cloud Run 함수를 트리거하는 방법을 보여줍니다. Pub/Sub 주제에 대한 메시지 또는 Cloud Storage 버킷의 변경사항과 같은 Google Cloud 프로젝트 내에서 이벤트에 대한 응답으로 함수를 직접 트리거해야 하는 경우 이벤트 기반 함수를 사용합니다.
함수의 HTTP 엔드포인트를 타겟팅하여 HTTP 함수를 예약할 수도 있습니다. 함수가 URL 엔드포인트를 포함하고 웹훅과 같은 HTTP 요청에 응답하도록 하려면 HTTP 함수를 사용합니다. 자세한 내용은 Cloud Run 함수 유형을 참조하세요.
Cloud Run 함수 실행 예약은 Cloud Scheduler의 일반적인 사용 사례입니다. 이 튜토리얼에서는 다음 단계를 진행합니다.
- Pub/Sub 주제를 구독하는 간단한 Cloud Run 함수를 만듭니다.
- Pub/Sub 주제에 메시지를 게시하는 Cloud Scheduler 작업을 만듭니다.
- Cloud Scheduler 작업을 실행합니다.
- Cloud Run 함수가 Cloud Scheduler 작업에 의해 트리거되었는지 확인합니다.
이벤트 기반 Cloud Run 함수 만들기
Google Cloud 프로젝트 내에서 이벤트에 대한 응답으로 직접 트리거되는 이벤트 기반 함수를 만듭니다. 이 경우에는 메시지가 Pub/Sub 주제에 게시됩니다.
Google Cloud 콘솔에서 Cloud Run 함수 페이지로 이동합니다.
함수 만들기를 클릭합니다.
기본사항 섹션에서 다음을 수행합니다.
- 환경 목록에서 2세대를 선택합니다.
- 함수의 이름을 입력합니다.
- 리전 목록에서 리전을 선택합니다.
트리거 섹션에서 다음을 수행합니다.
- 트리거 유형 목록에서 Cloud Pub/Sub를 선택합니다.
- Cloud Pub/Sub 주제 목록에서 기존 주제를 선택하거나 주제 만들기를 클릭해 새 주제를 만듭니다. 후속 단계에서 필요하므로 주제 이름을 기록해 둡니다.
옵션 더보기를 클릭합니다.
Eventarc 트리거 패널이 열립니다.
Eventarc 트리거 패널에서 다음을 수행합니다.
- 함수를 호출하는 데 필요한 ID 토큰을 Pub/Sub 서비스가 만들도록 허용하라는 메시지가 표시되면 부여를 클릭합니다.
- 서비스 계정 목록에서 이전에 만든 서비스 계정을 선택합니다.
- 다른 기본값을 수락합니다.
트리거 저장을 클릭합니다.
Eventarc 트리거 패널이 닫힙니다.
다른 기본값을 그대로 두고 다음을 클릭합니다.
기본 런타임 언어 및 샘플 코드를 수정하지 마세요. 이 코드는 클라우드 서비스를 사용하지 않으며 추가 권한을 사용 설정할 필요가 없습니다. 배포를 클릭합니다.
Cloud Scheduler 작업 만들기
Pub/Sub 타겟으로 Cloud 스케줄러 작업을 만듭니다.
Google Cloud 콘솔에서 Cloud Scheduler 페이지로 이동합니다.
작업 만들기를 클릭합니다.
작업 이름을 입력합니다.
리전 목록에서 리전을 선택합니다.
unix-cron 형식을 사용하여 작업의 빈도를 지정합니다.
30 16 * * 7
자세한 내용은 크론 작업 형식 및 시간대를 참조하세요.
시간대 목록에서 시간대를 선택합니다.
계속을 클릭합니다.
대상 유형 목록에서 Pub/Sub를 선택합니다.
이전에 만든 Pub/Sub 주제를 선택합니다.
메시지 본문 필드에 Pub/Sub 대상 주제로 전송할 문자열을 입력합니다. 'Hello world!'를 예로 들 수 있습니다.
만들기를 클릭합니다.
일요일 오후 4시 30분에 Pub/Sub 주제로 메시지를 보내는 크론 작업을 만들었습니다. Cloud Run 함수가 해당 주제를 구독합니다.
Cloud Scheduler 작업 실행
이제 만든 작업을 실행할 수 있습니다.
Google Cloud 콘솔에서 Cloud Scheduler 페이지로 이동합니다.
자신이 만든 작업의 체크박스를 선택하고 강제 실행을 클릭합니다.
처음 호출될 때는 프로젝트에서 만든 첫 번째 작업을 구성하고 실행하는 데 몇 분 정도 걸릴 수 있습니다.
작업이 실행되면 최종 실행 상태가
Success
로 표시됩니다.
Cloud Run 함수에서 결과 확인
Cloud Run 함수가 크론 작업에 의해 성공적으로 트리거되고 실행되는지 확인할 수 있습니다.
Google Cloud 콘솔에서 Cloud Run 함수 페이지로 이동합니다.
함수 이름을 클릭합니다.
함수 세부정보 페이지가 열리고 호출/초 그래프에 함수의 첫 번째 호출이 표시됩니다.
로그 탭을 클릭합니다.
Hello, YOUR_STRING!
과 비슷한 로그 항목이 표시됩니다.