Setelah node pertama terinisialisasi di episode 4, saatnya menambahkan node lain dengan microcloud join. Episode ini membedah skenario multi-node, mekanisme trust/join token antar member, serta cara memverifikasi seluruh anggota dengan lxc cluster list, microceph status, dan microovn status.

Cloud kalian sudah punya fondasi: microcloud init di episode 4 membentuk cluster dari node pertama. Tapi cloud sejati butuh lebih dari satu node — butuh anggota lain agar HA, replikasi, dan penjadwalan benar-benar bekerja. Di episode 5 kita menambahkan node dengan microcloud join, memahami mekanisme trust antar member, dan memverifikasi seluruh cluster.
Bayangkan init seperti mendirikan perusahaan: satu direktur (node pertama) membentuk badan hukumnya. Join seperti mengangkat partner — masing-masing membawa modal (disk OSD) dan aset (compute/network), dan semua tunduk pada aturan yang sama. Tanpa anggota cukup (minimal 3 node), keputusan bersama — quorum — tidak bisa tercapai.
Di node-b dan node-c, jalankan perintah yang sama:
sudo microcloud joinJoin harus berjalan bersamaan dengan sesi init yang sedang menunggu di node pertama (ingat prompt "Waiting for other nodes to join" dari episode 4). MicroCloud di node yang join akan memindai jaringan, menemukan node yang sedang inisialisasi, dan menawarkan diri sebagai member.
> Scanning for servers on the network...
Found: node-a (192.168.1.10) initializing a cluster
Join this cluster? (yes/no) [default=yes]Setelah setuju, MicroCloud di node baru akan bertanya pilihan storage dan network yang sama seperti saat init — pilih disk kosong yang dikhususkan untuk node tersebut, dan antarmuka underlay yang benar. Pada akhirnya, di node pertama, kalian akan melihat daftar peer yang meminta join dan diminta menyetujui mereka (atau sudah dipercaya otomatis lewat proactive trust di versi 2.1+).
Proses multi-node yang ideal:
microcloud init di node-a — pilih storage/network, tunggu peer.microcloud join di node-b — pilih storage/network, setuju join.microcloud join di node-c — hal yang sama.node-a, konfirmasi semua peer — cluster selesai terbentuk.node-a [initializer] ──┐
node-b [join] ─────────┼──► LXD cluster (3 member)
node-c [join] ─────────┘ + Ceph OSD 3x + OVNSetiap node LXD punya certificate sendiri. Saat join, node baru mengirim certificate-nya ke cluster; cluster baru "memercayai" node tersebut setelah:
Di balik layar, proses ini menghasilkan join token — token sekali pakai yang menghubungkan certificate node baru dengan cluster LXD. Ini mirip handshake SSH: node baru harus membuktikan identitasnya, dan cluster memastikan hanya node yang diundang yang bergabung.
Secara default, MicroCloud menemukan node lewat mDNS di jaringan lokal. Untuk node yang berada di jaringan berbeda (misal site edge yang terpisah), MicroCloud mendukung remote peer — kalian bisa menambahkan alamat peer manual sehingga node tidak perlu berada di subnet yang sama. Ini penting untuk desain cluster lintas lokasi (episode 14).
lxc cluster listOutput menampilkan setiap member, alamatnya, perannya (role), dan status. Dalam cluster 3 node, salah satu member menjadi leader (role database-leader) yang memegang database konsisten cluster.
microceph statusPastikan seluruh OSD tampil HEALTH_OK atau setidaknya tidak ada OSD down. Jika OSD dari node yang baru join belum muncul, periksa bahwa disk kosong sudah dipilih saat join.
microovn statusOutput menampilkan cluster OVN, anggota, dan antarmuka underlay yang dipakai. Semua node harus terdaftar di sini.
microcloud statusPerintah ini menggabungkan pandangan LXD, Ceph, dan OVN dalam satu tampilan — mulai sekarang ini adalah "dashboard" pertama kalian (kita tingkatkan dengan Cluster Manager dan Grafana di episode 12 dan 20).
Join tidak harus terjadi bersamaan dengan init. Cluster yang sudah berjalan bisa menerima node baru kapan saja:
sudo microcloud joinNode baru akan menemukan cluster yang sudah jadi dan bergabung sebagai member tambahan. Inilah fondasi scaling yang kita bahas lengkap di episode 11.
Jika satu node gagal bergabung (misal disk tidak kosong atau network salah), cluster tetap terbentuk dari node yang sukses. Kalian bisa mencoba lagi join node tersebut, atau menghapusnya dari daftar peer di node pertama.
Warning
Jangan menjalankan microcloud join dua kali sekaligus di node yang sama, dan pastikan join selesai (tidak di-ctrl-C) sampai prompt verifikasi muncul. Join yang terputus di tengah jalan bisa meninggalkan certificate menggantung di cluster.
lxc cluster list: periksa log snap logs microcloud di node yang join (episode 16).Inti yang harus dibawa pulang:
microcloud join di node lain menggabungkan mereka ke cluster yang diinisialisasi.lxc cluster list, microceph status, microovn status, dan microcloud status.Di episode 6 selanjutnya kita akan membedah storage: MicroCeph — bagaimana OSD terbentuk dari disk kosong, pool RBD untuk block instance, CephFS untuk file, dan RGW untuk S3 object, replikasi untuk HA, microceph disk add, placement group, serta enkripsi disk opsional. Ini jantung data cloud kalian.