Batasan Cloud Service Mesh dengan Envoy

Dokumen ini menjelaskan batasan yang berlaku untuk Cloud Service Mesh dengan Google Cloud API, termasuk batasan pengelolaan traffic lanjutan. Hal ini tidak berlaku untuk Cloud Service Mesh dengan Istio API.

Untuk mengetahui informasi tentang batas, lihat Kuota dan batas.

Batasan umum

Batasan Cloud Service Mesh mencakup hal berikut:

  • Cloud Service Mesh dengan API pemilihan rute layanan hanya mendukung Google Cloud API.
  • Anda dapat menggunakan Cloud Service Mesh untuk mengonfigurasi protokol permintaan berikut: HTTP (HTTP/1.1 atau HTTP/2), HTTPS, TCP, dan gRPC.
  • Saat Anda menggunakan Envoy sebagai proxy bidang data, nilai stream_idle_timeout akan ditetapkan secara default ke 5 menit. Ini tidak dapat dikonfigurasi melalui Cloud Service Mesh.
  • Saat menggunakan resource TCPRoute untuk mengonfigurasi protokol permintaan TCP, Anda tidak dapat menggunakan fitur pengelolaan traffic lanjutan. Pengelolaan traffic lanjutan hanya tersedia jika Anda mengonfigurasi bidang data untuk menangani permintaan HTTP atau gRPC.
  • Cloud Service Mesh mendukung Peering Jaringan VPC dengan API pemilihan rute layanan.
  • Cloud Service Mesh tidak mendukung protokol server-first.
  • Anda tidak dapat menggunakan Cloud Service Mesh dengan layanan yang berjalan di Knative atau Google Cloud Serverless Computing.
  • Dokumen ini membahas proxy Envoy, tetapi Anda dapat menggunakan proxy API standar terbuka (xDS) dengan Cloud Service Mesh. Namun, Google telah menguji Cloud Service Mesh hanya dengan proxy Envoy.
  • Untuk memastikan bahwa semua kerentanan keamanan yang diketahui telah dimitigasi, sebaiknya Anda menggunakan versi Envoy terbaru. Untuk informasi tentang saran keamanan Envoy, lihat Saran Keamanan Envoy.
  • Konsol Google Cloud tidak mendukung grup endpoint jaringan (NEG) konektivitas hybrid. Untuk membuat atau menghapus NEG konektivitas hybrid, gunakan Google Cloud CLI.
  • Karena bidang data menangani pemeriksaan kesehatan, Anda tidak dapat menggunakan konsol Google Cloud, API, atau gcloud CLI untuk mengambil status pemeriksaan kesehatan.
  • Periksa iptables dan pastikan sudah disiapkan dengan benar. Untuk informasi selengkapnya tentang cara mengonfigurasi iptables, lihat catatan Envoy tentang cara mengonfigurasi pemfilteran HTTP.

    • Jika Anda menggunakan konsol Google Cloud untuk membuat instance virtual machine (VM), beberapa modul terkait ipv6 tidak diinstal dan tersedia sebelum dimulai ulang. Akibatnya, iptables.sh gagal karena dependensi tidak ada. Dalam hal ini, mulai ulang VM dan jalankan kembali skrip run.sh.
    • Jika menggunakan gcloud CLI untuk membuat VM Compute Engine, Anda tidak akan mengalami masalah ini.

Batasan pengelolaan traffic lanjutan

Batasan pengelolaan traffic lanjutan mencakup hal berikut:

  • Jika nilai BackendService.sessionAffinity bukan NONE, dan BackendService.localityLbPolicy disetel ke kebijakan load balancing selain MAGLEV atau RING_HASH, setelan afinitas sesi tidak akan berlaku.
  • Perintah gcloud import tidak menghapus kolom tingkat teratas resource, seperti layanan backend dan peta URL. Misalnya, jika layanan backend dibuat dengan setelan untuk circuitBreakers, Anda dapat menggunakan perintah gcloud import berikutnya untuk memperbarui setelan tersebut. Namun, Anda tidak dapat menghapus setelan tersebut dari layanan backend. Anda dapat menghapus dan membuat ulang resource itu sendiri tanpa setelan circuitBreakers.

Batasan dengan Direktori Layanan

  • Service Directory dan Cloud Service Mesh tidak menjamin keterjangkauan jaringan untuk klien.
  • Layanan backend hanya dapat mereferensikan salah satu dari hal berikut:

    • Grup instance terkelola atau grup instance tidak terkelola
    • Grup endpoint jaringan
    • Pengikatan layanan
  • Layanan Direktori Layanan hanya dapat digunakan dengan layanan backend global dengan load-balancing-scheme=INTERNAL_SELF_MANAGED.

  • Layanan Direktori Layanan yang direferensikan oleh binding layanan dapat dihapus. Jika layanan Direktori Layanan dasar yang dilampirkan ke layanan backend dihapus, aplikasi yang menggunakan Cloud Service Mesh tidak dapat mengirim traffic ke layanan ini, sehingga permintaan akan gagal. Lihat Observabilitas dan proses debug untuk mengetahui praktik terbaik.

  • Saat mengikat layanan Service Directory ke layanan backend, Anda tidak dapat mengonfigurasi health check di layanan backend tersebut.

Langkah selanjutnya

  • Untuk mempelajari batasan yang berlaku untuk Cloud Service Mesh dengan aplikasi gRPC tanpa proxy, lihat Batasan gRPC tanpa proxy.