Posted in

Install Keepalived on Ubuntu 24.04

Introduction

Keepalived adalah service yang memungkinkan bertindak sebagai failover. Misalkan saya mempunyai 3 server, kemudian saya harus menentukan 1 server sebagai master dan 2 server sebagai backup. Jika master fail, maka otomatis salah satu backup akan bertugas sebagai master. Jika master kembali hidup, maka master akan berubah lagi posisinya sebagai master. Untuk client komunikasi akan menggunakan virtual_ip yang nanti berada dimaster

Topology

Installation (On Master)

sudo apt update && sudo apt install keepalived -y

Buat file baru di /etc/keepalived/keepalived.conf

global_defs {
  router_id justname
}

vrrp_instance VIP {
    state MASTER #Become Master
    interface ens18 #Interface nodes
    priority 101  #Must higher priority for master
    virtual_router_id 51

    authentication {
        auth_type PASS
        auth_pass passkeepalived
    }

    unicast_src_ip 10.100.19.51 #IP Node1
    unicast_peer {
        10.100.19.52 #IP other nodes
        10.100.19.53 #IP other nodes
    }

    virtual_ipaddress {
        10.100.19.50 #IP Floating Keepalived
    }
}

Penjelasan (untuk referensi bisa lihat di https://keepalived.readthedocs.io/en/latest/configuration_synopsis.html)

router_idHanya nama, dan tidak harus sama semua
state MASTERBertindak sebagai master
priorityPrioritas yang akan promote sebagai master, semakin besar number semakin tinggi menjadi master
authenticationDisini kita akan memberikan simple auth agar vrrp_instance kita tidak bisa dipakai selain kita (walaupun jarang terjadi)
unicast_src_ipIP Address Node tersebut yang diinstall keepalived
unicast_peerIP Address Node yang akan kita kenalkan
virtual_ipaddressIP Address yang akan kita gunakan untuk komunikasi antar client

Setelah itu save file tersebut dan kemudian restart

sudo systemctl restart keepalived
sudo systemctl enable keepalived

Installation (On Backup)

sudo apt update && sudo apt install keepalived -y

Buat file baru di /etc/keepalived/keepalived.conf

global_defs {
  router_id justname
}

vrrp_instance VIP {
    state BACKUP
    interface ens18
    priority 100 #Must low than master
    virtual_router_id 51

    authentication {
        auth_type PASS
        auth_pass passkeepalived
    }

    unicast_src_ip 10.100.19.52 #IP Nodes Backup
    unicast_peer {
        10.100.19.51 #IP other nodes
        10.100.19.53 #IP other nodes
    }

    virtual_ipaddress {
        10.100.19.50 #IP Floating keepalived
    }
}

Perbedaanya dari yang master dan backup terletak pada

  • state
  • priority

Kemudian save dan restart service

sudo systemctl restart keepalived
sudo systemctl enable keepalived

Testing

Sekarang kita cek pada master dan backup

sudo systemctl status keepalived

Status sudah pada running dan bisa dilihat bahwa yang node1 menjadi master sedangkan node2 dan node3 menjadi backup

Leave a Reply

Your email address will not be published. Required fields are marked *