Menyelesaikan masalah batas resource di Anthos Service Mesh
Bagian ini menjelaskan masalah umum Anthos Service Mesh dan cara menyelesaikannya. Jika Anda memerlukan bantuan tambahan, lihat Mendapatkan dukungan.
Masalah batas resource Anthos Service Mesh dapat disebabkan oleh salah satu dari hal berikut:
- Objek
LimitRange
yang dibuat di namespaceistio-system
atau namespace apa pun dengan injeksi file bantuan otomatis diaktifkan. - Batas yang ditentukan pengguna yang ditetapkan terlalu rendah.
- Node kehabisan memori atau resource lainnya.
Gejala potensial masalah resource:
- Anthos Service Mesh berulang kali tidak menerima konfigurasi dari
istiod
yang ditunjukkan oleh error,Envoy proxy NOT ready
. Melihat error ini beberapa kali saat startup adalah hal normal, tetapi jika tidak, ini akan menjadi kekhawatiran. - Masalah jaringan dengan beberapa pod atau node yang tidak dapat dijangkau.
istioctl proxy-status
menampilkanSTALE
status dalam output.OOMKilled
pesan di log node.- Penggunaan memori oleh container:
kubectl top pod POD_NAME --containers
. - Penggunaan memori oleh pod di dalam node:
kubectl top node my-node
. - Envoy kehabisan memori:
kubectl get pods
menampilkan statusOOMKilled
di output.
Sidecar Istio memerlukan waktu lama untuk menerima konfigurasi
Penerapan konfigurasi yang lambat dapat terjadi karena resource yang dialokasikan tidak mencukupi
untuk istiod
atau ukuran cluster yang terlalu besar.
Ada beberapa kemungkinan solusi untuk masalah ini:
Jika alat pemantauan Anda (prometheus, stackdriver, dll.) menunjukkan pemanfaatan resource yang tinggi sebesar
istiod
, tingkatkan alokasi resource tersebut, misalnya, tingkatkan batas CPU atau memori deploymentistiod
. Ini adalah solusi sementara dan sebaiknya Anda menyelidiki metode untuk mengurangi penggunaan resource.Jika Anda mengalami masalah ini pada cluster/deployment besar, kurangi jumlah status konfigurasi yang dikirim ke setiap proxy dengan mengonfigurasi Resource file bantuan.
Jika masalah berlanjut, coba skalakan
istiod
secara horizontal.Jika semua langkah pemecahan masalah lainnya gagal menyelesaikan masalah, laporkan bug yang menjelaskan deployment Anda dan masalah yang diamati. Ikuti langkah-langkah ini untuk menyertakan profil CPU/Memori dalam laporan bug jika memungkinkan, beserta deskripsi mendetail tentang ukuran cluster, jumlah pod, jumlah layanan, dll.