CycleCloud: Konsep Inti
Pada yang paling mendasar, sistem Komputasi Performa Tinggi (HPC) adalah kumpulan sumber daya komputasi yang didukung oleh sistem file berkinerja dan dihubungkan oleh jaringan latensi rendah. Sumber daya komputasi ini biasanya dikelola oleh Penjadwal HPC, aplikasi perangkat lunak yang menjadwalkan pekerjaan.
Membangun sistem HPC individual di Azure dari unit infrastruktur dasar seperti Virtual Machines, Disk, dan Antarmuka Jaringan bisa rumit, terutama jika sumber daya ini sementara - hanya ada untuk waktu yang diperlukan untuk menyelesaikan tugas HPC di tangan. Selain itu, operator ingin membuat beberapa lingkungan HPC terpisah yang dapat disesuaikan dengan berbagai unit bisnis, tim peneliti, atau individu. Mengelola beberapa sistem HPC ini dapat menjadi kompleksitas operasional.
Apa itu CycleCloud?
Azure CycleCloud adalah alat yang membantu membangun sistem HPC di Azure. Ini mengatur sistem ini sehingga ukurannya secara elastis sesuai dengan tugas HPC yang ada, tanpa repot mengelola blok penyusun Azure dasar. CycleCloud dirancang oleh tim profesional HPC berpengalaman untuk administrator dan pengguna HPC, terutama pengguna yang ingin membangun sistem HPC di Azure yang menyerupai infrastruktur HPC internal yang mereka kenal.
Secara operasional, CycleCloud adalah server aplikasi yang diinstal di VM Linux di Azure, atau di server lokal yang memiliki akses ke API dan sumber daya Azure. CycleCloud memperoleh dan memprovisikan Azure VM untuk membangun kluster CycleCloud yang dapat mengintegrasikan penjadwal dan aplikasi pengguna. CycleCloud juga menyediakan integrasi penskalaan otomatis untuk sejumlah penjadwal HPC dan agen CycleCloud yang berjalan di Azure VM.
Server Aplikasi
Server aplikasi ini menyediakan:
- REST API untuk membuat dan mengelola sistem HPC di Azure.
- Antarmuka pengguna grafis yang memungkinkan pengguna untuk mengelola dan memantau sistem HPC.
- CLI yang memfasilitasi integrasi CycleCloud ke dalam alur kerja yang ada.
- Datastore NoSQL internal yang menyimpan cache status kluster dan node.
- Sistem alokasi dan orkestrasi yang memperoleh dan mengelola Azure VM
- Sistem pemantauan simpul untuk VM yang ada yang memperingatkan perubahan status.
Integrasi
CycleCloud juga menyediakan sejumlah integrasi ke penjadwal umum dan Azure VM. Thee menyediakan:
- Persiapan simpul dan sistem konfigurasi untuk mengonversi VM yang disediakan menjadi simpul HPC.
- Penskalaan otomatis untuk penjadwal HPC yang menerjemahkan persyaratan tugas penjadwal HPC ke dalam sumber daya Azure.
Apa yang dapat dilakukan CycleCloud
CycleCloud ditargetkan untuk operator HPC (administrator dan pengguna) yang menyebarkan sistem HPC di Azure dan yang ingin mereplikasi infrastruktur yang telah mereka jalankan secara internal, dari penjadwal HPC hingga titik pemasangan sistem file untuk penginstalan aplikasi dan akses data. Pengguna ini terutama melihat aplikasi pendukung, mesin alur kerja, dan alur komputasi tanpa harus mengubah proses internal mereka.
CycleCloud menyediakan sintaks templat yang kaya dan deklaratif yang memungkinkan pengguna untuk menggambarkan sistem HPC mereka, dari topologi kluster (jumlah dan jenis node kluster), hingga titik pemasangan dan aplikasi yang akan disebarkan pada setiap simpul. CycleCloud dirancang untuk bekerja dengan penjadwal HPC seperti PBSPro, Slurm, IBM LSF, Grid Engine, dan HT Condor, memungkinkan pengguna untuk membuat antrean yang berbeda di setiap penjadwal dan memetakannya ke simpul komputasi dengan ukuran VM yang berbeda di Azure. Selain itu, plugin skala otomatis terintegrasi dengan simpul kepala penjadwal yang mendengarkan antrean pekerjaan di setiap sistem, dan mengukur kluster komputasi yang sesuai dengan berinteraksi dengan REST API skala otomatis yang berjalan di server aplikasi.
Selain menyediakan dan membuat simpul HPC, CycleCloud juga menyediakan kerangka kerja untuk menyiapkan dan mengonfigurasi komputer virtual, pada dasarnya menyediakan sistem untuk mengonversi VM kosong menjadi komponen fungsional sistem HPC. Melalui kerangka kerja ini, pengguna dapat melakukan konfigurasi last-mile pada VM.
Selain itu, CycleCloud menyediakan fitur-fitur berikut:
Akses Pengguna
CycleCloud dilengkapi dengan dukungan bawaan untuk membuat akun pengguna lokal pada setiap simpul sistem HPC. Dengan sistem ini, akses pengguna dapat dikontrol melalui satu bidang manajemen tanpa menyebarkan layanan direktori.
Pemantauan
Metrik tingkat simpul dikumpulkan dan ditampilkan di antarmuka pengguna CycleCloud. Ini berguna untuk memantau beban pada sistem, dan dapat dikaitkan dengan layanan pelaporan dan peringatan.
Pengelogan
CycleCloud menyediakan sistem untuk aktivitas pengelogan dan peristiwa di tingkat server simpul dan aplikasi.
Portabilitas
Sistem tidak mengamanatkan bahwa gambar VM atau sistem operasi tertentu digunakan. CycleCloud mendukung sistem operasi Windows dan Linux utama pada simpul HPC. Selain itu, pengguna dapat membangun gambar VM mereka sendiri dan menggunakannya dalam sistem HPC mereka.
Infrastruktur sebagai kode
Karena semua yang dibuat di CycleCloud ditentukan dalam templat dan skrip konfigurasi, sistem HPC yang disebarkan melalui CycleCloud dapat diulang dan portabel. Ini memberikan konsistensi operator dalam menyebarkan sistem HPC di lingkungan yang berbeda: Sandbox, Pengembangan, Pengujian, dan Produksi. Operator juga dapat menyebarkan sistem HPC yang identik untuk grup bisnis atau tim yang berbeda untuk memisahkan masalah akuntansi.
Beban kerja yang digabungkan dengan longgar atau digabungkan dengan erat
Kluster HPC yang dibuat oleh CycleCloud dirancang tidak hanya untuk mendukung pekerjaan paralel yang digabungkan secara longgar atau memalukan di mana skala (ukuran kluster) menjadi perhatian utama. Kluster CycleCloud juga dirancang dengan mengingat tulang punggung Infiniband Azure, mendukung beban kerja yang digabungkan dengan erat atau berbasis MPI di mana kedekatan simpul dan latensi jaringan sangat penting. Konsep peluasan skala dan digabungkan erat ini tertanam dalam integrasi penjadwal yang didukung CycleCloud.