Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Konfigurasikan probe dan pemeriksaan kesehatan penyeimbang beban
Kubernetes menyediakan beberapa cara untuk melakukan pemeriksaan kesehatan aplikasi selain pemeriksaan kesehatan load balancer. Anda dapat menjalankan probe bawaan Kubernetes berikut bersama dengan pemeriksaan kesehatan load balancer sebagai perintah dalam konteks pod atau sebagai probe HTTP/TCP ke kubelet atau alamat IP host.
Probe keaktifan dan probe kesiapan harus berbeda dan independen (atau setidaknya dengan nilai batas waktu yang berbeda). Jika aplikasi memiliki masalah sementara, probe kesiapan akan menandai pod sebagai belum siap sampai masalah teratasi. Jika pengaturan probe livenss tidak benar, probe keaktifan mungkin menghentikan pod.
Probe startup
Gunakan probe startup untuk melindungi aplikasi yang memiliki siklus inisialisasi yang panjang. Sampai probe startup berhasil, probe lainnya dinonaktifkan.
Anda dapat menentukan waktu maksimum yang Kubernetes harus menunggu startup aplikasi. Jika, setelah waktu maksimum yang dikonfigurasi, pod masih gagal dalam probe startup, aplikasi dihentikan, dan pod baru dibuat.
Gunakan probe startup ketika waktu startup aplikasi tidak dapat diprediksi. Jika Anda tahu bahwa aplikasi Anda membutuhkan 10 detik untuk memulai, gunakan probe keaktifan atau probe kesiapan sebagai gantinya. initialDelaySeconds
Probe keaktifan
Gunakan probe liveness untuk mendeteksi masalah aplikasi atau apakah proses berjalan tanpa masalah. Probe keaktifan dapat mendeteksi kondisi kebuntuan di mana proses terus berjalan tetapi aplikasi menjadi tidak responsif. Saat menggunakan probe liveness, lakukan hal berikut:
-
Gunakan
initialDelaySeconds
untuk menunda probe pertama. -
Jangan mengatur spesifikasi yang sama untuk probe keaktifan dan kesiapan.
-
Jangan mengonfigurasi probe keaktifan agar bergantung pada faktor eksternal pod Anda (misalnya, database).
-
Atur probe keaktifan untuk yang spesifik
terminationGracePeriodSeconds
. Untuk informasi selengkapnya, lihat dokumentasi Kubernetes.
Probe kesiapan
Gunakan probe kesiapan untuk mendeteksi hal-hal berikut:
-
Apakah aplikasi siap menerima lalu lintas
-
Ketersediaan sebagian, di mana aplikasi mungkin sementara tidak tersedia tetapi diharapkan akan sehat kembali setelah operasi tertentu selesai
Probe kesiapan membantu memastikan bahwa konfigurasi dan dependensi aplikasi berjalan tanpa masalah atau kesalahan, sehingga aplikasi dapat melayani lalu lintas. Namun, probe kesiapan yang tidak dikonfigurasi dengan baik dapat menyebabkan pemadaman alih-alih mencegahnya. Probe kesiapan yang bergantung pada faktor eksternal, seperti konektivitas ke database, dapat menyebabkan semua pod gagal dalam probe. Kegagalan tersebut dapat mengakibatkan pemadaman, dan dapat menyebabkan kegagalan cascading dari layanan backend ke layanan lain yang menggunakan pod yang gagal.
Pemeriksaan kesehatan sumber daya masuk dan penyeimbang beban
Application Load Balancer dan Kubernetes menyediakan fitur pemeriksaan kesehataningress
. Untuk pemeriksaan kesehatan Application Load Balancer, tentukan port dan jalur target.
Catatan: Untuk Kubernetesingress
, akan ada latensi deregistrasi. Default untuk Application Load Balancer adalah 300 detik. Pertimbangkan untuk menyiapkan sumber daya masuk atau pemeriksaan kesehatan penyeimbang beban dengan menggunakan nilai yang sama dengan yang Anda gunakan untuk penyelidikan kesiapan Anda.
NGINX juga menyediakan pemeriksaan kesehatan. Untuk informasi selengkapnya, lihat dokumentasi NGINX
Gerbang masuk dan keluar Istio tidak memiliki mekanisme pemeriksaan kesehatan yang sebanding dengan pemeriksaan kesehatan HTTP dari NGINX. Namun, Anda dapat mencapai fungsionalitas serupa dengan menggunakan pemutus sirkuit Istio atau deteksi DestinationRule
outlier
Untuk informasi selengkapnya, lihat Praktik Terbaik EKS — Load Balancing (Ketersediaan dan Siklus Hidup Pod