Ringkasan Cloud Service Mesh
Cloud Service Mesh adalah mesh layanan yang tersedia di Google Cloud dan di seluruh platform GKE Enterprise yang didukung. Layanan ini mendukung layanan yang berjalan di berbagai infrastruktur komputasi. Cloud Service Mesh dikontrol oleh API yang dirancang untuk Google Cloud, untuk open source, atau untuk keduanya.
Dokumen ini ditujukan untuk Anda jika Anda adalah pengguna Cloud Service Mesh baru atau pelanggan Anthos Service Mesh atau Traffic Director yang terus berlangganan.
Apa yang dimaksud dengan mesh layanan?
Mesh layanan adalah arsitektur yang memungkinkan komunikasi yang terkelola, dapat diamati, dan aman di antara layanan Anda, sehingga memudahkan Anda membuat aplikasi perusahaan yang andal yang terdiri dari banyak microservice di infrastruktur yang Anda pilih. Mesh layanan mengelola persyaratan umum untuk menjalankan layanan, seperti pemantauan, jaringan, dan keamanan, dengan alat yang konsisten dan canggih, sehingga memudahkan developer dan operator layanan untuk berfokus pada pembuatan dan pengelolaan aplikasi yang hebat bagi pengguna mereka.
Secara arsitektur, mesh layanan terdiri dari satu atau beberapa bidang kontrol dan bidang data. Mesh layanan memantau semua traffic masuk dan keluar dari layanan Anda. Di Kubernetes, proxy di-deploy oleh pola sidecar ke microservice di mesh. Di Compute Engine, Anda dapat men-deploy proxy di VM atau menggunakan gRPC tanpa proxy untuk bidang data.
Pola ini memisahkan logika aplikasi atau bisnis dari fungsi jaringan, dan memungkinkan developer berfokus pada fitur yang dibutuhkan bisnis. Mesh layanan juga memungkinkan tim operasi dan tim pengembangan memisahkan pekerjaan mereka satu sama lain.
Merancang aplikasi sebagai microservice memberikan banyak manfaat. Namun, workload Anda dapat menjadi lebih kompleks dan terfragmentasi seiring penskalaannya. Mesh layanan membantu menyelesaikan masalah fragmentasi dan mempermudah pengelolaan microservice Anda.
Apa yang dimaksud dengan Cloud Service Mesh?
Cloud Service Mesh adalah solusi Google untuk Google Cloud dan lingkungan GKE Enterprise yang didukung.
- Di Google Cloud: Cloud Service Mesh menyediakan API yang khusus untuk infrastruktur komputasi tempat beban kerja Anda berjalan.
- Untuk workload Compute Engine, Cloud Service Mesh menggunakan API pemilihan rute layanan khusus Google Cloud.
- Untuk beban kerja Google Kubernetes Engine (GKE), Cloud Service Mesh menggunakan API Istio open source.
- Di luar Google Cloud: Dengan multicloud Distributed Cloud atau GKE, Cloud Service Mesh mendukung Istio API untuk workload Kubernetes.
Baik di Google Cloud maupun di luar Google Cloud, Cloud Service Mesh memungkinkan Anda mengelola, mengamati, dan mengamankan layanan tanpa harus mengubah kode aplikasi.
Cloud Service Mesh mengurangi beban tim operasi dan pengembangan Anda dengan menyederhanakan distribusi layanan, mulai dari pengelolaan traffic dan telemetri mesh hingga mengamankan komunikasi antarlayanan. Mesh layanan terkelola sepenuhnya dari Google memungkinkan Anda mengelola lingkungan kompleks dan menikmati manfaat yang dijanjikan.
Fitur
Cloud Service Mesh memiliki serangkaian fitur untuk pengelolaan traffic, kemampuan observasi dan telemetri, serta keamanan.
Pengelolaan traffic
Cloud Service Mesh mengontrol aliran traffic di antara layanan dalam mesh, ke dalam mesh (traffic masuk), dan ke layanan di luar (traffic keluar). Anda mengonfigurasi dan men-deploy resource untuk mengelola traffic ini di lapisan aplikasi (L7). Misalnya, Anda dapat melakukan hal berikut:
- Gunakan penemuan layanan.
- Mengonfigurasi load balancing di antara layanan.
- Membuat deployment canary dan blue-green.
- Mengontrol perutean untuk layanan Anda dengan cermat.
- Siapkan pemutus arus.
Cloud Service Mesh mempertahankan daftar semua layanan dalam mesh berdasarkan nama dan endpoint masing-masing. Server ini mengelola daftar ini untuk mengelola aliran traffic (misalnya, alamat IP Pod Kubernetes atau alamat IP VM Compute Engine di Grup instance terkelola). Dengan menggunakan registry layanan ini, dan dengan menjalankan proxy secara berdampingan dengan layanan, mesh dapat mengarahkan traffic ke endpoint yang sesuai. Workload gRPC tanpa proxy juga dapat digunakan secara paralel dengan workload yang menggunakan proxy Envoy.
Insight kemampuan observasi
Antarmuka pengguna Cloud Service Mesh di konsol Google Cloud memberikan insight tentang mesh layanan Anda. Metrik ini otomatis dihasilkan untuk workload yang dikonfigurasi melalui Istio API.
- Metrik dan log layanan untuk traffic HTTP dalam cluster GKE mesh Anda secara otomatis diserap ke Google Cloud.
- Dasbor layanan yang telah dikonfigurasi sebelumnya memberi Anda informasi yang diperlukan untuk memahami layanan.
- Telemetri mendalam—yang didukung oleh Cloud Monitoring, Cloud Logging, dan Cloud Trace—memungkinkan Anda mempelajari metrik dan log layanan secara mendalam. Anda dapat memfilter dan mengelompokkan data berdasarkan berbagai atribut.
- Hubungan layanan ke layanan membantu Anda memahami secara sekilas dependensi antar-layanan dan siapa yang terhubung ke setiap layanan.
- Anda dapat dengan cepat melihat postur keamanan komunikasi, tidak hanya layanan Anda, tetapi juga hubungannya dengan layanan lain.
- Tujuan tingkat layanan (SLO) memberi Anda insight tentang kondisi layanan Anda. Anda dapat menentukan SLO dan pemberitahuan tentang standar kesehatan layanan Anda sendiri.
Pelajari lebih lanjut fitur observabilitas Cloud Service Mesh di Panduan observabilitas kami.
Manfaat keamanan
Cloud Service Mesh memberi Anda banyak manfaat keamanan.
- Mengurangi risiko serangan replay atau peniruan identitas yang menggunakan kredensial curian. Cloud Service Mesh mengandalkan sertifikat TLS mutual (mTLS) untuk mengautentikasi peer, bukan token pembawa seperti Token Web JSON (JWT).
- Memastikan enkripsi saat transit. Menggunakan mTLS untuk autentikasi juga memastikan bahwa semua komunikasi TCP dienkripsi saat transit.
- Mengurangi risiko klien yang tidak sah dapat mengakses layanan dengan data sensitif, terlepas dari lokasi jaringan klien dan kredensial tingkat aplikasi.
- Memitigasi risiko pelanggaran data pengguna dalam jaringan produksi Anda. Anda dapat memastikan bahwa orang dalam hanya dapat mengakses data sensitif melalui klien yang diberi otorisasi.
- Mengidentifikasi klien mana yang mengakses layanan dengan data sensitif. Logging akses Cloud Service Mesh menangkap identitas mTLS klien selain alamat IP.
- Semua komponen bidang kontrol dalam cluster dibuat dengan modul enkripsi yang divalidasi FIPS 140-2.
Pelajari lebih lanjut manfaat dan fitur keamanan Service Mesh di Panduan keamanan.
Opsi penerapan
Anda memiliki opsi deployment berikut di Cloud Service Mesh:
- Di Google Cloud
- Cloud Service Mesh Terkelola - kontrol dan data plane terkelola untuk GKE (direkomendasikan)
- Cloud Service Mesh Terkelola - bidang kontrol dan data terkelola untuk Compute Engine dengan VM (direkomendasikan)
- Bidang kontrol dalam cluster untuk GKE dengan Istio API (Tidak Dianjurkan)
- Di luar Google Cloud
- Bidang kontrol dalam cluster untuk Kubernetes dengan Istio API
Cloud Service Mesh Terkelola
Cloud Service Mesh Terkelola terdiri dari bidang kontrol terkelola untuk semua infrastruktur dan bidang data terkelola untuk GKE. Dengan Cloud Service Mesh Terkelola, Google menangani upgrade, penskalaan, dan keamanan untuk Anda, sehingga meminimalkan pemeliharaan pengguna manual. Hal ini mencakup bidang kontrol, bidang data, dan resource terkait.
Implementasi bidang data
Jika Anda menggunakan Google Cloud API, platform data Anda dapat disediakan oleh proxy Envoy atau oleh aplikasi gRPC tanpa proxy. Jika Anda mengupdate aplikasi yang ada, pendekatan berbasis sidecar memungkinkan integrasi ke dalam mesh tanpa mengubah aplikasi Anda. Jika ingin menghindari overhead saat menjalankan sidecar, Anda dapat mengupdate aplikasi untuk menggunakan gRPC.
Proxy Envoy dan gRPC tanpa proxy menggunakan xDS API untuk terhubung ke bidang kontrol. Jika menggunakan gRPC tanpa proxy, Anda memiliki pilihan bahasa yang didukung untuk aplikasi, termasuk Go, C++, Java, dan Python.
Jika Anda menggunakan API Istio open source, bidang data Anda disediakan oleh proxy Envoy.
Penerapan bidang kontrol
Bidang kontrol Cloud Service Mesh Anda bergantung pada apakah konfigurasi Anda aktif atau nonaktif di Google Cloud dan apakah Anda adalah pelanggan baru.
Penerapan bidang kontrol untuk pengguna yang ada
- Jika konfigurasi Anda dinonaktifkan di Google Cloud, Anda menggunakan bidang kontrol dalam cluster yang tidak dikelola Cloud Service Mesh. Untuk informasi selengkapnya, lihat Fitur yang didukung di dalam panel kontrol cluster.
- Jika Anda adalah pengguna Anthos Service Mesh di Google Cloud, Anda menggunakan Istio API. Untuk informasi selengkapnya, lihat Fitur yang didukung menggunakan Istio API (panel kontrol terkelola) .
- Jika Anda adalah pengguna Traffic Director, Anda menggunakan bidang kontrol terkelola Cloud Service Mesh dengan Google Cloud API. Untuk mengetahui informasi selengkapnya, lihat Cloud Service Mesh dengan fitur yang didukung Google Cloud API.
Untuk menentukan panel kontrol Anda saat ini, baca Mengidentifikasi implementasi panel kontrol. Untuk informasi selengkapnya tentang panel kontrol dan migrasi panel kontrol, lihat Ringkasan panel kontrol terkelola untuk pelanggan yang melanjutkan.
Penerapan bidang kontrol untuk pengguna baru
- Jika Anda merencanakan konfigurasi di luar Google Cloud, Anda memilih bidang kontrol dalam cluster yang tidak dikelola Cloud Service Mesh. Untuk informasi selengkapnya, lihat Fitur yang didukung di panel kontrol dalam cluster.
- Jika Anda merencanakan konfigurasi di Google Cloud pada Kubernetes, Anda memilih Istio API, tetapi bidang kontrol Anda menggunakan implementasi Traffic Director, kecuali dalam kasus tertentu yang dijelaskan dalam Yang menentukan implementasi bidang kontrol. Lihat Fitur yang didukung menggunakan Istio API (bidang kontrol terkelola) untuk mengetahui detail selengkapnya.
- Jika Anda merencanakan konfigurasi di Google Cloud pada VM Compute Engine, platform kontrol Anda akan menggunakan platform kontrol multi-tenant global, yang dikenal sebagai implementasi Traffic Director. Untuk informasi selengkapnya, lihat Cloud Service Mesh dengan fitur yang didukung Google Cloud API.
Migrasi bidang kontrol
Jika Anda adalah pelanggan Anthos Service Mesh yang terus menggunakan Istio API, cluster Anda akan mulai dimigrasikan ke bidang kontrol Traffic Director. Anda dapat terus menggunakan API Istio untuk konfigurasi.
Untuk menentukan apakah cluster Anda masih menggunakan bidang kontrol Istio atau telah dimigrasikan ke bidang kontrol global baru, baca Mengidentifikasi penerapan bidang kontrol.
Langkah selanjutnya
- Jika Anda adalah pengguna yang terus menggunakan layanan, baca Bidang kontrol terkelola untuk pelanggan yang terus menggunakan layanan.
- Jika Anda berencana menyiapkan dengan GKE, baca Menyediakan bidang kontrol.
- Jika Anda berencana menyiapkan dengan Compute Engine dan VM, baca Bersiap untuk menyiapkan API pemilihan rute layanan dengan Envoy dan workload tanpa proxy.