

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Active/passive penyeimbang beban
<a name="pacemaker-tutorial-setup2"></a>

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](pacemaker-tutorial-prerequisites.md) sebelum melanjutkan.

**Awas**  
Jalankan perintah berikut pada instance utama saja, kecuali dinyatakan lain.

## Instal HAProxy di semua instance
<a name="pacemaker-tutorial-setup2-install-haproxy"></a>

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
<a name="pacemaker-tutorial-setup2-drbd-mount"></a>

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 dengan`lsblk`. Anda harus melihat `drbd0` dipasang di`/drbd/loadbalancer`.

## Konfigurasikan HAProxy
<a name="pacemaker-tutorial-setup2-configure-haproxy"></a>

File konfigurasi harus berada di direktori mount DRBD sehingga direplikasi ke instance failover.

1. **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
   ```

1. **Edit file unit systemd HAProxy** untuk menggunakan konfigurasi dari jalur pemasangan DRBD. Jalankan ini pada setiap contoh.

   ```
   sudo systemctl edit haproxy
   ```

   Tambahkan baris berikut untuk memperbarui jalur file konfigurasi ke jalur pemasangan DRBD.

   ```
   [Service]
   Environment="CONFIG=/drbd/loadbalancer/etc/haproxy/haproxy.cfg"
   ```

1. **Muat ulang systemd.** Jalankan ini pada setiap contoh.

   ```
   sudo systemctl daemon-reload
   ```

## Lampirkan sumber daya DRBD
<a name="pacemaker-tutorial-setup2-drbd-resource"></a>

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
<a name="pacemaker-tutorial-setup2-fs-resource"></a>

```
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
<a name="pacemaker-tutorial-setup2-haproxy-resource"></a>

```
sudo pcs resource create haproxy systemd:haproxy \
  op monitor interval=10s \
  op start timeout=60s \
  op stop timeout=60s \
  --disabled
```

## Buat kendala sumber daya
<a name="pacemaker-tutorial-setup2-constraints"></a>

```
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
<a name="pacemaker-tutorial-setup2-failover"></a>

1. **Periksa keadaan awal.** Verifikasi bahwa HAProxy berjalan pada instance utama.

   ```
   sudo pcs status
   ```

1. **Simulasikan failover.** Letakkan simpul utama dalam mode siaga untuk memaksa semua sumber daya keluar dari simpul utama.

   ```
   sudo pcs node standby {{primary-node-name}}
   ```

1. **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 status
   ```

   Ketika instance yang gagal pulih, layanan penyeimbang beban tetap berada di instance siaga kecuali Anda mengonfigurasi Pacemaker untuk memigrasinya.

1. **Bawa node kembali online.**

   ```
   sudo pcs node unstandby {{primary-node-name}}
   ```