Bagikan melalui


Konsep penjadwalan dan penskalaan otomatis CycleCloud

CycleCloud bukanlah penjadwal, melainkan platform yang memungkinkan Anda menyebarkan penjadwal Anda sendiri di Azure. Penjadwal mengelola dan mendistribusikan pekerjaan ke dalam sekelompok simpul. CycleCloud menyediakan REST API dan pustaka Python untuk mengembangkan adaptor penskalaan otomatis untuk penjadwal. Dengan adaptor ini, ukuran kluster terkelola naik atau turun sesuai dengan panjang antrean pekerjaan dan kebijakan tata kelola.

Diagram Orkestrasi

Penjadwal

Penjadwal adalah perangkat lunak yang menerima daftar pekerjaan (atau tugas) dan mendistribusikan tugas-tugas ini ke dalam kumpulan sumber daya yang tersedia. Ini mempertimbangkan persyaratan sumber daya pekerjaan, ketergantungan antar-pekerjaan, dan prioritas. Daftar pekerjaan ini biasanya disebut sebagai antrean.

CycleCloud hadir dengan dukungan bawaan untuk banyak penjadwal yang umum digunakan (PBS Professional OSS, Slurm, IBM LSF, Grid Engine, dan HT Condor). Ini menyediakan templat untuk menyebarkan penjadwal ini di Azure. Templat ini adalah topologi default yang mewakili praktik terbaik untuk membangun kluster HPC di Azure. Mereka menggunakan fitur khusus yang unik seperti jaringan InfiniBand latensi rendah.

Selain itu, Proyek dibuat untuk setiap penjadwal. Gunakan proyek untuk menginstal dan menginisialisasi daemon penjadwal pada headnode dan node komputasi.

Adaptor penjadwal

Adaptor yang dibuat untuk setiap jenis penjadwal memainkan dua peran utama. Satu peran menggabungkan persyaratan sumber daya dari antrean penjadwal. Peran lainnya menerjemahkan persyaratan sumber daya ke dalam permintaan alokasi untuk kumpulan ukuran Azure VM. Buat permintaan alokasi ini untuk batasan tertentu. Batasan ini dapat mencakup kuota VM, batas ukuran kluster, dan batas yang diberlakukan oleh topologi jaringan InfiniBand untuk ukuran VM yang sesuai. Dalam aspek tertentu, adaptor ini menyerupai broker yang menegosiasikan permintaan dan penawaran dari banyak pihak.

Pemantau

Monitor adalah proses yang berjalan di server aplikasi CycleCloud dan secara berkala menanyakan layanan Azure untuk ketersediaan sumber daya di langganan Azure. Monitor ini memberikan informasi ini ke adaptor penjadwal untuk perantara permintaan.

Alokasi simpul

Alokator simpul berjalan di server aplikasi CycleCloud. Ini menerima permintaan alokasi dari adaptor penjadwal melalui REST API, menyediakan sumber daya Azure yang diperlukan untuk memenuhi permintaan tersebut, dan menyajikan kembali sumber daya yang telah disediakan kepada adaptor penjadwal sebagai kumpulan simpul.

Nota

Meskipun konsep yang mendasarinya umum di antara penjadwal, detail implementasi berbeda antar penjadwal. Untuk informasi selengkapnya tentang setiap implementasi, lihat halaman penjadwal individual: