Saat Anda mendengar istilah "ketersediaan tinggi", Anda mungkin memikirkan lingkungan yang besar dan kompleks dengan teknologi misterius yang berada di luar jangkauan rata-rata sysadmin. Tetapi HA dasar tidak harus rumit:dalam seri ini, Anda akan belajar tentang mengimplementasikan layanan dasar yang sangat tersedia menggunakan Keepalived
. Saya akan membawa Anda melalui situasi failover sederhana, serta konfigurasi yang lebih kompleks yang digunakan untuk menanggapi peristiwa eksternal dan memicu failover. Pertama, kita akan mulai dengan dasar-dasar Keepalived
dan Virtual Router Redundancy Protocol
(VRRP).
Artikel ini adalah yang pertama dari rangkaian tiga artikel yang membahas semuanya, mulai dari penyiapan dasar hingga konsep HA Linux tingkat lanjut.
Keepalived dan Dasar-dasar VRRP
Simbol jaringan dalam diagram tersedia melalui Ekstensi Peralatan Jaringan VRT, CC BY-SA 3.0.
Jika Anda telah membaca beberapa artikel Aktifkan jaringan Sysadmin, maka Anda tahu bahwa semua sysadmin dapat memperoleh manfaat dari pemahaman yang kuat tentang dasar-dasar jaringan. Pengetahuan tentang Keepalived
tidak berbeda. Protokol yang mendukung failover HA adalah Virtual Router Redundancy Protocol
(VRRP), dan Keepalived
menyediakan implementasi versi 2 dan versi 3 dari protokol ini.
Mungkin terdengar aneh bahwa kami menggunakan protokol yang dibuat untuk router di server kami. Ternyata teknologi jaringan yang sama yang digunakan untuk menyediakan redundansi ke peralatan jaringan juga dapat menyediakan redundansi di lingkungan server. Router sering digunakan berpasangan, di mana satu router aktif dan yang lain standby, siap digunakan jika router aktif gagal. Konsep yang sama ini dapat diterapkan ke server.
VRRP
menggunakan konsep alamat IP virtual (VIP). Satu atau lebih host (router, server, dll.) berpartisipasi dalam pemilihan untuk menentukan host yang akan mengontrol VIP tersebut. Hanya satu host (master) yang mengontrol VIP pada satu waktu. Jika master gagal, VRRP
menyediakan mekanisme untuk mendeteksi kegagalan itu dan dengan cepat gagal ke host siaga. Dalam topologi di atas, server1 adalah master dan bertanggung jawab atas alamat IP 192.168.122.200. Jika server1 gagal, maka server2 mengambil alih IP ini.
Perlu diketahui juga bahwa Keepalived
menyediakan lebih dari sekedar VRRP
penerapan. Keepalived
juga memiliki kemampuan untuk mengkonfigurasi Linux IP Virtual Server untuk load balancing. Mengonfigurasi IPVS berada di luar cakupan seri ini, tetapi sebaiknya Anda mengetahui bahwa Anda dapat menggunakan Keepalived
untuk mengonfigurasi penyeimbang beban redundan all-in-one untuk lingkungan Anda.
Operasi Protokol VRRP
VRRP
perilaku ditentukan oleh RFC 3768 (versi 2) dan RFC 5798 (versi 3). Saya akan menggunakan versi 2 dalam rangkaian artikel ini. Meskipun meninjau RFC adalah cara terbaik untuk memahami sepenuhnya perilaku protokol, Anda tidak perlu menjadi ahli untuk mulai menggunakan Keepalived
implementasi di lingkungan Anda. Namun, pengetahuan dasar tentang VRRP
Perilaku ini akan menempatkan Anda dengan lebih baik untuk mengoperasikan dan memecahkan masalah di lingkungan Anda.
Langkah pertama dalam VRRP
Operasinya adalah pemilihan master untuk menentukan server (atau router, dalam spesifikasi protokol) mana yang akan menyimpan alamat IP bersama. VRRP
server dikonfigurasi dengan nilai prioritas, yang dapat dianggap seperti bobot. Server dengan prioritas tertinggi akan menjadi pemilik VRRP
alamat. Spesifikasi menunjukkan bahwa prioritas master harus 255
, dengan server cadangan apa pun yang memiliki nilai lebih rendah dari 255
. Dalam praktiknya, prioritas 255
tidak sepenuhnya diperlukan karena protokol akan memilih server dengan prioritas tertinggi, meskipun bukan 255.
Setelah master dibuat, semua server lain mendengarkan pesan berkala yang dikirim oleh master untuk menunjukkan bahwa itu masih hidup. Master mengirimkan iklan ini secara berkala. Selama master masih hidup, itu akan melayani lalu lintas untuk VIP dan mengirim iklan. Jika master offline karena suatu alasan, maka server cadangan dengan prioritas tertinggi akan mengambil alih. Demikian pula, fitur yang disebut preemption dapat memungkinkan server mana pun yang memiliki prioritas lebih tinggi untuk menjadi master secara otomatis saat online.
Ketika master pertama kali online dan mengambil alih alamat IP, ia menyiarkan ARP gratis. Pesan ini menginformasikan server lain di jaringan alamat MAC yang terkait dengan VIP sehingga mereka dapat mengatasi lalu lintas mereka dengan benar di Layer 2. Ini juga membuat failover VIP lebih cepat:host tidak perlu menunggu penghitung waktu ARP mereka kedaluwarsa dan dapat cukup perbarui tabel ARP mereka dengan alamat MAC yang benar untuk host yang memiliki VIP.
Format paket
Menggali aspek teoretis dari operasi protokol mungkin agak membosankan, tetapi sangat penting untuk memahami bagaimana suatu teknologi beroperasi (dan untuk memecahkan masalah ketika rusak). Jika Anda melihat struktur paket dari sebuah VRRP
iklan menggunakan Wireshark, beberapa hal menjadi lebih jelas.
Pertama, Anda akan melihat bahwa alamat tujuan Ethernet dan IP adalah multicast
alamat. Lalu lintas multicast, seperti namanya, dikirim ke beberapa host di jaringan yang "mendengarkan" alamat multicast itu. Sebagian besar jaringan menghindari konfigurasi multicast yang rumit, sehingga lalu lintas multicast untuk VRRP
akan menjadi lalu lintas siaran di segmen jaringan lokal dan akan menuju ke semua host.
Anda juga dapat melihat bahwa VRRP
bukan TCP atau UDP. VRRP
menggunakan protokol IP nomor 112 untuk operasinya. Mengetahui nomor protokol ini bisa menjadi penting, karena Anda mungkin perlu mengonfigurasi firewall host Anda untuk mengizinkan lalu lintas ini dari VRRP
server di lingkungan Anda.
Setelah Anda mulai melihat VRRP
bagian dari paket, Anda akan melihat bahwa itu berisi semua informasi yang diperlukan untuk memilih master dan menginformasikan server lain dari master saat ini:
- Virtual Router ID (VRID) adalah pengidentifikasi unik untuk
VRRP
instance dan alamat IP-nya (bisa lebih dari satu) di jaringan. Anda harus menghindari penggunaan kembali VRID pada LAN yang sama, tetapi VRID dapat digunakan kembali dengan aman pada jaringan Layer 2 yang berbeda. - Prioritas adalah prioritas host yang mengirimkan iklan. Setelah master terpilih, ini adalah apa pun prioritas master yang ditentukan. Kepatuhan yang ketat terhadap spesifikasi harus menggunakan
255
untuk prioritas master, tetapi banyak konfigurasi memilih nilai yang berbeda. - Jenis Otentikasi dan String Otentikasi berisi kata sandi teks sederhana untuk mengotentikasi anggota
VRRP
berkelompok satu sama lain. - Interval Iklan menunjukkan seberapa sering iklan akan dikirim oleh master. Dalam hal ini, master akan mengirimkan iklan setiap detik.
- Alamat IP berisi satu atau lebih alamat IP yang menjadi tanggung jawab master. Meskipun seri ini hanya akan mencakup failover dari satu alamat IP, dimungkinkan untuk memiliki
VRRP
kelola banyak IP.
Kesimpulan
Artikel ini memandu Anda melalui protokol dasar yang mendukung Keepalived
, implementasi perangkat lunak VRRP
di Linux. Meskipun meninjau spesifikasi protokol mungkin tampak membosankan, penting untuk memahami protokol jaringan yang beroperasi di lingkungan Anda sehingga Anda dapat mengonfigurasi dan memecahkan masalah secara efektif. Pada artikel berikutnya, Anda akan mempelajari cara menginstal dan mengonfigurasi Keepalived
.
[ Perlu mempelajari lebih lanjut tentang administrasi sistem Linux? Pertimbangkan untuk mengambil kursus administrasi sistem Red Hat. ]