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 membahas arsitektur sistem. Orang lain mengacu pada definisi yang lebih formal yang menjelaskan endpoint yang dapat diakses jaringan dengan fungsi yang ditentukan oleh API eksternal yang dapat dikembangkan, di-deploy, dan dioperasikan secara independen dari microservice lain dalam sistem. Sementara yang lain 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 dalam memantau sistem 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 berpendapat. Dalam arsitektur yang menggunakan framework tersebut, Cloud Monitoring secara otomatis mendeteksi saat layanan di-deploy, diperbarui, atau dihapus. Pemantauan mencapai deteksi ini melalui analisis aliran metadata yang konstan 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 oleh file konfigurasi
app.yamlmiliknya sendiri.Cloud Service Mesh: Cloud Monitoring mendukung mesh layanan yang dibangun di atas satu cluster GKE. Dalam konfigurasi ini, layanan Cloud Service Mesh secara langsung sesuai 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 otomatis dibuat untuk semua microservice yang ditemukan secara otomatis. Dasbor berisi detail metadata layanan, linimasa pemberitahuan, status tujuan tingkat layanan (SLO), dan log terkait layanan. Setiap komponen ini dijelaskan secara lebih mendetail di bagian Menggunakan dasbor microservice.
Layanan GKE, Cloud Run, dan kustom
Cloud Monitoring dapat mengidentifikasi layanan potensial atau kandidat untuk jenis berikut:
- Namespace GKE
- Layanan GKE
- Beban kerja GKE
- Layanan Cloud Run
Namun, mungkin ada banyak kandidat seperti itu, dan Anda tidak harus membuat SLO untuk semuanya. Monitoring membuat daftar layanan kandidat, dan Anda mengidentifikasi layanan yang ingin Anda perlakukan sebagai layanan Monitoring dengan memilihnya dari daftar. Monitoring kemudian membuat infrastruktur layanan untuk Anda.
Jika tidak ada jenis layanan yang ada yang mengakomodasi aplikasi yang SLO-nya ingin Anda buat, Anda dapat menentukan layanan kustom.
Untuk mengetahui informasi selengkapnya tentang cara mengidentifikasi layanan kandidat dan membuat layanan kustom services, lihat Menentukan microservice.