Bagikan melalui


Mulai menggunakan simpul komputasi Linux di kluster HPC Pack di Azure

Penting

Komputer virtual klasik akan dihentikan pada 1 Maret 2023.

Jika Anda menggunakan sumber IaaS dari ASM, harap menyelesaikan migrasi sebelum 1 Maret 2023. Kami mendorong Anda untuk beralih lebih cepat untuk memanfaatkan banyak peningkatan fitur di Azure Resource Manager.

Untuk mengetahui informasi selengkapnya, lihat Migrasikan sumber IaaS Anda ke Azure Resource Manager sebelum 1 Maret 2023.

Siapkan kluster Microsoft HPC Pack di Azure yang berisi head node yang berjalan Windows Server dan beberapa simpul komputasi yang menjalankan distribusi Linux yang didukung. Jelajahi opsi untuk memindahkan data di antara simpul Linux dan simpul kepala Windows kluster. Pelajari cara mengirimkan pekerjaan HPC Linux ke kluster.

Catatan

Azure memiliki dua model penyebaran yang berbeda untuk membuat dan bekerja dengan sumber daya: Resource Manager dan klasik. Artikel ini mencakup penggunaan kedua model, tetapi Microsoft merekomendasikan bahwa sebagian besar penyebaran baru menggunakan model Azure Resource Manager.

Pada tingkat tinggi, diagram berikut menunjukkan kluster HPC Pack yang Anda buat dan kerjakan.

HPC Pack cluster with Linux nodes

Untuk opsi lain untuk menjalankan beban kerja HPC Linux di Azure, lihat Sumber daya teknis untuk komputasi batch dan performa tinggi.

Menyebarkan kluster HPC Pack dengan simpul komputasi Linux

Artikel ini menunjukkan kepada Anda dua opsi untuk menyebarkan kluster HPC Pack di Azure dengan simpul komputasi Linux. Kedua metode menggunakan gambar Marketplace Windows Server dengan HPC Pack untuk membuat simpul kepala.

  • Templat Azure Resource Manager - Gunakan templat dari Marketplace Azure, atau templat mulai cepat dari komunitas, untuk mengotomatiskan pembuatan kluster dalam model penyebaran Resource Manager. Misalnya, kluster HPC Pack untuk templat beban kerja Linux di Marketplace Azure membuat infrastruktur kluster HPC Pack lengkap untuk beban kerja HPC Linux.
  • Skrip PowerShell - Gunakan skrip penyebaran IaaS Microsoft HPC Pack (New-HpcIaaSCluster.ps1) untuk mengotomatiskan penyebaran kluster lengkap dalam model penyebaran klasik. Skrip Azure PowerShell ini menggunakan gambar VM HPC Pack di Marketplace Azure untuk penyebaran cepat dan menyediakan serangkaian parameter konfigurasi yang komprehensif untuk menyebarkan simpul komputasi Linux.

Untuk informasi selengkapnya tentang opsi penyebaran kluster HPC Pack di Azure, lihat Opsi untuk membuat dan mengelola kluster komputasi berkinerja tinggi (HPC) di Azure dengan Microsoft HPC Pack.

Prasyarat

  • Langganan Azure - Anda dapat menggunakan langganan di layanan Azure Global atau Azure Tiongkok. Jika Anda tidak memiliki akun, Anda dapat membuat akun gratis hanya dalam beberapa menit.

  • Kuota core - Anda mungkin perlu meningkatkan kuota inti, terutama jika Anda memilih untuk menyebarkan beberapa node kluster dengan ukuran VM multicore. Untuk menambah kuota, buka permintaan dukungan pelanggan online tanpa biaya.

  • Distribusi Linux - Saat ini HPC Pack mendukung distribusi Linux berikut untuk simpul komputasi. Anda dapat menggunakan versi Marketplace dari distribusi ini jika tersedia, atau menyediakan milik Anda sendiri.

    • Berbasis CentOS: 6.5, 6.6, 6.7, 7.0, 7.1, 7.2, 6.5 HPC, 7.1 HPC

    • Red Hat Enterprise Linux: 6.7, 6.8, 7.2

    • SUSE Linux Enterprise Server: SLES 12, SLES 12 (Premium), SLES 12 SP1, SLES 12 SP1 (Premium), SLES 12 untuk HPC, SLES 12 untuk HPC (Premium)

    • Ubuntu Server: 14.04 LTS, 16.04 LTS

      Tip

      Untuk menggunakan jaringan Azure RDMA dengan salah satu ukuran VM berkemampuan RDMA, tentukan gambar HPC berbasis SUSE Linux Enterprise Server 12 HPC atau CentOS dari Marketplace Azure. Untuk informasi selengkapnya, lihat Ukuran VM komputasi performa tinggi.

Prasyarat tambahan untuk menyebarkan kluster dengan menggunakan skrip penyebaran HPC Pack IaaS:

  • Komputer klien - Anda memerlukan komputer klien berbasis Windows untuk menjalankan skrip penyebaran kluster.
  • - Azure PowerShell Instal dan konfigurasikan Azure PowerShell (versi 0.8.10 atau yang lebih baru) di komputer klien Anda.
  • Skrip penyebaran HPC Pack IaaS - Unduh dan bongkap versi terbaru skrip dari Pusat Unduhan Microsoft. Anda dapat memeriksa versi skrip dengan menjalankan .\New-HPCIaaSCluster.ps1 –Version. Artikel ini didasarkan pada skrip versi 4.4.1 atau yang lebih baru.

Opsi penyebaran 1. Menggunakan templat Resource Manager

  1. Buka templat beban kerja HPC Pack untuk beban kerja Linux di Marketplace Azure, dan klik Sebarkan.

  2. Di portal Azure, tinjau informasi lalu klik Buat.

    Portal creation

  3. Pada bilah Dasar , masukkan nama untuk kluster, yang juga menamai head node VM. Anda dapat memilih grup sumber daya yang sudah ada atau membuat grup untuk penyebaran di lokasi yang tersedia untuk Anda. Lokasi memengaruhi ketersediaan ukuran VM tertentu dan layanan Azure lainnya (lihat Produk yang tersedia menurut wilayah).

  4. Pada bilah Pengaturan simpul kepala , untuk penyebaran pertama, Anda umumnya dapat menerima pengaturan default.

    Catatan

    URL skrip Pasca-konfigurasi adalah pengaturan opsional untuk menentukan skrip Windows PowerShell yang tersedia untuk umum yang ingin Anda jalankan pada VM simpul kepala setelah dijalankan.

  5. Pada bilah Pengaturan simpul komputasi , pilih pola penamaan untuk simpul, jumlah dan ukuran simpul, dan distribusi Linux untuk disebarkan.

  6. Pada bilah Pengaturan infrastruktur , masukkan nama untuk jaringan virtual dan domain Direktori Aktif, info masuk administrator domain dan VM, dan pola penamaan untuk akun penyimpanan.

    Catatan

    HPC Pack menggunakan domain Direktori Aktif untuk mengautentikasi pengguna kluster.

  7. Setelah pengujian validasi berjalan dan Anda meninjau ketentuan penggunaan, klik Beli.

Opsi penyebaran 2. Menggunakan skrip penyebaran IaaS

Berikut ini adalah prasyarat tambahan untuk menyebarkan kluster dengan menggunakan skrip penyebaran HPC Pack IaaS:

  • Komputer klien - Anda memerlukan komputer klien berbasis Windows untuk menjalankan skrip penyebaran kluster.
  • - Azure PowerShell Instal dan konfigurasikan Azure PowerShell (versi 0.8.10 atau yang lebih baru) di komputer klien Anda.
  • Skrip penyebaran HPC Pack IaaS - Unduh dan bongkap versi terbaru skrip dari Pusat Unduhan Microsoft. Anda dapat memeriksa versi skrip dengan menjalankan .\New-HPCIaaSCluster.ps1 –Version. Artikel ini didasarkan pada skrip versi 4.4.1 atau yang lebih baru.

File konfigurasi XML

Skrip penyebaran HPC Pack IaaS menggunakan file konfigurasi XML sebagai input untuk menjelaskan kluster HPC. File konfigurasi sampel berikut menentukan kluster kecil yang terdiri dari simpul kepala HPC Pack dan dua node komputasi Linux A7 CentOS 7.0 ukuran.

Ubah file sesuai kebutuhan untuk lingkungan Anda dan konfigurasi kluster yang diinginkan, dan simpan dengan nama seperti HPCDemoConfig.xml. Misalnya, Anda perlu memberikan nama langganan anda dan nama akun penyimpanan yang unik dan nama layanan cloud. Selain itu, Anda mungkin ingin memilih gambar Linux yang didukung yang berbeda untuk simpul komputasi. Untuk informasi selengkapnya tentang elemen dalam file konfigurasi, lihat file Manual.rtf di folder skrip dan Membuat kluster HPC dengan skrip penyebaran HPC Pack IaaS.

<?xml version="1.0" encoding="utf-8" ?>
<IaaSClusterConfig>
  <Subscription>
    <SubscriptionName>Subscription-1</SubscriptionName>
    <StorageAccount>allvhdsje</StorageAccount>
  </Subscription>
  <Location>Japan East</Location>  
  <VNet>
    <VNetName>centos7rdmavnetje</VNetName>
    <SubnetName>CentOS7RDMACluster</SubnetName>
  </VNet>
  <Domain>
    <DCOption>HeadNodeAsDC</DCOption>
    <DomainFQDN>hpc.local</DomainFQDN>
  </Domain>
  <Database>
    <DBOption>LocalDB</DBOption>
  </Database>
  <HeadNode>
    <VMName>CentOS7RDMA-HN</VMName>
    <ServiceName>centos7rdma-je</ServiceName>
  <VMSize>ExtraLarge</VMSize>
  <EnableRESTAPI />
  <EnableWebPortal />
  </HeadNode>
  <LinuxComputeNodes>
    <VMNamePattern>CentOS7RDMA-LN%1%</VMNamePattern>
    <ServiceName>centos7rdma-je</ServiceName>
    <VMSize>A7</VMSize>
    <NodeCount>2</NodeCount>
    <ImageName>5112500ae3b842c8b9c604889f8753c3__OpenLogic-CentOS-70-20150325</ImageName>
  </LinuxComputeNodes>
</IaaSClusterConfig>

Untuk menjalankan skrip penyebaran HPC Pack IaaS

  1. Buka Windows PowerShell pada komputer klien sebagai administrator.

  2. Ubah direktori ke folder tempat skrip diinstal (E:\IaaSClusterScript dalam contoh ini).

    cd E:\IaaSClusterScript
    
  3. Jalankan perintah berikut untuk menyebarkan kluster HPC Pack. Contoh ini mengasumsikan bahwa file konfigurasi terletak di E:\HPCDemoConfig.xml

    .\New-HpcIaaSCluster.ps1 –ConfigFile E:\HPCDemoConfig.xml –AdminUserName MyAdminName
    

    a. Karena AdminPassword tidak ditentukan dalam perintah sebelumnya, Anda diminta untuk memasukkan kata sandi untuk pengguna MyAdminName.

    b. Skrip kemudian mulai memvalidasi file konfigurasi. Dibutuhkan waktu hingga beberapa menit tergantung pada koneksi jaringan.

    Validation

    c. Setelah validasi lulus, skrip mencantumkan sumber daya kluster untuk dibuat. Masukkan Y untuk melanjutkan.

    Resources

    d. Skrip mulai menyebarkan kluster HPC Pack dan menyelesaikan konfigurasi tanpa langkah manual lebih lanjut. Skrip dapat berjalan selama beberapa menit.

    Deploy

    Catatan

    Dalam contoh ini, skrip menghasilkan file log secara otomatis karena parameter -LogFile tidak ditentukan. Log tidak ditulis secara real time, tetapi dikumpulkan di akhir validasi dan penyebaran. Jika proses PowerShell dihentikan saat skrip sedang berjalan, beberapa log akan hilang.

Koneksi ke simpul kepala

Setelah Anda menyebarkan kluster HPC Pack di Azure, sambungkan oleh Desktop Jauh ke VM simpul kepala menggunakan info masuk domain yang Anda berikan saat Anda menyebarkan kluster (misalnya, hpc\clusteradmin). Anda mengelola kluster dari simpul kepala.

Pada head node, mulai HPC Cluster Manager untuk memeriksa status kluster HPC Pack. Anda dapat mengelola dan memantau simpul komputasi Linux dengan cara yang sama seperti Anda bekerja dengan simpul komputasi Windows. Misalnya, Anda melihat simpul Linux yang tercantum dalam Manajemen Sumber Daya (simpul ini disebarkan dengan templat LinuxNode ).

Node Management

Anda juga melihat simpul Linux dalam tampilan Peta Panas .

Heat map

Cara memindahkan data dalam kluster dengan simpul Linux

Anda memiliki beberapa pilihan untuk memindahkan data di antara node Linux dan Windows head node kluster. Berikut adalah tiga metode umum, dijelaskan secara lebih rinci di bagian berikut:

  • Azure File - Mengekspos berbagi file SMB terkelola untuk menyimpan file data di penyimpanan Azure. Windows simpul dan simpul Linux dapat memasang berbagi File Azure sebagai drive atau folder secara bersamaan, bahkan jika disebarkan di jaringan virtual yang berbeda.
  • Head node SMB share - Memasang folder standar Windows bersama dari head node pada node Linux.
  • Server NFS simpul kepala - Menyediakan solusi berbagi file untuk Windows campuran dan lingkungan Linux.

Penyimpanan Azure File

Layanan Azure File memaparkan berbagi file menggunakan protokol SMB 2.1 standar. Azure VM dan layanan cloud dapat berbagi data file di seluruh komponen aplikasi melalui berbagi yang dipasang, dan aplikasi lokal dapat mengakses data file dalam berbagi melalui API penyimpanan File.

Untuk langkah-langkah terperinci dalam membuat berbagi File Azure dan memasangnya di head node, lihat Mulai menggunakan penyimpanan Azure File di Windows. Untuk memasang berbagi File Azure pada simpul Linux, lihat Cara menggunakan penyimpanan File Azure dengan Linux. Untuk menyiapkan koneksi yang bertahan, lihat Mempertahankan koneksi ke Microsoft Azure Files.

Dalam contoh berikut, buat berbagi File Azure di akun penyimpanan. Untuk memasang berbagi pada simpul head, buka Prompt Perintah dan masukkan perintah berikut:

cmdkey /add:allvhdsje.file.core.windows.net /user:allvhdsje /pass:<storageaccountkey>

net use Z: \\allvhdje.file.core.windows.net\rdma /persistent:yes

Dalam contoh ini, allvhdsje adalah nama akun penyimpanan Anda, storageaccountkey adalah kunci akun penyimpanan Anda, dan rdma adalah nama berbagi File Azure. Berbagi File Azure dipasang sebagai Z: pada simpul kepala.

Untuk memasang berbagi File Azure pada simpul Linux, jalankan perintah clusrun pada head node. Clusrun adalah alat HPC Pack yang berguna untuk melakukan tugas administratif pada beberapa simpul. (Lihat juga Clusrun untuk simpul Linux di artikel ini.)

Buka jendela Windows PowerShell dan masukkan perintah berikut:

clusrun /nodegroup:LinuxNodes mkdir -p /rdma

clusrun /nodegroup:LinuxNodes mount -t cifs //allvhdsje.file.core.windows.net/rdma /rdma -o vers=2.1`,username=allvhdsje`,password=<storageaccountkey>'`,dir_mode=0777`,file_mode=0777

Perintah pertama membuat folder bernama /rdma pada semua simpul di grup LinuxNodes. Perintah kedua memasang berbagi File Azure allvhdsjw.file.core.windows.net/rdma ke folder /rdma dengan bit dir dan mode file diatur ke 777. Pada perintah kedua, allvhdsje adalah nama akun penyimpanan Anda dan storageaccountkey adalah kunci akun penyimpanan Anda.

Catatan

Simbol "'" dalam perintah kedua adalah simbol escape untuk PowerShell. "'," berarti bahwa "," (karakter koma) adalah bagian dari perintah.

Berbagi simpul kepala

Atau, pasang folder bersama node head pada node Linux. Berbagi menyediakan cara paling sederhana untuk berbagi file, tetapi simpul kepala dan semua simpul Linux harus disebarkan di jaringan virtual yang sama. Berikut langkah-langkahnya.

  1. Buat folder di simpul kepala dan bagikan ke Semua Orang dengan izin Baca/Tulis. Misalnya, bagikan D:\OpenFOAM pada head node sebagai \CentOS7RDMA-HN\OpenFOAM. Di sini CentOS7RDMA-HN adalah nama host dari head node.

    File share permissions

    File sharing

  2. Buka jendela Windows PowerShell dan jalankan perintah berikut:

    clusrun /nodegroup:LinuxNodes mkdir -p /openfoam
    
    clusrun /nodegroup:LinuxNodes mount -t cifs //CentOS7RDMA-HN/OpenFOAM /openfoam -o vers=2.1`,username=<username>`,password='<password>'`,dir_mode=0777`,file_mode=0777
    

Perintah pertama membuat folder bernama /openfoam pada semua simpul di grup LinuxNodes. Perintah kedua memasang folder bersama //CentOS7RDMA-HN/OpenFOAM ke folder dengan bit dir dan mode file diatur ke 777. Nama pengguna dan kata sandi dalam perintah harus berupa nama pengguna dan kata sandi pengguna kluster pada head node. (Lihat Menambahkan atau menghapus pengguna kluster.)

Catatan

Simbol "'" dalam perintah kedua adalah simbol escape untuk PowerShell. "'," berarti bahwa "," (karakter koma) adalah bagian dari perintah.

Server NFS

Layanan NFS memungkinkan Anda berbagi dan memigrasikan file antara komputer yang menjalankan sistem operasi Windows Server 2012 menggunakan protokol SMB dan komputer berbasis Linux menggunakan protokol NFS. Server NFS dan semua simpul lainnya harus disebarkan dalam jaringan virtual yang sama. Ini memberikan kompatibilitas yang lebih baik dengan simpul Linux dibandingkan dengan berbagi SMB. Misalnya, ini mendukung tautan file.

  1. Untuk menginstal dan menyiapkan server NFS, ikuti langkah-langkah di Server untuk Berbagi Sistem File Jaringan Pertama Secara End-to-End.

    Misalnya, buat berbagi NFS bernama nfs dengan properti berikut:

    NFS authorization

    NFS share permissions

    NFS NTFS permissions

    NFS management properties

  2. Buka jendela Windows PowerShell dan jalankan perintah berikut:

    clusrun /nodegroup:LinuxNodes mkdir -p /nfsshare
    
    clusrun /nodegroup:LinuxNodes mount CentOS7RDMA-HN:/nfs /nfsshared
    

    Perintah pertama membuat folder bernama /nfsshared pada semua simpul di grup LinuxNodes. Perintah kedua memasang berbagi NFS CentOS7RDMA-HN:/nfs ke folder . Di sini CentOS7RDMA-HN:/nfs adalah jalur jarak jauh dari berbagi NFS Anda.

Cara mengirimkan pekerjaan

Ada beberapa cara untuk mengirimkan pekerjaan ke kluster HPC Pack:

  • HPC Cluster Manager atau HPC Job Manager GUI
  • Portal web HPC
  • REST API

Pengiriman pekerjaan ke kluster di Azure melalui alat HPC Pack GUI dan portal web HPC sama dengan untuk Windows simpul komputasi. Lihat Manajer Pekerjaan HPC Pack dan Cara mengirimkan pekerjaan dari komputer klien lokal.

Untuk mengirimkan pekerjaan melalui REST API, lihat Membuat dan Mengirimkan Pekerjaan dengan Menggunakan REST API di Microsoft HPC Pack. Untuk mengirimkan pekerjaan dari klien Linux, lihat juga sampel Python di HPC Pack SDK.

Clusrun untuk simpul Linux

Alat clusrun HPC Pack dapat digunakan untuk menjalankan perintah pada simpul Linux baik melalui Prompt Perintah atau Manajer Kluster HPC. Berikut ini adalah beberapa contoh dasar.

  • Tampilkan nama pengguna saat ini pada semua simpul dalam kluster.

    clusrun whoami
    
  • Instal alat debugger gdb dengan yum pada semua simpul di grup linuxnodes lalu mulai ulang simpul setelah 10 menit.

    clusrun /nodegroup:linuxnodes yum install gdb –y; shutdown –r 10
    
  • Buat skrip shell yang menampilkan setiap angka 1 hingga 10 selama satu detik pada setiap simpul Linux di kluster, jalankan, dan tampilkan output dari simpul segera.

    clusrun /interleaved /nodegroup:linuxnodes echo \"for i in {1..10}; do echo \\\"\$i\\\"; sleep 1; done\" ^> script.sh; chmod +x script.sh; ./script.sh
    

Catatan

Anda mungkin perlu menggunakan karakter escape tertentu dalam perintah clusrun . Seperti yang ditunjukkan dalam contoh ini, gunakan ^ di Prompt Perintah untuk menghindari simbol ">".

Langkah berikutnya