Cloud Run에 이벤트를 라우팅하는 Eventarc 정식 버전 출시

Prashant Gulati
Product Manager
Mete Atamel
Cloud Developer Advocate
* 본 아티클의 원문은 2021년 1월 29일 Google Cloud 블로그(영문)에 게재되었습니다.
지난 10월, Google Cloud는 개발자가 Cloud Run 서비스로 이벤트를 라우팅할 수 있도록 새로운 이벤트 기능을 탑재한 Eventarc를 발표했습니다. 이전 게시물에는 통합적인 Google Cloud 이벤트 환경, 중앙 집중식 이벤트 라우팅, 일관된 이벤트 형식과 라이브러리, 야심찬 장기 비전 등 Eventarc의 주된 장점이 간략하게 소개되어 있습니다.
오늘은 Eventarc 정식 버전이 출시되었다는 반가운 소식을 전해드립니다. Eventarc는 이벤트 수집, 전송, 보안, 관측 가능성, 오류 처리와 같은 세부사항을 도맡아 처리하므로 개발자는 이벤트 처리를 위한 코드 작성에 보다 집중할 수 있습니다.
Eventarc의 기능을 간추려 정리하면 다음과 같습니다.
- Cloud 감사 로그를 통해 60개가 넘는 Google Cloud 소스에서 이벤트를 수신할 수 있습니다.
- Pub/Sub 게시를 통해 커스텀 소스에서 이벤트를 수신할 수 있습니다.
- 소스에 상관없이 모든 이벤트에 대해 CloudEvents 표준을 준수하여 일관된 개발자 환경을 보장할 수 있습니다.
- 요청 시 확장이 가능하며 최소 수수료가 없습니다.
이 게시물에서는 공개 미리보기 버전에 비하여 Eventarc 일반 안정화 버전에서 무엇이 개선되었는지 살펴보겠습니다.
gcloud 업데이트
Eventarc 정식 버전은 gcloud 명령어가 일부 업데이트되었습니다.
첫째, 더 이상 Eventarc 명령어에서 beta를 지정할 필요가 없습니다. gcloud beta eventarc 대신 gcloud eventarc를 사용하면 됩니다.
둘째, 공개 미리보기 버전에서 --matching-criteria였던 플래그가 정식 버전에서는 --event-filters로 변경되었습니다.
셋째, 이제 리전 트리거를 생성할 때 --destination-run-region을 선택할 수 있습니다. 사용자가 지정하지 않을 경우 트리거 위치와 함께 자동으로 생성됩니다(--location 플래그 또는 eventarc/location 속성에서 지정).
예를 들어 동일한 리전 내에서 Pub/Sub 주제가 전송한 메시지를 리슨하는 트리거를 생성하는 방법은 다음과 같습니다.
이 트리거에서 Pub/Sub 주제를 비공개로 생성합니다.
이제 Eventarc에서 --transport-topic gcloud 플래그 옵션을 허용하므로, 원한다면 기존 Pub/Sub 주제를 사용할 수도 있습니다. 또한 트리거에 사용 가능한 리전을 나열할 수 있는 명령어도 새로 추가되었습니다. 이에 관한 자세한 내용은 아래에서 확인하세요.
자체 Pub/Sub 주제 사용
퍼블릭 프리뷰 버전에서는 Pub/Sub 트리거를 생성하면 Eventarc에서 Pub/Sub 주제를 비공개로 생성해 애플리케이션 및 Cloud Run 서비스 간 전송 주제로 사용할 수 있었습니다. 이 방식은 Pub/Sub 지원 트리거를 쉽고 빠르게 생성해야 하는 경우에는 유용하지만, 기존 Pub/Sub 주제에서 트리거를 생성하거나 단일 Pub/Sub 주제에서 확장할 방법이 없다는 한계가 있었습니다.
이번에 출시된 Eventarc 정식 버전에서는--transport-topic gcloud 플래그를 사용하면 동일한 프로젝트 내에서 기존 Pub/Sub 주제를 지정할 수 있습니다. 방법은 다음과 같습니다.리전 확장
Eventarc 정식 버전은 공개 미리보기 버전에서 지원하던 리전(asia-east1, europe-west1, us-central1, us-east1, global)과 더불어 Google Cloud 리전 4개(asia-southeast1, europe-north1, europe-west4, us-west1)를 추가로 지원합니다. 즉 8개 리전에서 리전 트리거를 생성하거나, 글로벌 트리거를 생성하여 8개 리전에서 이벤트를 수신할 수 있습니다.
새로 추가된 다음 명령어를 사용하면 사용 가능한 트리거 위치가 나열됩니다.
트리거 위치를 지정하려면 각 명령어에 --location 플래그를 추가합니다.
또는 eventarc/location 구성을 사용하여 모든 명령어에 전역으로 설정할 수도 있습니다.



