Menyiapkan server web memuat keseimbangan menggunakan 'pound' di rhel/centos
- 2877
- 922
- Dr. Travis Bahringer
POUND adalah program penyeimbang beban yang dikembangkan oleh perusahaan cetinya. Ini adalah alat proxy terbalik open source ringan yang dapat digunakan sebagai penyeimbang beban server web untuk mendistribusikan beban di antara beberapa server. Ada beberapa keuntungan yang diberikan Pound kepada pengguna akhir yang sangat nyaman dan melakukan pekerjaan dengan benar.
- Mendukung host virtual.
- Dapat dikonfigurasi.
- Ketika server backend gagal atau dipulihkan dari kegagalan, ia mendeteksinya secara otomatis dan mendasarkan keputusan penyeimbangan bebannya menurutnya.
- Itu menolak permintaan yang salah.
- Tidak ada browser atau server web tertentu.
Mari kita lihat bagaimana bisa menyelesaikan peretasan ini.
Pertama -tama Anda akan membutuhkan skenario untuk pemahaman yang lebih baik tentang menyelesaikan ini. Jadi saya akan menggunakan skenario di mana ada dua server web dan satu server gateway yang perlu menyeimbangkan permintaan datang ke server gateway ke server web.
Server Pound Gateway : 172.16.1.222 Server Web 01 : 172.16.1.204 Server Web 02 : 192.168.1.161Pound Web Server Load Balancer
Step1: Instal Pound Load Balancer di Gateway Server
1. Cara termudah untuk menginstal Pound Menggunakan paket RPM yang telah dikompilasi sebelumnya, Anda dapat menemukan RPM untuk distribusi berbasis RedHat di:
- http: // www.Invoca.ch/pub/paket/pound/
Atau, pound dapat dengan mudah dipasang dari repositori EPEL seperti yang ditunjukkan di bawah ini.
# yum instal epel-rilis # yum install pound
Setelah pound terpasang, Anda dapat memverifikasi apakah itu diinstal dengan mengeluarkan perintah ini.
# rpm -qa | pound grepPasang penyeimbang beban pound
2. Kedua, Anda perlu dua server web Untuk menyeimbangkan beban dan memastikan Anda memiliki pengidentifikasi yang jelas untuk menguji konfigurasi pound berfungsi dengan baik.
Di sini saya memiliki dua server yang memiliki alamat IP 172.16.1.204 Dan 192.168.1.161.
Untuk kemudahan penggunaan, saya telah membuat Python SimpleHttpserver untuk membuat server web instan di kedua server. Baca tentang Python SimpleHttpserver
Dalam skenario saya, saya punya WebServer01 berjalan terus 172.16.1.204 melalui port 8888 Dan WebServer02 berjalan terus 192.168.1.161 melalui port 5555.
Pound Webserver 1 Pound Webserver 2Langkah 2: Mengkonfigurasi penyeimbang beban pound
3. Sekarang saatnya membuat konfigurasi selesai. Setelah Anda menginstal Pound dengan sukses, itu membuat file konfigurasi pound /dll, yaitu pound.CFG
.
Kami harus mengedit detail server dan backend untuk menyeimbangkan beban di antara server web. Pergi ke /dll dan terbuka pound.CFG
file untuk pengeditan.
# vi /etc /pound.CFG
Buat perubahan seperti yang disarankan di bawah ini.
Dengarkan alamat 172.16.1.222 Alamat Port 80 End ListenHttps 172.16.1.222 Port 443 sertifikat "/etc/pki/tls/sertifikat/pound.alamat backend layanan akhir "PEM" 172.16.1.204 Pelabuhan 8888 Akhiri alamat backend 192.168.1.161 Pelabuhan 5555 Akhir akhir
Beginilah cara saya pound.CFG file terlihat seperti.
Konfigurasikan penyeimbang beban poundDi bawah "ListenHttp" Dan "ListenHttpsTag, Anda harus memasukkan alamat IP dari server yang telah Anda instal pound.
Secara default server menangani permintaan http meskipun port 80 dan permintaan https melalui port 443. Di bawah "MelayaniTag, Anda dapat menambahkan jumlah sub tag yang disebut "Backend". Tag backend memiliki alamat IP dan nomor port yang dijalankan oleh server web.
Sekarang simpan file setelah mengeditnya dengan benar dan restart POUND Layanan dengan menerbitkan salah satu perintah di bawah ini.
# /etc /init.D/Pound Restart atau # Service Pound Restart atau # Systemctl Restart Pound.melayaniMulai pound load balancer
4. Sekarang saatnya untuk memeriksa. Buka dua browser web untuk memeriksa apakah konfigurasi kami berfungsi dengan baik. Di bilah alamat, ketik POUND Alamat IP Gateway dan lihat apa yang muncul.
Permintaan pertama harus memuat yang pertama WebServer01 dan permintaan kedua dari browser web lainnya harus memuat yang kedua WebServer02.
Periksa Pound Load BalancingSelanjutnya, pikirkan skenario seperti jika Anda punya dua server web untuk memuat keseimbangan dan salah satu kinerja server bagus dan kinerja orang lain tidak begitu baik.
Jadi saat memuat keseimbangan di antara mereka, Anda harus mempertimbangkan server mana yang harus Anda taruh lebih banyak. Jelas untuk server dengan spesifikasi kinerja yang baik.
Untuk menyeimbangkan beban seperti itu, Anda hanya perlu menambahkan satu parameter di dalam pound.CFG
mengajukan. Mari kita lihat.
Pikirkan server 192.168.1.161: 5555 adalah server yang lebih baik. Maka Anda perlu menempatkan lebih banyak permintaan aliran ke server itu. Di bawah "BackendTag yang dikonfigurasi untuk 192.168.1.161 server, tambahkan parameter "Prioritas"Sebelum tag akhir.
Lihatlah contoh di bawah ini.
Prioritas penyeimbangan beban poundKisaran yang dapat kita gunakan untuk “Prioritas“Parameter ada di antara 1-9. Jika kami tidak mendefinisikannya, nilai default 5 akan ditugaskan.
Maka beban akan seimbang secara setara. Jika kita mendefinisikan nomor prioritas, POUND akan memuat server dengan nomor prioritas yang lebih tinggi lebih sering. Jadi dalam hal ini, 192.168.1.161: 5555 akan dimuat lebih sering daripada server 172.16.1.204: 8888.
Langkah 3: Merencanakan kerusakan darurat
Tag darurat: Tag ini digunakan untuk memuat server jika semua server ujung belakang sudah mati. Anda dapat menambahkannya sebelum tag akhir terakhir pound.CFG sebagai berikut.
“Alamat darurat 192.168.5.10 port 8080 end ”
6. Pound selalu melacak server backend mana yang hidup dan mana yang tidak. Kita dapat menentukan setelah berapa detik pound harus checkout server backend dengan menambahkan “Hidup”Parameter di pound.CFG.
Anda dapat menggunakan parameter sebagai “Hidup 30“Untuk mengaturnya 30 detik. Pound sementara akan menonaktifkan server backend yang tidak merespons. Ketika kami mengatakan tidak menanggapi server mungkin mati atau tidak dapat membuat koneksi pada saat itu.
Pound akan memeriksa server backend yang dinonaktifkan setelah setiap periode waktu yang Anda tentukan di pound.CFG file jika server dapat membuat koneksi, maka pound dapat kembali bekerja dengan server.
7. Pound daemon akan ditangani oleh poundctl memerintah. Dengan memiliki itu, kami tidak perlu mengedit pound.CFG file dan kami dapat mengeluarkan Listner Server, Backend server dan sesi dll. melalui satu perintah.
Sintaksis: poundctl -c/path/to/socket [-l/-l] [-s/-s] [-b/-b] [-n/-n] [-h] [-x]
- -C mendefinisikan jalur ke soket Anda.
- -L / -l mendefinisikan pendengar arsitektur Anda.
- -S / -S mendefinisikan layanan.
- -B / -B mendefinisikan server backend.
Melihat poundctl Halaman manusia untuk informasi lebih lanjut.
Semoga Anda menikmati peretasan ini dan menemukan lebih banyak opsi tentang ini. Jangan ragu untuk berkomentar di bawah ini untuk setiap saran dan ide. Tetap terhubung dengan tecmint untuk cara yang praktis dan terbaru.
Baca juga: Menginstal XR Crossroads Load Balancer untuk Server Web
- « Menyiapkan 'XR' (Crossroads) Load Balancer untuk Server Web di Rhel/Centos
- Cara menggunakan dan menjalankan kode PHP di baris perintah Linux - Bagian 1 »