Menyelesaikan masalah penskalaan Istiod di Anthos Service Mesh

Bagian ini menjelaskan masalah umum Anthos Service Mesh dan cara menyelesaikannya. Jika Anda memerlukan bantuan tambahan, lihat Mendapatkan dukungan.

Faktor penskalaan

Istiod mengirim konfigurasi ke setiap file bantuan menggunakan aliran gRPC berumur panjang. Kode ini memiliki beberapa karakteristik yang memengaruhi penskalaan:

  • Ukuran konfigurasi yang akan dihasilkan:
    • Jumlah total layanan/pod & resource Istio
    • Untuk skala besar, sesuaikan setelan File bantuan untuk mengurangi ukuran konfigurasi.
  • Laju perubahan lingkungan:
    • Saat layanan baru dibuat atau konfigurasi Istio berubah, update lengkap dikirim ke proxy.
    • Menambahkan endpoint baru tidak akan mahal untuk performa, karena hanya update inkremental yang dikirim.
  • Jumlah proxy yang konfigurasinya dibuat:
    • Dipengaruhi oleh jumlah gateway dan pod yang memiliki file bantuan.

Pertimbangan penskalaan

Istiod menskalakan dengan baik secara vertikal (permintaan besar) dan horizontal (lebih banyak replika). Pastikan batas CPU Anda tidak terlalu ketat. Jika Istiod mencapai batas CPU, throttling dapat terjadi yang akan berdampak negatif pada distribusi konfigurasi. Jika Anda mengalami masalah performa, sebaiknya upgrade ke Anthos Service Mesh versi terbaru, karena setiap versi memiliki pengoptimalan performa.

Beban tidak seimbang

Perubahan besar pada ukuran cluster dapat menyebabkan beban yang tidak seimbang untuk sementara karena koneksi berlangsung lama. Hal ini dimitigasi oleh usia koneksi maksimum selama 30 menit, yang dapat mengakibatkan pesan error di Envoy, seperti gRPC config stream closed: 13, yang memungkinkan beban kembali seimbang secara alami.

Kurangi masalah ini dengan memiliki beberapa replika Istiod (defaultnya adalah 2 replika), dan lakukan prapenskalaan jika Anda mengharapkan peningkatan skala cluster yang ekstrem.