Jika Anda memiliki banyak cluster Consul dengan datacenter yang berbeda, memantau health service di setiap cluster melalui WebUI Consul bisa memakan waktu.
Untuk efisiensi, Anda dapat membuat peering connection antar-cluster dan mengekspor service dari cluster lain agar semuanya dapat dimonitor melalui satu WebUI Consul.
1. Membuat Peering Token #
Generate token pada Consul server yang akan digunakan sebagai pusat monitoring.
consul peering generate-token -name nova-2
-name yang dapat di-resolve menjadi IP node client.
Simpan output token ini untuk digunakan pada node client.
2. Membuat Koneksi Peering Antar Cluster #
Pada node client, jalankan perintah berikut untuk membangun koneksi peering:
consul peering establish -name control-1 -peering-token [token]
Jika koneksi berhasil, status peer control-1 akan berubah menjadi active.
Contoh tampilan:
3. Mengekspor Service ke Cluster Lain #
Untuk mengekspor service dari node client, buat file konfigurasi peer.hcl berisi:
Kind = "exported-services"
Name = "default"
Services = [
{
# Nama dan namespace service yang akan diekspor
Name = "webserver"
Namespace = "default"
# Daftar peer cluster tujuan
Consumers = [
{
# Nama peer sesuai yang digunakan saat proses peering
Peer = "control-1"
}
]
}
]
Kemudian tulis konfigurasi ini ke dalam cluster:
consul config write peer.hcl
4. Verifikasi di WebUI #
Buka WebUI Consul pada node control-1, lalu cek bagian Services.
Service dari node client (nova-2) akan muncul dan dapat dipantau dari WebUI tersebut.