Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Event-driven orchestration with Eventarc and Wo...
Search
Mete Atamel
November 03, 2021
Programming
440
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Event-driven orchestration with Eventarc and Workflows
Mete Atamel
November 03, 2021
More Decks by Mete Atamel
See All by Mete Atamel
Agent-User Interaction Protocol (AG-UI)
meteatamel
0
100
Agent to UI Protocol (A2UI)
meteatamel
1
84
Tour of Agent Protocols: MCP, A2A, AG-UI, A2UI with ADK
meteatamel
2
380
Getting started with Google Antigravity
meteatamel
5
960
Gemini for developers
meteatamel
0
190
Model Context Protocol
meteatamel
1
200
Agent2Agent (A2A) Protocol
meteatamel
2
240
Beyond_the_Prompt__Evaluating__Testing__and_Securing_LLM_Applications.pdf
meteatamel
1
540
Gemini_2.0_for_developers.pdf
meteatamel
0
160
Other Decks in Programming
See All in Programming
軽量Java基盤の設計 DIコンテナに頼らない、長期保守と1秒起動の実現 JJUG CCC 2026 Spring
macha64
0
460
The NotImplementedError Problem in Ruby
koic
1
600
PHPで使える日時の表現と、その知り方 #frontend_phpcon_do
o0h
PRO
0
190
SPMマルチモジュールで テストカバレッジを取得する技法
yosshi4486
0
140
開発体験を左右するライブラリの API 設計 - GraphQL スキーマ構築ライブラリから考える #tskaigi
izumin5210
2
1.6k
ビジネスモデルから紐解く、AI+型駆動開発
hirokiomote
2
5.2k
TAKTでAI駆動開発の品質を設計する
j5ik2o
6
930
Spec-Driven Development with AI-Agents: From High-Level Requirements to Working Software
antonarhipov
2
450
Java × distroless で 軽量なコンテナイメージを / Java on Distroless
contour_gara
0
500
ADKを使って簡単にAIエージェントを作ってみよう
k1mu21
0
230
Webフレームワークの ベンチマークについて
yusukebe
0
130
DynamoDBには集計系のクエリがないけどなんとかしたい
musan
1
130
Featured
See All Featured
Balancing Empowerment & Direction
lara
6
1.1k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.5k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Facilitating Awesome Meetings
lara
57
6.9k
Visualization
eitanlees
152
17k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
160
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
400
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
550
Skip the Path - Find Your Career Trail
mkilby
1
140
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
220
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
200
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
200
Transcript
Event-driven orchestration with Eventarc and Workflows Mete Atamel Developer Advocate
at Google @meteatamel atamel.dev speakerdeck.com/meteatamel
github.com/priyankavergadia/GCPSketchnote
Event-driven orchestration Orchestrated services communicating via events Orchestrated Services Message
Broker Orchestrated Services Orchestrated Services
Google Cloud GA Your own apps GA Cloud Run GA
Cloud Functions Preview Workflows Preview Targets Sources Cloud Run for Anthos on GKE Preview Eventarc Triggers to filter events CloudEvents format
New message in a Pub/Sub topic → Cloud Run gcloud
eventarc triggers create trigger-pubsub \ --destination-run-service=$SERVICE_NAME \ --destination-run-region=$REGION \ --event-filters="type=google.cloud.pubsub.topic.v1.messagePublished" --transport-topic=projects/$PROJECT_ID/topics/$TOPIC_ID Pub/Sub Trigger
New Compute Engine VM creation → Cloud Run gcloud eventarc
triggers create trigger-auditlog \ --destination-run-service=$SERVICE_NAME \ --destination-run-region=$REGION --event-filters="type=google.cloud.audit.log.v1.written" \ --event-filters="serviceName=compute.googleapis.com" \ --event-filters="methodName=beta.compute.instances.insert" \ --service-account=$PROJECT_NO-compute@developer.gserviceaccount.com Audit Log Trigger
Create a trigger for new object creation in Cloud Storage
→ Cloud Run gcloud eventarc triggers create trigger-gcs \ --destination-run-service=$SERVICE_NAME \ --destination-run-region=$REGION --event-filters="type=google.cloud.storage.object.v1.finalized" \ --event-filters="bucket=$BUCKET_NAME" \ --service-account=$PROJECT_NO-compute@developer.gserviceaccount.com Cloud Storage Trigger
Serverless Compute External API’s Google API’s etc... Workflows - orchestrate
& integrate SaaS API’s Private API’s Other Clouds Workflows
- processPayment: call: http.post args: url: https://payment-processor.run.app/... body: input: ${paymentDetails}
result: processResult - shipItems: call: http.post args: url: https://.../cloudfunctions.net/ship body: input: ${processResult.body} result: shipResult - notifyUser: call: http.post ... Payment Processor Cloud Run Authorize & charge CC Notifier Cloud Run Notify user Shipper Cloud Functions Prepare & ship items YAML or JSON syntax
Deploy, execute, manage workflows # Deploy a workflow gcloud workflows
deploy my-workflow --source=workflow.yaml # Execute a workflow gcloud workflows execute my-workflow # See the result gcloud workflows executions describe <your-execution-id> --workflow my-workflow
None
Image processing pipeline v1 - Eventarc (AuditLog-Cloud Storage) + Cloud
Run End Users Images Input Cloud Storage Images Output Cloud Storage Filter Cloud Run Resizer Cloud Run Labeler Cloud Run Watermarker Cloud Run File uploaded Cloud Pub/Sub File resized Cloud Pub/Sub AuditLog Trigger Eventarc Pub/Sub Trigger Eventarc Pub/Sub Trigger Eventarc
Image processing pipeline v2 - Eventarc (Cloud Storage) + Cloud
Run +Workflows End Users Images Input Cloud Storage Images Output Cloud Storage Filter Cloud Run Cloud Storage Trigger Eventarc Image Processing Workflows Watermarker Cloud Functions Resizer Cloud Functions Labeler Cloud Functions
Image processing pipeline v3 - Eventarc (Cloud Storage) + Workflows
End Users Images Input Cloud Storage Images Output Cloud Storage Cloud Storage Trigger Eventarc Image Processing Workflows Watermarker Cloud Functions Resizer Cloud Functions Labeler Cloud Functions Filter Cloud Functions
@meteatamel atamel.dev speakerdeck.com/meteatamel github.com/GoogleCloudPlatform/eventarc-samples Thank you!