Menyelesaikan masalah clock skew dengan menyinkronkan waktu antar node secara lokal di Cluster Proxmox VE

Table of contents

Jika cluster server Proxmox Anda tidak memiliki akses ke internet, Anda tetap bisa mengatasi masalah clock skew dengan menyinkronkan waktu antar node secara lokal. Dalam situasi ini, Anda dapat menjadikan salah satu node sebagai server NTP internal (time server) untuk seluruh cluster. Berikut adalah langkah-langkahnya:
1. Pilih Satu Node sebagai Master Time Server
Pilih salah satu node dalam cluster untuk bertindak sebagai sumber waktu utama (misalnya, node1). Node ini akan menjadi referensi waktu untuk node lainnya.
Pastikan node ini memiliki waktu yang akurat sebelum melanjutkan. Anda bisa mengatur waktu secara manual jika perlu:
date -s "23 MAR 2025 14:30:00"
(Sesuaikan dengan waktu saat ini di lokasi Anda, misalnya WIB - Asia/Jakarta).
2. Instal dan Konfigurasi Chrony di Master Node
Pastikan
chrony
sudah terinstal di node master:apt install chrony -y
Edit file konfigurasi
/etc/chrony/chrony.conf
di node master:nano /etc/chrony/chrony.conf
Tambahkan baris berikut untuk menjadikannya server waktu lokal tanpa bergantung pada internet:
# Izinkan node lain di jaringan lokal untuk menyinkronkan waktu allow 192.168.1.0/24 # Ganti dengan subnet jaringan Anda # Jadikan node ini sebagai sumber waktu lokal local stratum 10
allow
menentukan jaringan yang diizinkan untuk mengakses server NTP ini (sesuaikan dengan subnet Anda, misalnya 192.168.1.0/24).local stratum 10
memungkinkan node ini bertindak sebagai sumber waktu meskipun tidak tersinkronisasi dengan server NTP eksternal.
Simpan dan keluar.
Restart layanan Chrony:
systemctl restart chrony
3. Konfigurasi Node Lain (Slave Nodes)
Di setiap node lainnya (selain master), instal
chrony
:apt install chrony -y
Edit file
/etc/chrony/chrony.conf
di node-node ini:nano /etc/chrony/chrony.conf
Hapus server NTP default dan tambahkan baris berikut untuk menunjuk ke master node:
server 192.168.1.10 iburst # Ganti dengan IP master node
Simpan dan keluar.
Restart layanan Chrony di setiap node:
systemctl restart chrony
4. Verifikasi Sinkronisasi Waktu
Di master node, periksa apakah Chrony berjalan dengan benar:
chronyc tracking
Di node slave, periksa apakah mereka tersinkronisasi dengan master:
chronyc sources
Anda akan melihat IP master node muncul sebagai sumber waktu dengan tanda
^
.
5. Atur Zona Waktu
Pastikan semua node menggunakan zona waktu yang sama (misalnya Asia/Jakarta untuk WIB):
timedatectl set-timezone Asia/Jakarta
6. Sinkronkan Hardware Clock (Opsional)
Jika node master tidak memiliki akses ke sumber waktu eksternal, sinkronkan hardware clock dengan waktu sistem setelah Anda mengatur waktu secara manual:
hwclock --systohc
Lakukan ini hanya di master node untuk memastikan konsistensi.
7. Restart Layanan Cluster
Setelah waktu tersinkronisasi, restart layanan cluster di semua node:
systemctl restart pve-cluster systemctl restart corosync
8. Periksa Status Cluster
Jalankan perintah berikut di salah satu node untuk memastikan tidak ada lagi error clock skew:
pvecm status
Jika Anda menggunakan Ceph, periksa juga:
ceph -s
Catatan Penting
Akurasi Waktu: Karena tidak ada akses internet, waktu di master node akan bergantung pada pengaturan manual awal dan stabilitas hardware clock. Jika server Anda sering mati listrik atau hardware clock-nya tidak akurat, waktu bisa melenceng seiring waktu.
Jaringan: Pastikan port NTP (UDP 123) tidak diblokir oleh firewall internal di antara node. Anda bisa memeriksanya dengan:
ufw status
Jika aktif, izinkan port tersebut:
ufw allow 123/udp
Pemeliharaan: Periksa waktu secara berkala di master node dan sesuaikan manual jika perlu.
Dengan konfigurasi ini, cluster Proxmox Anda akan memiliki sinkronisasi waktu yang konsisten meskipun offline.
Subscribe to my newsletter
Read articles from Arif directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by
