Menggunakan GPU dengan mesin virtual ter-kluster

Berlaku untuk: Azure Stack HCI, versi 23H2 dan 22H2

Catatan

Cara yang disarankan untuk membuat dan mengelola VM di Azure Stack HCI 23H2 adalah menggunakan sarana kontrol Azure Arc. Gunakan mekanisme yang dijelaskan di bawah ini untuk mengelola VM Anda hanya jika Anda memerlukan fungsionalitas yang tidak tersedia di Azure Arc VM.

Topik ini memberikan panduan tentang cara menggunakan unit pemrosesan grafis (GPU) dengan mesin virtual ter-kluster (VM) yang menjalankan sistem operasi Azure Stack HCI untuk memberikan akselerasi GPU ke beban kerja di mesin virtual ter-kluster.

Dimulai di Azure Stack HCI, versi 21H2, Anda dapat menyertakan GPU di klaster Azure Stack HCI Anda untuk menyediakan akselerasi GPU ke beban kerja yang berjalan di VM berkluster. Topik ini mencakup prasyarat dasar dari kemampuan ini dan cara menyebarkannya.

Akselerasi GPU disediakan melalui Penetapan Perangkat Diskrit (DDA), juga dikenal sebagai GPU pass-through, yang memungkinkan Anda untuk mendedikasikan satu atau lebih GPU fisik ke mesin virtual. Mesin virtual ter-kluster dapat memanfaatkan akselerasi GPU, dan kemampuan pengklusteran seperti ketersediaan tinggi melalui failover. Mesin virtual migrasi langsung saat ini tidak didukung, tetapi mesin virtual dapat secara otomatis dimulai ulang dan ditempatkan di mana sumber daya GPU tersedia jika terjadi kegagalan.

Prasyarat

Untuk memulai, Anda memerlukan kluster Azure Stack HCI yang menjalankan Azure Stack HCI, versi 21H2. Anda juga memerlukan GPU yang diinstal secara fisik di setiap server kluster.

Catatan

Katalog Azure Stack HCI belum menunjukkan kompatibilitas GPU atau informasi sertifikasi. Ikuti instruksi produsen Anda untuk penginstalan GPU.

Instruksi penggunaan

Bagian ini menjelaskan langkah-langkah yang diperlukan untuk menggunakan pusat admin Windows atau Windows PowerShell untuk menyiapkan server kluster Anda untuk penggunaan GPU. Anda dapat menetapkan satu atau beberapa mesin virtual ke pusat sumber daya GPU ter-kluster, dan menghapus mesin virtual dari pusat sumber daya GPU ter-kluster. Anda juga dapat menggunakan PowerShell untuk menguji menghidupkan ulang otomatis.

Gunakan Pusat Admin Windows

Gunakan Pusat Admin Windows untuk menyiapkan kluster, menetapkan mesin virtual ke pusat sumber daya GPU, dan membatalkan penetapan mesin virtual ke pusat sumber daya GPU.

Untuk menyiapkan kluster dan menetapkan mesin virtual ke pusat sumber daya GPU:

  1. Pada menu Alat, di bawah Ekstensi, pilih GPU untuk membuka alat.

    Cuplikan layar alat GPU di Windows Admin Center

  2. Pada halaman utama alat, pilih tab kumpulan GPU,dan lalu pilih Buat kumpulan GPU.

    Cuplikan layar halaman Buat kumpulan GPU di Windows Admin Center

  3. Pada halaman Kumpulan GPU baru, tentukan hal berikut ini lalu pilih Simpan:

    1. Nama Server
    2. Nama Kumpulan GPU
    3. GPU yang ingin Anda tambahkan ke kumpulan

    Cuplikan layar halaman kumpulan GPU Baru di Windows Admin Center untuk menentukan server, nama kumpulan, dan GPU

    Setelah proses selesai, Anda akan menerima prompt sukses yang menunjukkan nama kumpulan GPU baru dan server host.

  4. Pada halaman Tetapkan mesin virtual ke kumpulan GPU, tentukan hal berikut ini lalu pilih Tetapkan:

    1. Nama Server
    2. Nama Kumpulan GPU
    3. Mesin virtual yang ingin Anda tetapkan GPU dari kumpulan GPU.

    Anda juga dapat menentukan nilai pengaturan lanjutan untuk ruang IO (MMIO) yang dipetakan memori untuk menentukan persyaratan sumber daya untuk satu GPU.

    Cuplikan layar halaman Tetapkan VM ke kumpulan GPU di Windows Admin Center tempat Anda menetapkan VM ke GPU dari kumpulan GPU

    Setelah proses selesai, Anda akan menerima prompt konfirmasi yang menunjukkan bahwa Anda berhasil menetapkan GPU dari pusat sumber daya GPU ke mesin virtual, yang ditampilkan di bawah Mesin virtual yang ditetapkan.

    Cuplikan layar perintah keberhasilan memperlihatkan GPU yang ditetapkan ke VM dan VM yang ditampilkan di bawah VM yang ditetapkan

Untuk membatalkan penetapan mesin virtual dari kumpulan sumber daya GPU:

  1. Pada tab kumpulan GPU, pilih GPU yang ingin Anda batalkan penetapannya, lalu pilih Batalkan penetapan mesin virtual.

  2. Pada halaman Batalkan penetapan mesin virtual dari kumpulan GPU, dalam kotak daftar Mesin virtual, tentukan nama mesin virtual, lalu pilih Batalkan penetapan.

    Cuplikan layar halaman Batalkan penukaran VM dari kumpulan GPU yang menunjukkan VM tidak ditetapkan

    Setelah proses selesai, Anda akan menerima perintah keberhasilan bahwa mesin virtual telah dibatalkan penetapannya dari kumpulan GPU, dan di bawah status Penugasan GPU menunjukkan Tersedia (Tidak ditetapkan).

Gunakan PowerShell

Gunakan PowerShell untuk menyiapkan kluster, menetapkan mesin virtual ke pusat sumber daya GPU, dan untuk menguji menghidupkan ulang otomatis.

Siapkan kluster

Siapkan GPU di setiap server dengan memasang driver mitigasi keamanan di setiap server, menonaktifkan GPU, dan menurunkannya dari host sesuai dengan instruksi di Menyebarkan perangkat grafis menggunakan Tugas Perangkat Diskrit. Bergantung pada vendor perangkat keras Anda, Anda mungkin juga perlu mengonfigurasi persyaratan lisensi GPU apa pun.

  1. Buat pusat sumber daya kosong baru di setiap server yang akan berisi sumber daya GPU yang ter-kluster. Pastikan untuk memberikan kumpulan nama yang sama di setiap server.

    Di PowerShell, jalankan cmdlet berikut sebagai administrator:

     New-VMResourcePool -ResourcePoolType PciExpress -Name "GpuChildPool"
    
  2. Tambahkan GPU yang turun dari setiap server ke pusat sumber daya yang Anda buat pada langkah sebelumnya.

    Di PowerShell, jalankan cmdlet berikut:

     $gpu = Get-VMHostAssignableDevice
    
     Add-VMHostAssignableDevice -HostAssignableDevice $gpu -ResourcePoolName "GpuChildPool"
    

Anda sekarang memiliki pusat sumber daya di seluruh kluster (bernama GpuChildPool) yang diisi dengan GPU yang dapat ditetapkan. Kluster akan menggunakan kumpulan ini untuk menentukan penempatan mesin virtual untuk setiap mesin virtual yang dimulai atau dipindahkan yang ditetapkan ke pusat sumber daya GPU.

Menetapkan mesin virtual ke pusat sumber daya GPU

Pertama, buat mesin virtual baru di kluster Anda, atau temukan mesin virtual yang ada.

Siapkan mesin virtual untuk DDA dengan mengatur perilaku cache, hentikan tindakan, dan properti I/O (MMIO) yang dipetakan memori sesuai dengan instruksi dalam Menyebarkan perangkat grafis menggunakan Penetapan Perangkat Diskrit.

  1. Konfigurasikan tindakan offline default sumber daya mesin virtual kluster sebagai force-shutdown bukan save.

    Di PowerShell, jalankan cmdlet berikut:

     Get-ClusterResource -name vmname | Set-ClusterParameter -Name "OfflineAction" -Value 3
    
  2. Tetapkan pusat sumber daya yang Anda buat sebelumnya ke mesin virtual. Ini menyatakan kepada kluster bahwa mesin virtual memerlukan perangkat yang ditetapkan dari kumpulan GpuChildPool saat dimulai atau dipindahkan.

    Di PowerShell, jalankan cmdlet berikut:

     $vm | Add-VMAssignableDevice -ResourcePoolName "GpuChildPool"
    

    Catatan

    Jika Anda ingin menambahkan lebih dari satu GPU ke mesin virtual, verifikasi terlebih dahulu bahwa pusat sumber daya memiliki lebih dari satu GPU yang dapat ditetapkan yang tersedia, lalu jalankan perintah sebelumnya lagi.

Jika Anda memulai komputer virtual sekarang, kluster memastikan bahwa itu ditempatkan pada server dengan sumber daya GPU yang tersedia dari kumpulan di seluruh kluster ini. Kluster ini juga menetapkan GPU ke mesin virtual melalui DDA, yang memungkinkan GPU diakses dari beban kerja di dalam mesin virtual.

Catatan

Anda juga perlu untuk memasang driver dari produsen GPU Anda di dalam mesin virtual sehingga aplikasi di mesin virtual dapat memanfaatkan GPU yang ditetapkan kepada mereka.

Anda juga dapat menghapus GPU yang ditetapkan dari mesin virtual. Untuk melakukannya, di PowerShell, jalankan cmdlet berikut:

 Get-VMAssignableDevice -VMName $vm | Where-Object { $_.ResourcePoolName -eq "GpuChildPool" } | Remove-VMAssignableDevice

Gagal atas mesin virtual dengan GPU yang ditetapkan

Untuk menguji kemampuan kluster untuk menjaga beban kerja GPU Anda tetap tersedia, lakukan operasi pengurasan di server tempat mesin virtual berjalan dengan GPU yang ditetapkan. Untuk menguras server, ikuti petunjuk dalam prosedur pemeliharaan kluster Failover. Kluster akan menghidupkan ulang mesin virtual pada server lain di kluster, selama server lain memiliki sumber daya GPU yang tersedia di kumpulan yang Anda buat.

Langkah berikutnya

Untuk informasi selengkapnya, lihat juga: