Ringkasan Eventarc Standard

Eventarc memungkinkan Anda membangun arsitektur berbasis peristiwa tanpa harus menerapkan, menyesuaikan, atau memelihara infrastruktur yang mendasarinya.

Eventarc ditawarkan dalam dua edisi: Eventarc Advanced dan Eventarc Standard. Kedua edisi ini menawarkan solusi eventing yang skalabel, serverless, dan terkelola sepenuhnya yang memungkinkan Anda merutekan peristiwa secara asinkron dari sumber ke target. Untuk mengetahui informasi selengkapnya, lihat Memilih Eventarc Advanced atau Eventarc Standard.

Eventarc Standard menawarkan solusi standar untuk mengelola alur perubahan status, yang disebut peristiwa, antara microservice yang dipisahkan. Saat dipicu, Eventarc Standard merutekan peristiwa ini ke berbagai tujuan (dalam dokumen ini, lihat Tujuan peristiwa) sambil mengelola pengiriman, keamanan, otorisasi, kemampuan observasi, dan penanganan error untuk Anda.

Anda dapat mengelola Eventarc dari Google Cloud konsol, dari command line menggunakan gcloud CLI, atau menggunakan Eventarc API.

Eventarc merutekan peristiwa dari penyedia peristiwa ke tujuan peristiwa.
Eventarc Standard memungkinkan Anda merutekan peristiwa dari penyedia peristiwa ke tujuan peristiwa (klik diagram untuk memperbesar).

1 Peristiwa dari penyedia Google dikirim langsung dari sumber (misalnya, Cloud Storage) atau melalui entri Cloud Audit Logs, dan menggunakan Pub/Sub sebagai lapisan transpor. Peristiwa dari sumber Pub/Sub dapat menggunakan topik Pub/Sub yang ada atau Eventarc akan otomatis membuat topik dan mengelolanya untuk Anda.

2 Peristiwa untuk tujuan Google Kubernetes Engine (GKE)—termasuk layanan penayangan Knative yang berjalan di cluster GKE—menggunakan penerus peristiwa Eventarc untuk mengambil peristiwa baru dari Pub/Sub dan meneruskannya ke tujuan. Komponen ini bertindak sebagai perantara antara lapisan transpor Pub/Sub dan layanan target. Komponen ini berfungsi pada layanan yang ada dan juga mendukung layanan pensinyalan (termasuk yang tidak diekspos di luar cluster yang terkelola sepenuhnya) sekaligus menyederhanakan penyiapan dan pemeliharaan. Perhatikan bahwa siklus proses penerus peristiwa dikelola oleh Eventarc, dan jika Anda tidak sengaja menghapus penerus peristiwa, Eventarc akan memulihkan komponen ini.

3 Peristiwa untuk eksekusi alur kerja diubah dan diteruskan ke alur kerja sebagai argumen runtime. Workflows dapat menggabungkan dan mengorkestrasi Google Cloud layanan API berbasis HTTP dan dalam urutan yang Anda tentukan.

4 Semua fungsi berbasis peristiwa di Cloud Run Functions menggunakan pemicu Eventarc untuk mengirimkan peristiwa. Anda dapat mengonfigurasi pemicu Eventarcsaat men-deploy Cloud Run Function menggunakan antarmuka Cloud Run Functions.

Kasus penggunaan utama

Eventarc mendukung banyak kasus penggunaan untuk aplikasi tujuan. Berikut beberapa contohnya:

Mengonfigurasi dan memantau
  • Konfigurasi sistem: Menginstal alat pengelolaan konfigurasi di VM baru saat VM dimulai.
  • Remediasi otomatis: Mendeteksi apakah layanan tidak merespons dengan benar dan otomatis memulai ulang layanan.
  • Peringatan dan notifikasi: Memantau saldo alamat dompet mata uang kripto dan memicu notifikasi.
Mengharmoniskan
  • Pendaftaran direktori: Mengaktifkan badge karyawan saat karyawan baru bergabung dengan perusahaan.
  • Sinkronisasi data: Memicu alur kerja akuntansi saat prospek dikonversi dalam sistem CRM.
  • Pemberian label resource: Memberi label dan mengidentifikasi pembuat VM saat VM dibuat.
Menganalisis
  • Analisis sentimen: Menggunakan Cloud Natural Language API untuk melatih dan men-deploy model ML yang melampirkan skor kepuasan ke tiket layanan pelanggan saat tiket tersebut diselesaikan.
  • Retouching dan analisis gambar: Menghapus latar belakang dan otomatis mengategorikan gambar saat pengecer menambahkannya ke penyimpanan objek.

Peristiwa

Peristiwa adalah rekaman data yang menyatakan kejadian dan konteksnya. Peristiwa adalah unit komunikasi terpisah, yang independen dari peristiwa lainnya. Misalnya, peristiwa dapat menunjukkan perubahan pada data dalam database, file yang ditambahkan ke sistem penyimpanan, atau tugas terjadwal.

Lihat Jenis peristiwa Google yang didukung oleh Eventarc.

Penyedia peristiwa

Peristiwa dirutekan dari penyedia peristiwa (sumber) ke konsumen peristiwa yang tertarik. Perutean dilakukan berdasarkan informasi yang terdapat dalam peristiwa, tetapi peristiwa tidak mengidentifikasi tujuan perutean tertentu. Eventarc mendukung peristiwa dari lebih dari 130 penyedia Google. Penyedia ini mengirimkan peristiwa (misalnya, update pada objek di bucket Cloud Storage atau pesan yang dipublikasikan ke topik Pub/Sub) langsung dari sumber, atau melalui entri Cloud Audit Logs.

Tujuan peristiwa

Peristiwa dirutekan ke tujuan tertentu (target) yang dikenal sebagai penerima peristiwa (atau konsumen) melalui langganan push Pub/Sub.

Cloud Run

Pelajari cara membuat layanan penerima peristiwa yang dapat di-deploy ke Cloud Run.

Untuk menentukan cara terbaik merutekan peristiwa ke layanan Cloud Run, lihat Rute peristiwa.

Cloud Run Functions

Semua fungsi berbasis peristiwa di Cloud Run Functions menggunakan pemicu Eventarc untuk mengirimkan peristiwa. Pemicu Eventarc memungkinkan fungsi dipicu oleh jenis peristiwa apa pun yang didukung oleh Eventarc. Anda dapat mengonfigurasi pemicu Eventarc saat men-deploy Cloud Run Function menggunakan antarmuka Cloud Run Functions.

GKE

Eventarc mendukung pembuatan pemicu yang menargetkan layanan Google Kubernetes Engine (GKE). Hal ini mencakup endpoint publik dari layanan pribadi dan publik yang berjalan di cluster GKE.

  • Agar Eventarc dapat menargetkan dan mengelola layanan di cluster tertentu, Anda harus memberikan izin yang diperlukan ke akun layanan Eventarc apa pun.

  • Anda harus mengaktifkan Workload Identity Federation for GKE di cluster GKE tempat layanan tujuan berjalan. Workload Identity Federation for GKE is diperlukan untuk menyiapkan penerus peristiwa dengan benar dan merupakan cara yang direkomendasikan untuk mengakses Google Cloud layanan dari aplikasi yang berjalan dalam GKE karena properti keamanan dan pengelolaan yang lebih baik. Untuk mengetahui informasi selengkapnya, lihat Mengaktifkan Workload Identity.

Endpoint HTTP internal dalam jaringan VPC

Anda dapat mengonfigurasi perutean peristiwa ke endpoint HTTP internal dalam jaringan Virtual Private Cloud (VPC). Untuk mengonfigurasi pemicu, Anda juga harus memberikan ID lampiran jaringan. Untuk mengetahui informasi selengkapnya, lihat Merutekan peristiwa ke endpoint HTTP internal dalam jaringan VPC.

Workflows

Anda dapat memicu eksekusi alur kerja. Workflows memerlukan email akun layanan IAM yang akan digunakan oleh pemicu Eventarc untuk memanggil eksekusi alur kerja. Sebaiknya gunakan akun layanan dengan hak istimewa terendah yang diperlukan untuk mengakses resource yang diperlukan. Untuk mengetahui informasi selengkapnya, lihat Membuat dan mengelola akun layanan.

Format dan library peristiwa

Eventarc mengirimkan peristiwa, terlepas dari penyedia, ke tujuan target dalam format CloudEvents menggunakan permintaan HTTP dalam mode konten biner. CloudEvents adalah spesifikasi untuk mendeskripsikan metadata peristiwa dengan cara yang umum.

Bergantung pada penyedia peristiwa, Anda dapat menentukan encoding data payload peristiwa sebagai application/json atau application/protobuf. Protocol Buffers (atau Protobuf) adalah mekanisme yang tidak bergantung bahasa dan tidak bergantung platform yang dapat diperluas untuk membuat serialisasi data terstruktur. Perhatikan hal berikut:

  • Untuk sumber kustom atau penyedia pihak ketiga, atau untuk peristiwa langsung dari Pub/Sub, opsi pemformatan ini tidak didukung.
  • Payload peristiwa yang diformat dalam JSON lebih besar daripada yang diformat dalam Protobuf, dan hal ini dapat memengaruhi keandalan bergantung pada tujuan peristiwa dan batas ukuran peristiwa. Untuk mengetahui informasi selengkapnya, lihat Masalah umum.

Tujuan target seperti Cloud Run Functions, Cloud Run, dan GKE menggunakan peristiwa dalam format HTTP. Untuk tujuan Workflows, layanan Workflows mengonversi peristiwa ke objek JSON, dan meneruskan peristiwa ke eksekusi alur kerja sebagai argumen runtime.

Menggunakan cara standar untuk mendeskripsikan metadata peristiwa memastikan konsistensi, aksesibilitas, dan portabilitas. Konsumen peristiwa dapat membaca peristiwa ini secara langsung, atau Anda dapat menggunakan Cloud Client Libraries dalam berbagai bahasa (termasuk C++, C#, Go, Java, Node.js, PHP, Python, dan Ruby) untuk membaca dan mengurai peristiwa. Ada juga sekumpulan CloudEvents SDK khusus bahasa .

Struktur isi HTTP untuk semua peristiwa tersedia di repositori GitHub Google CloudEvents.

Eventarc mengirimkan peristiwa dalam format CloudEvents. Anda dapat membaca peristiwa
    secara langsung, atau menggunakan SDK atau library Google CloudEvents untuk mengurai peristiwa.
Gambar 2. Eventarc mengirimkan peristiwa dalam format CloudEvents ke tujuan peristiwa. Anda dapat membaca peristiwa ini secara langsung, atau menggunakan CloudEvents SDK atau library Google untuk membaca dan mengurai peristiwa.

Kompatibilitas mundur

Eventarc menganggap penambahan atribut berikut dan kolom kompatibel dengan versi sebelumnya:

  • Atribut pemfilteran opsional atau atribut khusus output
  • Kolom opsional ke payload peristiwa

Pemicu Eventarc

Peristiwa terjadi terlepas dari apakah tujuan target bereaksi terhadapnya atau tidak. Anda membuat respons terhadap peristiwa dengan pemicu. Pemicu adalah pernyataan bahwa Anda tertarik pada suatu peristiwa atau rangkaian peristiwa tertentu. Saat membuat pemicu, Anda menentukan filter untuk pemicu yang memungkinkan Anda menangkap dan menindaklanjuti peristiwa tertentu tersebut, termasuk peruteannya dari sumber peristiwa ke tujuan target. Untuk mengetahui informasi selengkapnya, lihat representasi REST resource pemicu dan Penyedia dan tujuan peristiwa.

Perhatikan bahwa langganan Pub/Sub yang dibuat untuk Eventarc bertahan terlepas dari aktivitasnya dan tidak akan habis masa berlakunya. Untuk mengubah properti langganan, lihat Properti langganan.

Eventarc mendukung pemicu untuk jenis peristiwa berikut:

Peristiwa Cloud Audit Logs (CAL)
DeskripsiCloud Audit Logs menyediakan log audit Aktivitas Admin dan Akses Data untuk setiap project, folder, dan organisasi Cloud. Google Cloud layanan menulis entri ke log ini. Anda dapat membuat filter untuk pemicu Eventarc menggunakan nilai serviceName dan methodName di log audit. Untuk nilai yang tepat, lihat Google Cloud layanan dengan log audit. Untuk mengetahui informasi selengkapnya, lihat Menentukan filter peristiwa untuk Cloud Audit Logs.
Jenis filter peristiwaPemicu Eventarc dengan type=google.cloud.audit.log.v1.written mengirimkan permintaan ke layanan atau alur kerja Anda saat log audit dibuat yang cocok dengan kriteria filter pemicu.
Peristiwa langsung
DeskripsiEventarc dapat dipicu oleh berbagai peristiwa langsung seperti update pada bucket Cloud Storage, update pada template Firebase Remote Config, atau perubahan pada resource di Google Cloud layanan.

Eventarc juga dapat dipicu oleh pesan yang dipublikasikan ke topik Pub/Sub. Pub/Sub adalah bus pesan yang didistribusikan secara global yang secara otomatis diskalakan sesuai kebutuhan Anda. Karena Eventarc dapat dipanggil oleh pesan pada topik Pub/Sub, Anda dapat mengintegrasikan Eventarc dengan layanan lain yang mendukung Pub/Sub sebagai tujuan.

Jenis filter peristiwaPemicu Eventarc dengan jenis filter peristiwa tertentu mengirimkan permintaan ke layanan atau alur kerja Anda saat peristiwa terjadi yang cocok dengan kriteria filter pemicu; misalnya, type=google.cloud.storage.object.v1.finalized (saat objek dibuat di bucket Cloud Storage), atau type=google.cloud.pubsub.topic.v1.messagePublished (saat pesan dipublikasikan ke topik Pub/Sub yang ditentukan).

Lokasi pemicu

Google Cloud layanan seperti Cloud Storage dapat disiapkan sebagai regional atau multi-regional. Beberapa layanan, seperti Cloud Build dapat disiapkan secara global.

Eventarc memungkinkan Anda membuat pemicu regional atau, untuk beberapa peristiwa, Anda dapat membuat pemicu global dan menerima peristiwa dari semua region. Untuk mengetahui informasi selengkapnya, lihat Memahami lokasi Eventarc.

Anda harus menentukan lokasi pemicu Eventarc agar sesuai dengan lokasi Google Cloud layanan yang menghasilkan peristiwa dan menghindari masalah performa dan residensi data yang disebabkan oleh pemicu global.

Anda dapat menentukan lokasi pemicu menggunakan flag --location dengan setiap perintah. Untuk tujuan Cloud Run, jika flag --destination-run-region tidak ditentukan, diasumsikan bahwa layanan berada di region yang sama dengan pemicu. Untuk mengetahui informasi selengkapnya, lihat referensi Google Cloud CLI.

Keandalan dan pengiriman

Ekspektasi pengiriman adalah sebagai berikut:

  • Peristiwa yang menggunakan Cloud Audit Logs dikirim dalam waktu kurang dari satu menit. (Perhatikan bahwa meskipun pemicu Cloud Audit Logs langsung dibuat, diperlukan waktu hingga dua menit agar pemicu diterapkan dan memfilter peristiwa.)
  • Peristiwa yang menggunakan Pub/Sub dikirim dalam hitungan detik.

Tidak ada jaminan pengiriman sesuai urutan, first-in-first-out. Perhatikan bahwa memiliki pengurutan yang ketat akan merusak fitur ketersediaan dan skalabilitas Eventarc yang sesuai dengan fitur lapisan transpornya, Cloud Pub/Sub. Untuk mengetahui informasi selengkapnya, lihat Mengurutkan pesan.

Latensi dan throughput adalah upaya terbaik. Jumlah tersebut bervariasi berdasarkan beberapa faktor, termasuk apakah pemicu Eventarc bersifat regional, multi-regional, atau global; konfigurasi layanan tertentu; dan beban jaringan pada resource di Google Cloud region.

Perhatikan bahwa ada kuota dan batas penggunaan yang berlaku secara umum untuk Eventarc. Ada juga kuota dan batas penggunaan yang khusus untuk Workflows.

Kebijakan percobaan ulang peristiwa

Karakteristik percobaan ulang Eventarc sesuai dengan karakteristik lapisan transpornya, Cloud Pub/Sub. Durasi retensi pesan default yang ditetapkan oleh Eventarc adalah 24 jam dengan penundaan backoff eksponensial.

Anda dapat memperbarui kebijakan percobaan ulang melalui langganan Pub/Sub yang terkait dengan pemicu Eventarc. Untuk mengetahui informasi selengkapnya, lihat Mencoba ulang peristiwa.

Secara opsional, untuk tujuan Cloud Run (termasuk Cloud Run Functions), Anda dapat mengonfigurasi satu upaya pengiriman tanpa percobaan ulang. Ini adalah konfigurasi default saat Anda menggunakan Google Cloud konsol untuk membuat pemicu Eventarc untuk tujuan Cloud Run. Untuk mengetahui informasi selengkapnya, lihat Membuat pemicu dengan Eventarc.

Kemampuan observasi

Google Cloud Observability menyediakan alat pemantauan, logging, dan diagnostik. Alat ini dapat membantu Anda memantau dan menganalisis aktivitas dan pertumbuhan Eventarc, serta memahami perilaku, kondisi, dan performa aplikasi Anda. Untuk mengetahui informasi selengkapnya, lihat Kemampuan observasi di Eventarc.

Log mendetail untuk Eventarc, Cloud Run, Cloud Run Functions, GKE, Pub/Sub, dan Workflows tersedia dari Cloud Audit Logs.

Disaster recovery

Anda dapat memanfaatkan zona dan region untuk mencapai keandalan jika terjadi pemadaman. Untuk mempelajari lebih lanjut cara memastikan bahwa tujuan RTO (Recovery Time Objective) dan RPO (Recovery Point Objective) terpenuhi untuk waktu pencadangan dan pemulihan saat menggunakan Eventarc, lihat Merancang disaster recovery untuk pemadaman infrastruktur cloud.

Standar kepatuhan

Eventarc Standard mematuhi sertifikasi dan standar tertentu . Untuk menghindari penggunaan resource Eventarc Advanced yang tidak sesuai, Anda dapat membuat kebijakan organisasi kustom yang menonaktifkan resource Eventarc Advanced. Untuk mengetahui informasi selengkapnya, lihat Menonaktifkan resource Eventarc Advanced.

Langkah berikutnya