Gyakorlat – Egyéni csomóponttömb hozzáadása HPC-fürthöz

Befejeződött

Figyelemfelhívás

Ez a tartalom a CentOS-ra hivatkozik, amely egy Lejárt élettartamú (EOL) állapotú Linux-disztribúció. Fontolja meg a használatát, és ennek megfelelően tervezze meg. További információ: CentOS End Of Life útmutató.

A csomópontarray egy Azure CycleCloud-fürt azonosan konfigurált csomópontjainak gyűjteménye. Céljuk a fürt számítási erőforrásainak horizontális skálázása a várólistán lévő feladatok számának változásakor. Minden csomópontnak van egy neve, egy attribútumkészlete, amely az egyes csomópontokra vonatkozik, és választható attribútumok, amelyek leírják, hogyan kell méretezni a csomópontarrayt.

A Slurm-feladatütemező logikai és potenciálisan átfedésben lévő csoportokba particionálja a csomópontokat. Céljuk, hogy optimalizálják a feladatok feldolgozását azáltal, hogy figyelembe használják az adott korlátozásokat, például az erőforrásokat vagy az időkorlátokat. Az ütemező a partíción belüli csomópontokhoz rendeli a feladatokat, amíg az erőforrások ki nem merülnek, vagy az összes feladat feldolgozásra nem kerül.

Módosítani szeretné az újonnan üzembe helyezett Azure CycleCloud által felügyelt fürtöt, hogy figyelembe vegye a feladatspecifikus erőforrásigényeket. A cél elérése érdekében úgy dönt, hogy további módosításokat alkalmaz a mögöttes sablonra, és érvényesíti a megközelítését.

Ebben a gyakorlatban a következő feladatokat fogja elvégezni:

  • 1. feladat: Nodearray-definíció hozzáadása az Azure CycleCloud-sablonhoz
  • 2. feladat: Grafikus felületi paraméterek hozzáadása az Azure CycleCloud-sablonhoz
  • 3. feladat: Az Azure CycleCloud-fürt tulajdonságainak exportálása
  • 4. feladat: A tulajdonságok fájljának szerkesztése az új paraméterek belefoglalásához
  • 5. feladat: A módosított sablon és paraméterfájl importálása a meglévő fürtbe

Feljegyzés

A gyakorlat megkezdése előtt győződjön meg arról, hogy sikeresen végrehajtotta az előző gyakorlatot.

1. feladat: Nodearray-definíció hozzáadása az Azure CycleCloud-sablonhoz

Először hozzáadja a nodearray definícióját az előző gyakorlatban testre szabott Slurm-sablonban. A mintasablon két hpc és htc címkével ellátott partíciót tartalmaz. Létre fog hozni egy másik partíciót és a megfelelő csomópontarrayt, amely a Compute Unified Device Architecture (CUDA) képességeinek előnyeit élvező feladatokhoz készült.

  1. Lépjen az Azure Portalra. Amikor a rendszer kéri, hitelesítse magát egy Microsoft-fiókkal vagy egy Microsoft Entra-fiókkal, amely közreműködői vagy tulajdonosi szerepkörrel rendelkezik a modulban használt Azure-előfizetésben.

  2. Az Azure Portalon nyissa meg a Cloud Shellt a keresőmező melletti eszköztár ikonjának kiválasztásával, és győződjön meg arról, hogy Bash-munkamenetet futtat.

  3. Futtassa a következő parancsot a Cloud Shellben, hogy a munkakönyvtárat az előző gyakorlatban lekért GitHub-adattárat üzemeltetőre állítsa:

    cd ~/cyclecloud-slurm/templates
    
  4. Futtassa a következő parancsot a letöltött sablon nanoszerkesztőben való megnyitásához:

    nano slurm.txt
    
  5. A nanoszerkesztő felületén görgessen a [parameters About] szakaszhoz, és adja hozzá közvetlenül előtte a következő tartalmat:

    
    [[nodearray cuda]]
    MachineType = $CUDAMachineType
    ImageName = $CUDAImageName
    MaxCoreCount = $MaxCUDAExecuteCoreCount
    
    AdditionalClusterInitSpecs = $CUDAClusterInitSpecs
    
        [[[configuration]]]
        slurm.autoscale = true
        slurm.hpc = true
    
        [[[cluster-init cyclecloud/slurm:execute]]]
    
        [[[network-interface eth0]]]
        AssociatePublicIpAddress = $ExecuteNodesPublic
    
    

    Feljegyzés

    Windows rendszerű számítógép használata esetén beillesztheti a vágólap tartalmát a Shift + Insert billentyűkombinációval.

    Feljegyzés

    A módosítások további csomópontarrayt határoznak meg.

2. feladat: Grafikus felületi paraméterek hozzáadása az Azure CycleCloud-sablonhoz

Ha az Azure CycleCloud grafikus felülettel szeretné módosítani a sablonparaméterek értékeit, további módosításokat fog alkalmazni a sablonra.

  1. A nanoszerkesztő felületén görgessen a [[parameters Auto-Scaling]] szakaszhoz, és adja hozzá közvetlenül előtte a következő tartalmat:

    
        [[[parameter CUDAMachineType]]]
        Label = CUDA VM Type
        Description = The VM type for CUDA execute nodes
        ParameterType = Cloud.MachineType
        DefaultValue = Standard_NC24
    
    
  2. Görgessen a [[[parameter HPCMaxScalesetSize]]] szakaszhoz, és adja hozzá közvetlenül előtte a következő tartalmat:

    
        [[[parameter MaxCUDAExecuteCoreCount]]]
        Label = Max CUDA Cores
        Description = The total number of CUDA execute cores to start
        DefaultValue = 100
        Config.Plugin = pico.form.NumberTextBox
        Config.MinValue = 0
        Config.IntegerOnly = true
    
    
  3. Görgessen a [[[parameter SchedulerClusterInitSpecs]]] szakaszhoz, és adja hozzá közvetlenül előtte a következő tartalmat:

    
        [[[parameter CUDAImageName]]]
        Label = CUDA OS
        ParameterType = Cloud.Image
        Config.OS = linux
        DefaultValue = cycle.image.centos7
        Config.Filter := Package in {"cycle.image.centos7", "cycle.image.ubuntu18"}
    
    
  4. Görgessen a [[parameters Advanced Networking]] szakaszhoz, és adja hozzá közvetlenül előtte a következő tartalmat:

    
        [[[parameter CUDAClusterInitSpecs]]]
        Label = CUDA Cluster-Init
        DefaultValue = =undefined
        Description = Cluster init specs to apply to CUDA execute nodes
        ParameterType = Cloud.ClusterInitSpecs
    
    
  5. Válassza a Ctrl + O billentyűkombinációt, válassza az Enter billentyűt, majd a Ctrl + X billentyűkombinációt a végrehajtott módosítások mentéséhez és a fájl bezárásához.

3. feladat: Az Azure CycleCloud-fürt tulajdonságainak exportálása

Mielőtt alkalmazná az Azure CycleCloud-sablonban végrehajtott konfigurációs módosításokat a célfürtre, először exportálnia kell a fürt tulajdonságait.

  1. Futtassa a következő parancsot a Cloud Shellben a meglévő fürtök listázásához:

    cyclecloud show_cluster
    

    Feljegyzés

    Ellenőrizze, hogy a kimenet tartalmazza-e a contoso-custom-slurm-lab-cluster bejegyzést.

  2. A következő parancs futtatásával exportálja a contoso-custom-slurm-lab-cluster fürt paramétereinek és értékeinek listáját a params.jsonfájlba:

    cyclecloud export_parameters contoso-custom-slurm-lab-cluster > ~/params.json
    
  3. Futtassa a következő parancsot a paraméterek és értékük exportált listájának áttekintéséhez:

    cat ~/params.json
    

4. feladat: A tulajdonságok fájljának szerkesztése az új paraméterek belefoglalásához

Bár az Azure CycleCloud-sablonra alkalmazott módosítások az összes újonnan bevezetett paraméter alapértelmezett értékeit tartalmazzák, előfordulhat, hogy módosítania kell őket, hogy figyelembe vegyék az adott követelményeket. Ebben a feladatban a CUDAMachineType és a MaxCUDAExecuteCoreCount paraméterek értékeit állítja be.

  1. Futtassa a következő parancsot a Cloud Shellben a letöltött paraméterfájl nanoszerkesztőben való megnyitásához:

    nano ~/params.json
    
  2. A nanoszerkesztőben görgessen a fájl végéhez, és adja hozzá a következő tartalmat egy új sorból a záró zárójelek (}) előtt:

       "CUDAMachineType" : "Standard_NC6",
       "MaxCUDAExecuteCoreCount" : 60
    
  3. Adjon hozzá egy vesszőt az előző lépésben hozzáadott sor előtti sor végéhez:

       "CUDAMachineType" : "Standard_NC6"
    
  4. Válassza a Ctrl + O billentyűkombinációt, válassza az Enter billentyűt, majd a Ctrl + X billentyűkombinációt a végrehajtott módosítások mentéséhez és a fájl bezárásához.

5. feladat: A módosított sablon és paraméterfájl importálása a meglévő fürtbe

A gyakorlat befejezéséhez importálja a módosított sablont és annak paraméterfájlját a meglévő fürtbe, felülírva annak jelenlegi konfigurációját.

  1. Futtassa a következő parancsot a Cloud Shellben a módosított sablon és paraméterfájl importálásához a meglévő fürtbe:

    cyclecloud import_cluster contoso-custom-slurm-lab-cluster --file ~/cyclecloud-slurm/templates/slurm.txt -p ~/params.json -c Slurm --force
    

    Feljegyzés

    A meglévő fürt konfigurációjának felülírásához meg kell adnia a célfürt nevét és a --force jelölőt.

  2. Nyisson meg egy másik böngészőablakot a számítógépen, és keresse meg a https://< IP_address> URL-címet. Ha a rendszer kéri, ellenőrizze, hogy folytatja-e a műveletet.

  3. Ha a rendszer hitelesítést kér, jelentkezzen be ugyanazzal az Azure CycleCloud-alkalmazás felhasználói fiókjával, amelyet az Azure CycleCloud CLI konfigurálásához használt.

  4. Az Azure CycleCloud grafikus felületén lépjen a Fürtök lapra. A fürtök listájában válassza a contoso-custom-slurm-lab-cluster bejegyzést, majd válassza a Szerkesztés.

  5. A Contoso-custom-slurm-lab-cluster előugró ablak Névjegy lapján válassza a Tovább gombot.

  6. A Kötelező beállítások lapon ellenőrizze, hogy a CUDA virtuálisgép-típusbejegyzése Standard_NC6 értékre van-e állítva, és a megfelelő automatikus skálázási beállításokat:

Képernyőkép az Edit contoso-custom-slurm-lab-cluster előugró ablak Kötelező beállítások oldaláról.

Gratulálunk! Sikeresen elvégezte a modul második gyakorlatát. Ebben a gyakorlatban egy módosított sablonnal testre szabta az Azure CycleCloud-fürtöt, beleértve egy új csomópont definícióját a megfelelő partícióval. A cél eléréséhez a sablon szerkesztése után exportálta és szerkesztette a fürtparaméter-fájlt, majd importálta a módosított sablonnal együtt a fürtbe.

Feljegyzés

Ne törölje az ebben a gyakorlatban üzembe helyezett és konfigurált erőforrásokat, ha a következő gyakorlat futtatását tervezi. Ezekre az erőforrásokra a következő gyakorlat elvégzéséhez van szükség.