Microservice

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

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

Tujuan kami bukan untuk memaksakan definisi microservice kepada Anda. Sebagai gantinya, 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 untuk menerapkan praktik terbaik untuk sistem pemantauan tanpa mengubah satu baris kode pun.

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

  • Mendeteksi microservice secara otomatis 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 memiliki opini. Dalam arsitektur yang menggunakan framework tersebut, Cloud Monitoring otomatis mendeteksi saat layanan di-deploy, diperbarui, atau dihapus. Pemantauan melakukan deteksi ini melalui analisis konstan terhadap aliran metadata yang dihasilkan oleh project.

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

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

  • Cloud Service Mesh: Cloud Monitoring mendukung mesh layanan yang dibuat di atas satu cluster GKE. Dalam konfigurasi ini, layanan Cloud Service Mesh sesuai langsung dengan layanan GKE. Semua layanan Cloud 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 layanan mikro yang ditemukan secara otomatis. Dasbor berisi detail metadata layanan, linimasa pemberitahuan, status tujuan tingkat layanan (SLO), dan log yang terkait dengan layanan. Setiap komponen ini 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 tersebut, dan Anda tidak perlu membuat SLO untuk semuanya. Pemantauan membuat daftar layanan kandidat, dan Anda mengidentifikasi layanan yang ingin diperlakukan sebagai layanan Pemantauan dengan memilihnya dari daftar. Kemudian, pemantauan akan membuat infrastruktur layanan untuk Anda.

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

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