Setelah menerapkan aplikasi di SAE, Anda dapat menggunakan pemeriksaan kesehatan untuk memantau kesehatan aplikasi dan layanan. Fitur ini membantu mengidentifikasi masalah saat terjadi pengecualian. SAE memungkinkan Anda mengonfigurasi pemeriksaan kesehatan saat membuat atau menerapkan aplikasi. Topik ini menjelaskan cara mengonfigurasi pemeriksaan kesehatan di konsol SAE.
Informasi latar belakang
Prinsip pemeriksaan kesehatan
Pemeriksaan kesehatan adalah proses di mana pemeriksaan kelangsungan hidup (liveness probe), pemeriksaan kesiapan (readiness probe), atau pemeriksaan startup (startup probe) secara berkala memeriksa instans aplikasi. Hasilnya dikirim ke konsol SAE, sehingga Anda dapat memantau kesehatan keseluruhan layanan dalam lingkungan kluster serta mengidentifikasi masalah.
SAE berbasis Kubernetes dan menyediakan tiga jenis pemeriksaan kesehatan berikut.
Pemeriksaan kelangsungan hidup instans aplikasi (Konfigurasi Liveness): Memeriksa apakah instans aplikasi berjalan dengan benar.
Berhasil: Instans aplikasi sehat. SAE tidak mengambil tindakan apa pun.
Gagal: Instans aplikasi tidak sehat. SAE me-restart instans aplikasi.
Pemeriksaan kesiapan layanan aplikasi (Konfigurasi Readiness): Memeriksa apakah layanan aplikasi siap menangani lalu lintas masuk.
Berhasil: Aplikasi siap. SAE mengalokasikan lalu lintas layanan ke aplikasi.
Gagal: Aplikasi belum siap. SAE tidak mengalokasikan lalu lintas layanan ke aplikasi.
Pemeriksaan startup aplikasi (Konfigurasi StartupProbe): Memeriksa apakah aplikasi berhasil dimulai.
Berhasil: Aplikasi berhasil dimulai. Jika Anda juga mengonfigurasi pemeriksaan kelangsungan hidup dan kesiapan, keduanya akan mulai berjalan setelah pemeriksaan startup berhasil.
Gagal: Aplikasi gagal dimulai. SAE secara otomatis me-restart instans tersebut.
Kriteria keberhasilan dan kegagalan
Berhasil: Pemeriksaan dianggap berhasil setelah jumlah pemeriksaan berturut-turut yang berhasil mencapai nilai Healthy Threshold yang ditentukan.
Gagal: Jika pemeriksaan kesehatan gagal, SAE terus melakukan pemeriksaan pada interval yang dikonfigurasi. Jika jumlah kegagalan berturut-turut mencapai nilai Unhealthy Threshold yang ditentukan, SAE mengambil tindakan. Untuk pemeriksaan kelangsungan hidup yang gagal, SAE me-restart instans tersebut. Untuk pemeriksaan kesiapan yang gagal, SAE menghentikan pengiriman lalu lintas ke instans tersebut.
Parameter pemeriksaan kesehatan
SAE menggunakan parameter berikut untuk memeriksa kesehatan instans aplikasi dan aplikasi.
Initial Delay
Waktu tunda dari saat aplikasi dimulai hingga pemeriksaan pertama dimulai. Nilai ini harus lebih lama daripada waktu startup normal aplikasi. Jika tidak, pemeriksaan kesehatan mungkin gagal selama penerapan atau waktu proses aplikasi, yang dapat menyebabkan restart berulang. Misalnya, jika aplikasi membutuhkan waktu 60 detik untuk memulai, atur initial delay menjadi 70 detik.
Timeout
Waktu tunggu untuk satu pemeriksaan, dalam satuan detik. Nilai default adalah 1. Misalnya, jika Anda mengatur timeout menjadi 10 detik, pemeriksaan dianggap gagal jika tidak mengembalikan tanggapan dalam waktu 10 detik. Jika parameter ini diatur ke 0 atau dibiarkan kosong, nilai default 1 detik akan digunakan.
Period
Interval antara pemeriksaan kesehatan, dalam satuan detik. Nilai default adalah 30. Misalnya, jika Anda mengatur periode menjadi 5 detik, pemeriksaan kesehatan dilakukan setiap 5 detik. Saat kontainer aplikasi pertama kali dimulai, SAE mungkin melakukan pemeriksaan kesiapan lebih sering daripada periode yang dikonfigurasi, sehingga instans dapat mulai memproses permintaan lebih cepat, meningkatkan kecepatan startup layanan dan pengalaman pengguna secara keseluruhan.
Titik akses
Buat aplikasi
Di halaman Daftar Aplikasi SAE, pilih wilayah tujuan dan namespace di bagian atas, lalu klik Create Application. Di halaman Application Basic Information, konfigurasikan parameter dan klik Next: Advanced Settings.
Ubah aplikasi yang sedang berjalan
PeringatanSetelah menerapkan ulang aplikasi, aplikasi akan direstart. Untuk mencegah gangguan bisnis atau kesalahan tak terduga, kami menyarankan agar Anda menerapkan aplikasi di luar jam sibuk.
Di halaman Daftar Aplikasi SAE, pilih wilayah tujuan dan namespace di bagian atas. Klik Application ID target untuk membuka halaman detail aplikasi.Di panel navigasi sebelah kiri, klik Basic Information. Di pojok kanan atas, klik Deploy Application.
Ubah aplikasi yang dihentikan
Di halaman Daftar Aplikasi SAE, pilih wilayah tujuan dan namespace di bagian atas. Klik Application ID target untuk membuka halaman detail aplikasi.Klik Basic Information, lalu klik Modify Application Configuration.
Perluas bagian Application Health Check Settings dan konfigurasikan parameter sesuai kebutuhan.
Panduan konfigurasi
Sesuai kebutuhan, aktifkan Application Instance Liveness Check (Liveness Configuration), Application Service Readiness Check (Readiness Configuration), atau Application Startup Probe (StartupProbe Configuration). Parameter konfigurasi sama untuk ketiga jenis pemeriksaan tersebut.
CatatanAnda dapat mengonfigurasi pemeriksaan kelangsungan hidup, kesiapan, dan startup secara terpisah atau dalam kombinasi. Kami menyarankan untuk mengonfigurasi ketiganya.
Jika Anda mengonfigurasi ketiga pemeriksaan kesehatan tersebut, pemeriksaan startup dijalankan terlebih dahulu. Setelah pemeriksaan startup berhasil, pemeriksaan kelangsungan hidup dan kesiapan mulai berjalan berdasarkan initial delay yang dikonfigurasi.
Pilih Check Method dari opsi berikut dan konfigurasikan parameternya.
HTTP Request Check: Mengirim permintaan HTTP ke instans untuk memeriksa kesehatannya. Jika kode status HTTP yang dikembalikan berada di antara 200 dan 399, instans dianggap sehat. Jika tidak, instans dianggap tidak sehat.
TCP Port Check: Membuat koneksi soket TCP dengan instans untuk memeriksa kesehatannya. Jika koneksi berhasil, instans dianggap sehat. Jika koneksi gagal, instans dianggap tidak sehat.
Execute Command Check: Menjalankan perintah pemeriksaan di dalam instans untuk memeriksa kesehatannya. Jika perintah mengembalikan kode status 0, instans dianggap sehat. Jika kode status bukan 0, instans dianggap tidak sehat.
Pemeriksaan permintaan HTTP
Item konfigurasi
Deskripsi
Path
Jalur yang diakses pada server HTTP.
Port
Port yang diakses pada server HTTP.
Advanced Settings
Perluas Advanced Settings dan pilih apakah akan memeriksa apakah string yang dikembalikan berisi kata kunci tertentu.
Protocol
Pilih HTTP atau HTTPS.
Initial Delay (seconds)
Waktu tunggu setelah aplikasi dimulai sebelum pemeriksaan pertama dimulai. Initial delay harus lebih lama daripada waktu startup normal aplikasi. Jika tidak, pemeriksaan kesehatan akan gagal selama penerapan atau waktu proses aplikasi, menyebabkan restart berulang. Misalnya, jika aplikasi membutuhkan waktu 60 detik untuk memulai, atur initial delay menjadi 70 detik.
Timeout (seconds)
Waktu tunggu untuk pemeriksaan. Satuannya adalah detik. Nilai default adalah 1 detik. Misalnya, jika Anda mengatur timeout menjadi 10 detik, pemeriksaan yang memakan waktu lebih dari 10 detik dianggap gagal, dan pengecualian timeout dilaporkan. Jika Anda mengatur parameter ini ke 0 atau membiarkannya kosong, timeout default 1 detik akan digunakan.
Period (seconds)
Interval untuk melakukan pemeriksaan kesehatan. Satuannya adalah detik. Nilai default adalah 30 detik. Misalnya, jika Anda mengatur periode menjadi 5 detik, pemeriksaan dilakukan setiap 5 detik. Saat kontainer aplikasi pertama kali dimulai, SAE mungkin menjalankan pemeriksaan kesiapan lebih sering daripada periode yang dikonfigurasi. Kebijakan ini memungkinkan instans mulai memproses permintaan sesegera mungkin, yang meningkatkan kecepatan startup dan pengalaman pengguna secara keseluruhan dari layanan tersebut.
Healthy Threshold (count)
Jumlah minimum keberhasilan berturut-turut agar pemeriksaan dianggap berhasil setelah sebelumnya gagal. Nilai ini harus diatur ke 1 untuk pemeriksaan kelangsungan hidup.
Unhealthy Threshold (count)
Jumlah kegagalan berturut-turut setelah itu pemeriksaan dianggap gagal.
Pemeriksaan port TCP
Item konfigurasi
Deskripsi
TCP Port
Port yang diakses untuk pemeriksaan TCP.
Initial Delay (seconds)
Waktu tunggu setelah aplikasi dimulai sebelum pemeriksaan pertama dimulai. Initial delay harus lebih lama daripada waktu startup normal aplikasi. Jika tidak, pemeriksaan kesehatan akan gagal selama penerapan atau waktu proses aplikasi, menyebabkan restart berulang. Misalnya, jika aplikasi membutuhkan waktu 60 detik untuk memulai, atur initial delay menjadi 70 detik.
Timeout (seconds)
Waktu tunggu untuk pemeriksaan. Satuannya adalah detik. Nilai default adalah 1 detik. Misalnya, jika Anda mengatur timeout menjadi 10 detik, pemeriksaan yang memakan waktu lebih dari 10 detik dianggap gagal, dan pengecualian timeout dilaporkan. Jika Anda mengatur parameter ini ke 0 atau membiarkannya kosong, timeout default 1 detik akan digunakan.
Period (seconds)
Interval untuk melakukan pemeriksaan kesehatan. Satuannya adalah detik. Nilai default adalah 30 detik. Misalnya, jika Anda mengatur periode menjadi 5 detik, pemeriksaan dilakukan setiap 5 detik. Saat kontainer aplikasi pertama kali dimulai, SAE mungkin menjalankan pemeriksaan kesiapan lebih sering daripada periode yang dikonfigurasi. Kebijakan ini memungkinkan instans mulai memproses permintaan sesegera mungkin, yang meningkatkan kecepatan startup dan pengalaman pengguna secara keseluruhan dari layanan tersebut.
Healthy Threshold (count)
Jumlah minimum keberhasilan berturut-turut agar pemeriksaan dianggap berhasil setelah sebelumnya gagal. Nilai ini harus diatur ke 1 untuk pemeriksaan kelangsungan hidup.
Unhealthy Threshold (count)
Jumlah kegagalan berturut-turut setelah itu pemeriksaan dianggap gagal.
Pemeriksaan eksekusi perintah
Item konfigurasi
Deskripsi
Initial Delay (seconds)
Waktu tunggu setelah aplikasi dimulai sebelum pemeriksaan pertama dimulai. Initial delay harus lebih lama daripada waktu startup normal aplikasi. Jika tidak, pemeriksaan kesehatan akan gagal selama penerapan atau waktu proses aplikasi, menyebabkan restart berulang. Misalnya, jika aplikasi membutuhkan waktu 60 detik untuk memulai, atur initial delay menjadi 70 detik.
Timeout (seconds)
Waktu tunggu untuk pemeriksaan. Satuannya adalah detik. Nilai default adalah 1 detik. Misalnya, jika Anda mengatur timeout menjadi 10 detik, pemeriksaan yang memakan waktu lebih dari 10 detik dianggap gagal, dan pengecualian timeout dilaporkan. Jika Anda mengatur parameter ini ke 0 atau membiarkannya kosong, timeout default 1 detik akan digunakan.
Period (seconds)
Interval untuk melakukan pemeriksaan kesehatan. Satuannya adalah detik. Nilai default adalah 30 detik. Misalnya, jika Anda mengatur periode menjadi 5 detik, pemeriksaan dilakukan setiap 5 detik. Saat kontainer aplikasi pertama kali dimulai, SAE mungkin menjalankan pemeriksaan kesiapan lebih sering daripada periode yang dikonfigurasi. Kebijakan ini memungkinkan instans mulai memproses permintaan sesegera mungkin, yang meningkatkan kecepatan startup dan pengalaman pengguna secara keseluruhan dari layanan tersebut.
Healthy Threshold (count)
Jumlah minimum keberhasilan berturut-turut agar pemeriksaan dianggap berhasil setelah sebelumnya gagal. Nilai ini harus diatur ke 1 untuk pemeriksaan kelangsungan hidup.
Unhealthy Threshold (count)
Jumlah kegagalan berturut-turut setelah itu pemeriksaan dianggap gagal.
Execute Command
Perintah pemeriksaan kesehatan yang dieksekusi di dalam instans aplikasi atau proses. Jika perintah mengembalikan 0, aplikasi dianggap sehat. Untuk informasi lebih lanjut tentang perintah pemeriksaan kesehatan, lihat Configure Probes dalam dokumentasi Kubernetes.
CatatanSAE menyediakan dua interpreter shell berbeda yang dapat Anda pilih:
>_ /bin/sh
>_ /bin/bash
Sebagai contoh, jika Anda mengatur perintah menjadi
cat /tmp/healthy, SAE secara berkala memeriksa apakah file/tmp/healthyada. Jika file tersebut ada, perintah mengembalikan 0, yang menunjukkan bahwa perintah berhasil.
Hasil autentikasi
Setelah mengonfigurasi pemeriksaan kesehatan, buka halaman Basic Information aplikasi target. Klik tab Instance List. Di area Default Group, Anda dapat melihat status berjalan instans. Arahkan kursor ke bendera di samping status untuk melihat detail konfigurasi pemeriksaan kesehatan.
Running Status | Deskripsi |
| Pemeriksaan kesehatan tidak dikonfigurasi untuk instans tersebut. Catatan
|
Pemeriksaan kesehatan kelangsungan hidup dan kesiapan gagal
| Pemeriksaan kesehatan gagal. Instans tidak sehat. Catatan Arahkan kursor ke status instans untuk melihat alasan kegagalannya. Anda juga dapat mengklik Troubleshooting Guide untuk langkah-langkah pemecahan masalah. |
Pemeriksaan kesehatan berhasil
| Pemeriksaan kesehatan berhasil. Instans sehat. |
Penyebab umum kegagalan pemeriksaan kesehatan
Initial delay terlalu singkat. Pemeriksaan kesehatan dimulai sebelum aplikasi menyelesaikan proses startup-nya. Tingkatkan waktu tunda dan coba lagi.
Konfigurasi pemeriksaan kesehatan salah. Verifikasi pengaturan port dan antarmuka.
Layanan mengalami beban berlebihan. Anda dapat memverifikasi hal ini dengan memeriksa data pemantauan aplikasi. Jika demikian, tambahkan jumlah instans, gunakan tipe instans yang lebih besar, atau kurangi pengaturan parameter heap JVM.
Aplikasi gagal dimulai. Untuk mendiagnosis hal ini, nonaktifkan pemeriksaan kesehatan terlebih dahulu. Jika aplikasi tetap gagal dimulai, Anda mungkin perlu mengoptimalkan kode aplikasi.




