Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Active/passive penyeimbang beban
Dalam pengaturan ini, Anda menjalankan HAProxy sebagai penyeimbang beban pada satu instance pada satu waktu. File konfigurasi HAProxy disimpan di DRBD-replicated penyimpanan sehingga ketika Pacemaker gagal ke instance siaga, konfigurasi segera tersedia.
penting
Selesaikan semua langkah Prasyarat dan pengaturan cluster sebelum melanjutkan.
Awas
Jalankan perintah berikut pada instance utama saja, kecuali dinyatakan lain.
Instal HAProxy di semua instance
Instal HAProxy dan nonaktifkan layanan sehingga Pacemaker dapat mengelolanya. Jalankan ini pada setiap contoh.
sudo apt install -y haproxy sudo systemctl disable haproxy sudo systemctl stop haproxy
Konfigurasikan mount DRBD untuk HAProxy
Pasang perangkat DRBD ke direktori untuk penyeimbang beban.
Buat direktori mount point. Jalankan ini pada setiap contoh.
sudo mkdir -p /drbd/loadbalancer/
Pasang perangkat DRBD pada instance utama. Pertama lepaskan titik pemasangan sebelumnya dari prasyarat.
sudo umount /greengrass/v2 sudo mount /dev/drbd0 /drbd/loadbalancer/
Verifikasi mount denganlsblk. Anda harus melihat drbd0 dipasang di/drbd/loadbalancer.
Konfigurasikan HAProxy
File konfigurasi harus berada di direktori mount DRBD sehingga direplikasi ke instance failover.
-
Salin konfigurasi HAProxy ke direktori mount DRBD.
sudo mkdir -p /drbd/loadbalancer/etc/haproxy/ sudo cp /etc/haproxy/haproxy.cfg /drbd/loadbalancer/etc/haproxy/haproxy.cfg -
Edit file unit systemd HAProxy untuk menggunakan konfigurasi dari jalur pemasangan DRBD. Jalankan ini pada setiap contoh.
sudo systemctl edit haproxyTambahkan baris berikut untuk memperbarui jalur file konfigurasi ke jalur pemasangan DRBD.
[Service] Environment="CONFIG=/drbd/loadbalancer/etc/haproxy/haproxy.cfg" -
Muat ulang systemd. Jalankan ini pada setiap contoh.
sudo systemctl daemon-reload
Lampirkan sumber daya DRBD
Lepaskan perangkat DRBD dan turunkan DRBD sehingga Pacemaker dapat mengelolanya. Jalankan unmount pada instance utama dan drbdadm down pada semua instance.
# On the primary instance only sudo umount /drbd/loadbalancer # On all instances sudo drbdadm down greengrass
sudo pcs resource create drbd-greengrass \ ocf:linbit:drbd drbd_resource=greengrass \ op monitor interval=15s role=Promoted \ op monitor interval=30s role=Unpromoted
sudo pcs resource promotable drbd-greengrass \ promoted-max=1 promoted-node-max=1 clone-max=2 clone-node-max=1 notify=true
Lampirkan sumber daya sistem file
sudo pcs resource create fs_loadbalancer Filesystem \ device="/dev/drbd0" \ directory="/drbd/loadbalancer" \ fstype="ext4" \ op start timeout=15s \ op stop timeout=15s \ --disabled
Lampirkan sumber daya systemd HAProxy
sudo pcs resource create haproxy systemd:haproxy \ op monitor interval=10s \ op start timeout=60s \ op stop timeout=60s \ --disabled
Buat kendala sumber daya
sudo pcs constraint colocation add haproxy with fs_loadbalancer sudo pcs constraint order fs_loadbalancer then start haproxy sudo pcs constraint colocation add fs_loadbalancer with Promoted drbd-greengrass-clone sudo pcs constraint order promote drbd-greengrass-clone then start fs_loadbalancer
Aktifkan sumber daya sekarang karena kendala sudah ada.
sudo pcs resource enable fs_loadbalancer sudo pcs resource enable haproxy
Nonaktifkan STONITH untuk pengaturan tutorial ini.
sudo pcs property set stonith-enabled=false
Awas
STONITH dinonaktifkan di sini untuk menyederhanakan tutorial ini. Dalam lingkungan produksi, Anda harus mengaktifkan STONITH dan mengonfigurasi agen pagar (misalnya, untuk instans Amazon fence_aws EC2) untuk mencegah kerusakan otak terbelah dan data.
Verifikasi failover
-
Periksa keadaan awal. Verifikasi bahwa HAProxy berjalan pada instance utama.
sudo pcs status -
Simulasikan failover. Letakkan simpul utama dalam mode siaga untuk memaksa semua sumber daya keluar dari simpul utama.
sudo pcs node standbyprimary-node-name -
Verifikasi failover. Pada contoh siaga, periksa status cluster. Sumber daya DRBD, sistem file, dan HAProxy sekarang harus berjalan pada instance siaga dengan file konfigurasi terbaru.
sudo pcs statusKetika instance yang gagal pulih, layanan penyeimbang beban tetap berada di instance siaga kecuali Anda mengonfigurasi Pacemaker untuk memigrasinya.
-
Bawa node kembali online.
sudo pcs node unstandbyprimary-node-name