Bagaimana Menerapkan Pemeriksaan Kesehatan yang Efektif di HAProxy

Bagaimana Menerapkan Pemeriksaan Kesehatan Yang Efektif Di Haproxy



Menyiapkan HAProxy untuk bertindak sebagai penyeimbang beban tidaklah lengkap jika Anda tidak mempertimbangkan pemeriksaan kesehatan server yang efektif. Menerapkan pemeriksaan kesehatan membantu meningkatkan keandalan dan ketersediaan aplikasi. HAProxy mendukung penerapan pemeriksaan kesehatan yang memeriksa server backend untuk memastikan kondisi kesehatannya layak untuk digunakan.

Hanya server yang lolos pemeriksaan kesehatan yang ditambahkan ke rotasi. Dengan begitu, server tidak akan dipilih untuk digunakan jika tidak lolos pemeriksaan kesehatan, sehingga meminimalkan kemungkinan downtime. Sepanjang postingan ini, kami akan menggali lebih dalam untuk memahami cara kerja pemeriksaan kesehatan di HAProxy dan apa yang diperlukan untuk menerapkan pemeriksaan kesehatan yang efektif. Mari kita mulai!

Apa Itu Pemeriksaan Kesehatan di HAProxy

Saat mengonfigurasi HAProxy, salah satu tugasnya adalah menentukan server backend mana yang akan digunakan untuk aplikasi Anda. Dengan begitu, lalu lintas akan didistribusikan ke server untuk menghindari kelebihan beban pada server mana pun. Namun, pemeriksaan kesehatan membantu memastikan bahwa server hanya dipilih untuk menangani lalu lintas jika baik-baik saja.







Pemeriksaan kesehatan dilakukan di setiap server, dan hanya server yang lolos yang ditambahkan ke rotasi untuk digunakan dalam penyeimbangan beban. Pemeriksaan kesehatan dilakukan dengan mengirimkan permintaan, seperti TCP atau HTTP, ke titik akhir yang telah ditentukan sebelumnya di server backend Anda. Hasil kesehatan yang dikirim kembali oleh server backend menentukan statusnya. Misalnya, status server bisa menunjukkan UP atau DOWN atau mengirimkan status oke 200 yang mengonfirmasi bahwa server sehat.



Dalam mengonfigurasi pemeriksaan kesehatan, pastikan Anda memiliki titik akhir yang telah ditentukan sebelumnya untuk digunakan dalam pemeriksaan kesehatan. Ada beberapa opsi berbeda yang dapat Anda gunakan untuk menyiapkan titik akhir Anda. Misalnya, Anda dapat mengembalikan kode status atau pesan bergantung pada status server. Semua pemeriksaan kesehatan ditentukan di bagian backend file konfigurasi HAProxy Anda. Buka file konfigurasi dan buat bagian frontend Anda.



$ sudo nano /etc/haproxy/haproxy.cfg

Berikut adalah contoh dasar bagian frontend yang mengikat port 80, menetapkan halaman statistik, dan menentukan backend default.





Langkah selanjutnya adalah membuat bagian backend. Berikut ini adalah contoh berbeda tentang cara menerapkan pemeriksaan kesehatan yang efektif di HAProxy.



Contoh 1: Menerapkan Pemeriksaan Kesehatan Aktif yang Efektif

Cara sederhana untuk menerapkan pemeriksaan kesehatan di HAProxy adalah dengan mengatur pemeriksaan kesehatan yang aktif. Dengan opsi ini, HAProxy akan mencoba terhubung dengan server. Jika tidak ada respons yang dikirim, server dianggap tidak sehat dan dikeluarkan dari rotasi. Cara default untuk menerapkan pemeriksaan kesehatan aktif adalah dengan menambahkan kata kunci “periksa” di setiap baris server agar HAProxy dapat memeriksa semuanya.

Meskipun contoh pertama ini berhasil, ini bukanlah cara terbaik untuk menerapkan pemeriksaan kondisi. Selain itu, ini menggunakan pengaturan default. Misalnya, interval antar pemeriksaan, yang ditandai sebagai antar, diatur ke dua detik. Musim gugur, jumlah pemeriksaan gagal yang diizinkan, ditetapkan menjadi tiga. Untuk menyesuaikan pengaturan ini, tentukan waktu antar yang diinginkan dan jumlah pemeriksaan seperti yang ditunjukkan dalam contoh berikut:

Contoh 2: Menerapkan Pemeriksaan Kesehatan HTTP

Dengan pemeriksaan kesehatan HTTP, HAProxy akan mengirimkan permintaan HTTP ke semua server dengan kata kunci “periksa”. Berdasarkan responnya, disimpulkan status server. Contoh respons server yang berhasil berada pada kisaran 2xx atau 3xx. Respon seperti 200 OK berarti server dalam keadaan baik.

Untuk contoh ini, tambahkan baris “option httpchk” di backend Anda.

Contoh 3: Bekerja dengan Permintaan GET

HAProxy mengirimkan permintaan GET ke jalur “/” saat membuat permintaan HTTP. Namun, jika titik akhir Anda dikonfigurasi di jalur lain, Anda dapat menentukan jalur URL seperti “/health”, dan HAProxy akan mengirimkan permintaan GET ke sana.

Berdasarkan titik akhir Anda, server akan menggunakan respons untuk menentukan status server. Berikut cara menerapkannya:

Contoh 4: Menentukan Jalur Permintaan GET dan Status Respons

Dengan titik akhir, Anda dapat menentukan respons sukses apa yang diharapkan dari permintaan GET titik akhir untuk menentukan status server. Untuk contoh ini, jalur permintaan GET kami adalah “/health”, dan kami mengharapkan status respons 200 untuk mengonfirmasi bahwa server dalam kondisi baik untuk menangani penyeimbangan beban dan tugas lainnya.

Setelah Anda memodifikasi file konfigurasi HAProxy, mulai ulang HAProxy agar perubahan diterapkan.

Itu dia! Anda menerapkan pemeriksaan kesehatan yang efektif pada HAProxy Anda. Anda dapat mengakses halaman statistik atau memeriksa file log dengan perintah berikut untuk mengonfirmasi bahwa pemeriksaan kesehatan berfungsi seperti yang diharapkan:

$ ekor -f /var/log/haproxy.log

Kesimpulan

Anda dapat menerapkan pemeriksaan kesehatan yang efektif di HAProxy dengan berbagai cara. Pemeriksaan kesehatan diterapkan di bagian backend file konfigurasi HAProxy, dan postingan ini telah memberikan contoh berbeda tentang cara melakukannya. Periksa metode ideal Anda dan terapkan pemeriksaan kesehatan yang efektif dengan nyaman di HAProxy.