Arsitektur

Dokumen ini memperkenalkan microservice dan menjelaskan jenis-jenis microservice yang didukung oleh Cloud Monitoring.

Istilah microservice memiliki arti yang berbeda bagi orang yang berbeda. Bagi sebagian orang, microservice sesuai dengan "kotak" yang digambar di papan tulis virtual saat membahas arsitektur sistem. Sementara yang lainnya merujuk ke definisi lebih formal yang menjelaskan endpoint yang dapat dialamatkan jaringan dengan fungsi yang ditentukan oleh API eksternalnya yang dapat dikembangkan, di-deploy, dan dioperasikan secara independen dari microservice lainnya dalam sistem. Yang lain lagi mendasarkan pemahaman mereka pada konsep microservice yang disediakan oleh platform pengembangan mereka, seperti layanan App Engine atau layanan Anthos Service Mesh.

Tujuan kami tidak untuk memaksa Anda menetapkan definisi microservice. Sebaliknya, kami ingin membantu Anda memantau sistem dalam skala besar selama transformasi digital dengan menyediakan alat pemantauan berorientasi layanan untuk mendukung Anda dan arsitektur Anda. Kami ingin bekerja sama dengan Anda dalam menerapkan praktik terbaik untuk memantau sistem tanpa mengubah satu baris kode pun.

Untuk membantu Anda memantau microservice, Cloud Monitoring melakukan hal berikut:

  • Mendeteksi otomatis microservice jika memungkinkan
  • Memberikan pengalaman terpandu untuk menentukan microservice berbasis Google Kubernetes Engine dan Cloud Run
  • Menawarkan solusi yang sepenuhnya kustom untuk fleksibilitas maksimum

Microservice yang ditemukan secara otomatis

Beberapa framework pengembangan modern menawarkan konsep microservice yang tidak dapat berubah. Pada arsitektur yang menggunakan framework tersebut, Cloud Monitoring otomatis mendeteksi kapan layanan di-deploy, diupdate, atau dihapus. Monitoring menyelesaikan deteksi ini melalui analisis konstan terhadap aliran metadata yang dihasilkan oleh suatu project.

Cloud Monitoring dapat otomatis mendeteksi microservice yang dibangun menggunakan framework pengembangan berikut:

  • App Engine: App Engine memiliki konsep kuat tentang microservice, yang disebut layanan App Engine (dan sebelumnya berupa modul). Setiap layanan dibedakan berdasarkan file konfigurasi app.yaml-nya sendiri.

  • Anthos Service Mesh: Cloud Monitoring mendukung mesh layanan yang dibangun di atas satu cluster GKE. Dalam konfigurasi ini, layanan Anthos Service Mesh berhubungan langsung dengan layanan GKE. Semua layanan Anthos Service Mesh, baik yang dikelola pengguna maupun yang dikelola sistem, akan otomatis terdeteksi.

Dasbor untuk microservice yang ditemukan secara otomatis

Dasbor layanan dibuat secara otomatis untuk semua microservice yang ditemukan secara otomatis. Dasbor tersebut berisi detail metadata layanan, linimasa pemberitahuan, status tujuan tingkat layanan (SLO), dan log yang terkait dengan layanan. Setiap komponen tersebut dijelaskan secara lebih mendetail di Menggunakan dasbor microservice.

Dasbor layanan untuk microservice yang ditemukan secara otomatis.

GKE, Cloud Run, dan layanan kustom

Cloud Monitoring dapat mengidentifikasi layanan potensial atau kandidat untuk jenis berikut:

  • Namespace GKE
  • Layanan GKE
  • Workload GKE
  • Layanan Cloud Run

Namun, mungkin ada banyak kandidat seperti itu, dan Anda tidak harus membuat SLO pada semua kandidat tersebut. Monitoring membuat daftar layanan kandidat, dan mengidentifikasi layanan yang ingin Anda perlakukan sebagai layanan Monitoring dengan memilihnya dari daftar. Monitoring kemudian akan membuatkan infrastruktur layanan untuk Anda.

Ketika tidak ada jenis layanan yang mengakomodasi aplikasi yang SLO-nya ingin Anda buat, Anda dapat menentukan layanan kustom.

Untuk mengetahui informasi selengkapnya tentang mengidentifikasi layanan kandidat dan membuat layanan kustom, lihat Menentukan microservice.