Pengelompokan dalam Proxmox VE



Dalam artikel sebelumnya, kami mulai berbicara tentang apa itu Proxmox VE dan bagaimana cara kerjanya. Hari ini kita akan berbicara tentang bagaimana Anda dapat menggunakan fitur pengelompokan dan menunjukkan keuntungan apa yang diberikannya.

Apa itu cluster dan mengapa dibutuhkan? Cluster (dari bahasa Inggris cluster) adalah sekelompok server yang terhubung oleh saluran komunikasi berkecepatan tinggi, bekerja dan mewakili pengguna secara keseluruhan. Ada beberapa skenario dasar untuk menggunakan cluster:

  • Memberikan toleransi kesalahan (Ketersediaan tinggi).
  • Load balancing (Load Balancing).
  • Peningkatan Produktivitas (Kinerja Tinggi).
  • Melakukan Komputasi Terdistribusi

Setiap skenario menyajikan persyaratannya sendiri untuk komponen cluster. Misalnya, untuk cluster yang melakukan komputasi terdistribusi, persyaratan utama adalah kecepatan tinggi operasi floating point dan latensi rendah dari jaringan. Cluster seperti ini sering digunakan untuk tujuan penelitian.

Karena kami menyentuh pada topik komputasi terdistribusi, saya ingin mencatat bahwa masih ada yang namanya sistem grid(dari bahasa Inggris. grid - lattice, network). Meskipun memiliki kesamaan umum, jangan membingungkan sistem grid dan cluster. Grid bukan cluster dalam arti biasa. Berbeda dengan cluster, node yang termasuk dalam grid paling sering heterogen dan ditandai oleh ketersediaan rendah. Pendekatan ini menyederhanakan solusi masalah komputasi terdistribusi, tetapi tidak memungkinkan membuat keseluruhan tunggal dari node.
Contoh mencolok dari sistem grid adalah platform komputasi populer BOINC (Berkeley Open Infrastructure for Network Computing). Platform ini awalnya dibuat untuk proyek SETI @ home (Mencari Intelijen Ekstra-Terestrial di Rumah), yang membahas masalah pencarian intelijen luar angkasa dengan menganalisis sinyal radio.
Bagaimana itu bekerja
, , , - ( SETI@home ). SETI. , .

Sekarang kami memiliki pemahaman yang jelas tentang apa itu cluster, kami sarankan untuk mempertimbangkan bagaimana cluster dapat dibuat dan digunakan. Kami akan menggunakan sistem virtualisasi open source Proxmox VE .

Sebelum mulai membuat kluster, penting untuk memahami dengan jelas batasan dan persyaratan sistem Proxmox, yaitu:

  • jumlah maksimum node dalam sebuah cluster adalah 32 ;
  • semua node harus memiliki versi Proxmox yang sama (ada pengecualian, tetapi tidak direkomendasikan untuk produksi);
  • jika di masa depan direncanakan untuk menggunakan fungsionalitas Ketersediaan Tinggi, maka cluster harus memiliki minimal 3 node ;
  • agar node saling berkomunikasi, port UDP / 5404 , UDP / 5405 untuk corosync dan TCP / 22 untuk SSH harus terbuka ;
  • penundaan jaringan antara node tidak boleh lebih dari 2 ms .

Penciptaan Cluster


Penting! Konfigurasi di bawah ini adalah tes. Pastikan untuk memeriksa dokumentasi Proxmox VE resmi .

Untuk memulai test cluster, kami mengambil tiga server dengan Proxmox hypervisor terinstal dari konfigurasi yang sama (2 core, 2 GB RAM).
Jika Anda ingin tahu cara menginstal Proxmox, kami sarankan Anda membaca artikel kami sebelumnya - Keajaiban Virtualisasi: Kursus Pengantar di Proxmox VE .
Awalnya, setelah menginstal OS, server tunggal berjalan dalam mode Standalone .


Buat sebuah cluster dengan mengklik tombol Create Cluster di bagian yang sesuai.


Kami menamai cluster masa depan dan memilih koneksi jaringan yang aktif.


Klik tombol Buat. Server akan menghasilkan kunci 2048-bit dan menulisnya bersama-sama dengan parameter cluster baru ke file konfigurasi.


Prasasti TUGAS OK menunjukkan operasi yang berhasil. Sekarang, melihat informasi umum tentang sistem, jelas bahwa server telah beralih ke mode cluster. Sejauh ini, cluster hanya terdiri dari satu node, yaitu, sementara itu tidak memiliki kemampuan yang dibutuhkan cluster.


Bergabung dengan sebuah cluster


Sebelum menghubungkan ke cluster yang dibuat, kita perlu mendapatkan informasi untuk menyelesaikan koneksi. Untuk melakukan ini, buka bagian Cluster dan klik tombol Join Information .


Di jendela yang terbuka, kami tertarik pada isi bidang dengan nama yang sama. Itu harus disalin.


Semua parameter koneksi yang diperlukan dikodekan di sini: alamat server untuk koneksi dan sidik jari. Kami meneruskan ke server yang perlu dimasukkan dalam sebuah cluster. Klik tombol Join Cluster dan di jendela yang terbuka, rekatkan konten yang disalin.


Bidang Peer Address dan Fingerprint akan diisi secara otomatis. Masukkan kata sandi root dari simpul nomor 1, pilih koneksi jaringan dan klik tombol Gabung .


Saat Anda bergabung dengan sebuah cluster, halaman web GUI mungkin berhenti memperbarui. Ini normal, cukup muat ulang halaman. Dengan cara yang persis sama kami menambahkan satu simpul lagi dan sebagai hasilnya kami menerima gugusan penuh dari 3 simpul yang bekerja.


Sekarang kita dapat mengontrol semua node cluster dari satu GUI.


Organisasi Ketersediaan Tinggi


Proxmox mendukung fungsi organisasi HA untuk mesin virtual dan wadah LXC. Utilitas ha-manager mendeteksi dan memproses kesalahan dan kegagalan dengan melakukan failover dari node yang gagal ke node yang berfungsi. Agar mekanisme berfungsi dengan benar, perlu bahwa mesin dan wadah virtual memiliki penyimpanan file yang sama.

Setelah fungsi Ketersediaan Tinggi diaktifkan, tumpukan perangkat lunak ha-manager akan mulai memantau status mesin atau wadah virtual secara terus-menerus dan berinteraksi secara asinkron dengan node-node lain dalam cluster.

Lampirkan penyimpanan bersama


Misalnya, kami menggunakan penyimpanan file NFS kecil di 192.168.88.18. Agar semua node dari cluster dapat menggunakannya, Anda perlu melakukan manipulasi berikut.

Kami memilih di menu antarmuka web Datacenter - Storage - Add - NFS .


Isi kolom ID dan Server . Dalam daftar turun bawah Ekspor , pilih direktori yang diinginkan dari yang tersedia dan dalam daftar Konten , tipe data yang diperlukan. Setelah mengklik tombol Add , penyimpanan akan terhubung ke semua node cluster.


Saat membuat mesin virtual dan wadah di salah satu node, kami menentukan penyimpanan kami sebagai penyimpanan.

Kustomisasi HA


Misalnya, buat wadah dengan Ubuntu 18.04 dan konfigurasikan Ketersediaan Tinggi untuknya. Setelah membuat dan meluncurkan wadah, pergi ke bagian Datacenter - HA - Tambahkan . Di bidang yang terbuka, tentukan ID mesin virtual / wadah dan jumlah upaya maksimum untuk memulai kembali dan berpindah antar node.
Jika jumlah ini terlampaui, hypervisor akan menandai VM sebagai gagal dan akan mentransfernya ke status Kesalahan, setelah itu akan berhenti melakukan tindakan apa pun dengannya.

Setelah mengklik tombol Add , utilitas ha-manager akan memberi tahu semua node cluster bahwa VM dengan ID yang ditentukan sekarang sedang dipantau dan jika jatuh, itu harus dimulai kembali pada node lain.


Buat crash


Untuk melihat bagaimana mekanisme switching bekerja, mari kita bayar catu daya node1 yang tidak normal. Kami melihat dari node lain apa yang terjadi pada cluster. Kami melihat bahwa sistem mencatat kegagalan.

Pengoperasian mekanisme HA tidak berarti kelanjutan operasi VM. Segera setelah simpul "jatuh", operasi VM dihentikan sementara sampai restart otomatis pada simpul lain.
Dan di sini "sihir" dimulai - cluster secara otomatis menugaskan kembali node untuk menjalankan VM kami dan dalam 120 detik pekerjaan itu secara otomatis dikembalikan.


Kami memadamkan node2 pada nutrisi. Mari kita lihat apakah cluster dapat bertahan dan VM akan kembali ke kondisi kerja secara otomatis.


Sayangnya, seperti yang kita lihat, kami memiliki masalah dengan fakta bahwa satu-satunya simpul yang bertahan tidak memiliki kuorum lagi, yang secara otomatis menonaktifkan HA. Kami memberikan perintah untuk memaksa pemasangan kuorum di konsol.

pvecm expected 1


Setelah 2 menit, mekanisme HA bekerja dengan benar dan tidak menemukan node2, meluncurkan VM kami pada node3.


Segera setelah kami mengaktifkan simpul1 dan simpul2 kembali, gugus dipulihkan sepenuhnya. Perhatikan bahwa VM tidak bermigrasi kembali ke node1, tetapi ini dapat dilakukan secara manual.

Untuk meringkas


Kami memberi tahu Anda tentang bagaimana mekanisme pengelompokan dalam Proxmox bekerja, dan juga menunjukkan bagaimana HA dikonfigurasi untuk mesin dan wadah virtual. Penggunaan clustering dan HA yang tepat sangat meningkatkan keandalan infrastruktur, dan juga menyediakan pemulihan bencana.

Sebelum membuat sebuah cluster, Anda perlu segera merencanakan untuk tujuan apa itu akan digunakan dan berapa banyak yang perlu ditingkatkan di masa depan. Anda juga perlu memeriksa infrastruktur jaringan untuk ketersediaan dengan penundaan minimal sehingga cluster masa depan bekerja tanpa kegagalan.

Beri tahu kami - apakah Anda menggunakan kemampuan pengelompokan di Proxmox? Sampai jumpa di komentar.

Artikel sebelumnya tentang hypervisor Proxmox VE:


All Articles