Googleは、フルマネージドのコンテナ化アプリケーション実行環境「Cloud Run」にイベントを送信できる新機能「Eventarc」の一般提供を開始した。分散されたマイクロサービス間でのイベントベースの通信に役立つ。
Googleは2021年1月29日(米国時間)、新しいイベント送信機能「Eventarc」の一般提供を開始した。開発者がサーバレスでフルマネージドのコンテナ化アプリケーション実行環境「Cloud Run」サービスにイベントを送信できる。
Eventarcがイベントの取り込みや配信、セキュリティ対応、オブザーバビリティ(可観測性)の確保、エラー処理の詳細を扱うため、開発者はイベント処理コードの作成に集中できるという。
Eventarcの主な機能は次の通り。
次にパブリックプレビュー版のリリース後から現在までにEventarcとGoogle Cloudのコマンドラインツール「gcloud」コマンドに加えられた改良の概要を紹介する。
第1に、Eventarcのコマンドで「beta」を指定する必要がなくなり、「gcloud beta eventarc」ではなく、「gcloud eventarc」と入力すれば済むようになった。
第2に、パブリックプレビュー版にあった「--matching-criteria」フラグの名称が「--event-filters」に変更された。
第3に、リージョナルトリガーの作成時に「--destination-run-region」がオプションとなり、ユーザーが指定していなければ、トリガーロケーション(「--location」フラグまたは「eventarc/location」プロパティで指定される)とともに生成されるようになった。
例えば、以下の方法で作成するトリガーは、同じリージョンのPub/Subトピックからのメッセージを取得(リッスン)する。
gcloud eventarc triggers create trigger-pubsub \ --destination-run-service=${SERVICE_NAME} \ --event-filters="type=google.cloud.pubsub.topic.v1.messagePublished"
パブリックプレビュー版では、ユーザーがPub/Subトリガーを作成すると、ユーザーがアプリケーションとCloud Runサービス間の転送トピックとして使えるように、EventarcがバックグラウンドでPub/Subトピックを作成していた。
これは、手軽に素早くPub/Subベースのトリガーを作成する必要がある場合は便利だった。だが、同時に制限もあった。既存のPub/Subトピックからトリガーを作成したり、1つのPub/Subトピックからの展開をセットアップしたりできなかった。
そこで一般提供開始に合わせて、gcloudフラグ「-transport-topic」を用いて、次のように同じプロジェクトの既存Pub/Subトピックを指定できるようになった。
gcloud eventarc triggers create trigger-pubsub \ --destination-run-service=${SERVICE_NAME} \ --event-filters="type=google.cloud.pubsub.topic.v1.messagePublished" --transport-topic=projects/${PROJECT_ID}/topics/${TOPIC_NAME}
Eventarcは、パブリックプレビュー版でサポートされていたリージョン(asia-east1、europe-west1、us-central1、us-east1、グローバル)に加えて、新たに4つのリージョン(asia-southeast1、europe-north1、europe-west4、us-west1)でも利用できるようになった(発表時点では日本国内のリージョンは含まれていない)
8つのリージョンでリージョナルトリガーを作成したり、グローバルトリガーを作成して、全リージョンからイベントを受信したりすることが可能になった。
使用可能なトリガーロケーションのリストを表示する新しいコマンドも加わった。
gcloud eventarc locations list
各コマンドで「--location」フラグで次のようにトリガーロケーションを指定することもできるようになった。
gcloud eventarc triggers create trigger-pubsub \ --destination-run-service=${SERVICE_NAME} \ --event-filters="type=google.cloud.pubsub.topic.v1.messagePublished" --location=europe-west1
さらに「eventarc/location」構成を設定して、全てのコマンドについてグローバルに設定することも可能だ。
gcloud config set eventarc/location europe-west1
Copyright © ITmedia, Inc. All Rights Reserved.