Alıştırma - HPC kümesine özel düğüm dizisi ekleme

Tamamlandı

Dikkat

Bu içerik, Kullanım Süresi Sonu (EOL) durumu olan bir Linux dağıtımı olan CentOS'a başvurur. Lütfen kullanımınızı göz önünde bulundurun ve uygun şekilde planlayın. Daha fazla bilgi için bkz . CentOS Kullanım Süresi Sonu kılavuzu.

Nodearray, Azure CycleCloud kümesinin aynı şekilde yapılandırılmış düğümlerinden oluşan bir koleksiyondur. Bunların amacı, kuyruğa alınan işlerin sayısı değiştikçe küme işlem kaynaklarının yatay ölçeklendirmesini barındırmaktır. Her nodearray bir ada, düğümlerinin her birine uygulanan bir öznitelik kümesine ve nodearray'nin nasıl ölçeklendirilmesi gerektiğini açıklayan isteğe bağlı özniteliklere sahiptir.

Slurm iş zamanlayıcı, grup düğümlerini mantıksal ve çakışan kümeler halinde bölümler. Amaçları, kaynak veya zaman sınırları gibi belirli kısıtlamaları ekleyerek işlerin işlenmesini iyileştirmektir. Zamanlayıcı, kaynakları tükenene veya tüm işler işlenene kadar işleri bir bölüm içindeki düğümlere ayırır.

Yeni dağıtılan Azure CycleCloud tarafından yönetilen kümenizi, işe özgü kaynak gereksinimlerini hesaba eklemek için değiştirmek istiyorsunuz. Bu hedefe ulaşmak için, temel alınan şablona daha fazla değişiklik uygulamaya ve yaklaşımınızı doğrulamaya karar verirsiniz.

Bu alıştırmada aşağıdaki görevleri gerçekleştireceksiniz:

  • 1. Görev: Azure CycleCloud şablonuna nodearray tanımı ekleme
  • 2. Görev: Azure CycleCloud şablonuna grafik arabirim parametreleri ekleme
  • Görev 3: Azure CycleCloud küme özelliklerini dışarı aktarma
  • Görev 4: Özellikler dosyasını yeni parametreleri içerecek şekilde düzenleyin
  • 5. Görev: Değiştirilen şablon ve parametreler dosyasını mevcut kümeye aktarma

Not

Bu alıştırmaya başlamadan önce önceki alıştırmayı başarıyla tamamladığınızdan emin olun.

1. Görev: Azure CycleCloud şablonuna nodearray tanımı ekleme

İlk olarak önceki alıştırmada özelleştirdiğiniz Slurm şablonuna nodearray tanımını ekleyeceksiniz. Örnek şablon hpc ve htc etiketli iki bölüm içerir. İşlem Birleşik Cihaz Mimarisi (CUDA) özelliklerinden yararlanan işler için tasarlanan başka bir bölüm ve karşılık gelen nodearray oluşturacaksınız.

  1. Azure portalına gidin. İstendiğinde, bu modülde kullandığınız Azure aboneliğinde Katkıda Bulunan veya Sahip rolüne sahip bir Microsoft hesabı veya Microsoft Entra hesabıyla kimlik doğrulaması yapın.

  2. Azure portalında, arama metin kutusunun yanındaki araç çubuğundaki simgesini seçerek Cloud Shell'i açın ve bash oturumu çalıştırdığınızdan emin olun.

  3. Cloud Shell'de aşağıdaki komutu çalıştırarak çalışma dizinini önceki alıştırmada aldığınız GitHub deposunu barındıran dizine ayarlayın:

    cd ~/cyclecloud-slurm/templates
    
  4. İndirilen şablonu nano düzenleyicide açmak için aşağıdaki komutu çalıştırın:

    nano slurm.txt
    
  5. Nano düzenleyici arabiriminde bölümüne kaydırın [parameters About] ve aşağıdaki içeriği doğrudan önüne ekleyin:

    
    [[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
    
    

    Not

    Windows bilgisayar kullanıyorsanız, Shift + Insert tuş bileşimini kullanarak panonun içeriğini yapıştırabilirsiniz.

    Not

    Değişiklikleriniz fazladan bir nodearray tanımlar.

2. Görev: Azure CycleCloud şablonuna grafik arabirim parametreleri ekleme

Azure CycleCloud grafik arabirimiyle şablon parametrelerinin değerlerini değiştirebilmek için şablona daha fazla değişiklik uygulayacaksınız.

  1. Nano düzenleyici arabiriminde bölümüne kaydırın [[parameters Auto-Scaling]] ve aşağıdaki içeriği doğrudan önüne ekleyin:

    
        [[[parameter CUDAMachineType]]]
        Label = CUDA VM Type
        Description = The VM type for CUDA execute nodes
        ParameterType = Cloud.MachineType
        DefaultValue = Standard_NC24
    
    
  2. [[[parameter HPCMaxScalesetSize]]] Bölümüne kaydırın ve aşağıdaki içeriği doğrudan ondan önce ekleyin:

    
        [[[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. [[[parameter SchedulerClusterInitSpecs]]] Bölümüne kaydırın ve aşağıdaki içeriği doğrudan ondan önce ekleyin:

    
        [[[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. [[parameters Advanced Networking]] Bölümüne kaydırın ve aşağıdaki içeriği doğrudan ondan önce ekleyin:

    
        [[[parameter CUDAClusterInitSpecs]]]
        Label = CUDA Cluster-Init
        DefaultValue = =undefined
        Description = Cluster init specs to apply to CUDA execute nodes
        ParameterType = Cloud.ClusterInitSpecs
    
    
  5. Ctrl + O tuş bileşimini seçin, Enter tuşunu seçin, ardından yaptığınız değişiklikleri kaydetmek ve dosyayı kapatmak için Ctrl + X tuş bileşimini seçin.

Görev 3: Azure CycleCloud küme özelliklerini dışarı aktarma

Azure CycleCloud şablonunda yaptığınız yapılandırma değişikliklerini hedef kümeye uygulamadan önce önce küme özelliklerini dışarı aktarmanız gerekir.

  1. Cloud Shell'de aşağıdaki komutu çalıştırarak mevcut kümeleri listeleyin:

    cyclecloud show_cluster
    

    Not

    Çıktının contoso-custom-slurm-lab-cluster girişini içerdiğini doğrulayın.

  2. aşağıdaki komutu çalıştırarak contoso-custom-slurm-lab-cluster kümesinin parametrelerinin ve değerlerinin listesini params.json dosyaya aktarın:

    cyclecloud export_parameters contoso-custom-slurm-lab-cluster > ~/params.json
    
  3. Dışarı aktarılan parametre listesini ve değerlerini gözden geçirmek için aşağıdaki komutu çalıştırın:

    cat ~/params.json
    

Görev 4: Özellikler dosyasını yeni parametreleri içerecek şekilde düzenleyin

Azure CycleCloud şablonuna uyguladığınız düzenlemeler yeni tanıtılan tüm parametreler için varsayılan değerler içeriyor olsa da, bunları belirli gereksinimlerinizi dikkate almak için değiştirmeniz gerekebilir. Bu görevde CUDAMachineType ve MaxCUDAExecuteCoreCount parametrelerinin değerlerini ayarlayacaksınız.

  1. İndirilen parametreler dosyasını nano düzenleyicide açmak için Cloud Shell'de aşağıdaki komutu çalıştırın:

    nano ~/params.json
    
  2. Nano düzenleyicide, dosyanın sonuna kaydırın ve kapanış ayraçlarından (}) önce yeni bir satırla başlayarak aşağıdaki içeriği ekleyin:

       "CUDAMachineType" : "Standard_NC6",
       "MaxCUDAExecuteCoreCount" : 60
    
  3. Önceki adımda eklediğiniz satırın önüne satırın sonuna virgül ekleyin:

       "CUDAMachineType" : "Standard_NC6"
    
  4. Ctrl + O tuş bileşimini seçin, Enter tuşunu seçin, ardından yaptığınız değişiklikleri kaydetmek ve dosyayı kapatmak için Ctrl + X tuş bileşimini seçin.

5. Görev: Değiştirilen şablon ve parametreler dosyasını mevcut kümeye aktarma

Bu alıştırmayı sona erdirmek için, değiştirilen şablonu ve parametre dosyasını mevcut kümeye aktaracak ve geçerli yapılandırmasını geçersiz kılacaksınız.

  1. Cloud Shell'de aşağıdaki komutu çalıştırarak değiştirilen şablonu ve parametre dosyasını mevcut kümeye aktarın:

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

    Not

    Mevcut küme yapılandırmasının üzerine yazmak için hedef kümenin --force adını ve bayrağını belirtmeniz gerekir.

  2. Bilgisayarınızda başka bir tarayıcı penceresi açın ve https://< IP_address> URL'sine gidin. İstenirse devam etmek istediğinizi onaylayın.

  3. Kimlik doğrulaması yapmanız istenirse, Azure CycleCloud CLI'yı yapılandırmak için kullandığınız Azure CycleCloud uygulama kullanıcı hesabının kimlik bilgilerini sağlayarak oturum açın.

  4. Azure CycleCloud grafik arabiriminde Kümeler sayfasına gidin. Küme listesinde contoso-custom-slurm-lab-cluster girişini ve ardından Düzenle'yi seçin.

  5. Contoso-custom-slurm-lab-cluster düzenle açılır penceresinde, Hakkında sayfasında İleri'yi seçin.

  6. Gerekli ayarlar sayfasında CUDA VM Türü girişinin Standard_NC6 değere ayarlandığını ve buna karşılık gelen otomatik ölçeklendirme seçeneklerini doğrulayın:

Contoso-custom-slurm-lab-cluster düzenle açılır penceresinin Gerekli Ayarlar sayfasının ekran görüntüsü.

Tebrikler! Bu modülün ikinci alıştırmasını başarıyla tamamladınız. Bu alıştırmada, ilgili bölümle yeni bir nodearray tanımını içeren değiştirilmiş bir şablon kullanarak Azure CycleCloud kümenizi daha da özelleştirmişsiniz. Bu hedefe ulaşmak için, şablonu düzenledikten sonra küme parametreleri dosyasını dışarı aktarıp düzenlediniz ve değiştirilen şablonla birlikte kümeye aktarmışsınız.

Not

Sonraki alıştırmayı çalıştırmayı planlıyorsanız, bu alıştırmada dağıtıp yapılandırdığınız kaynakları silmeyin. Sonraki alıştırmayı tamamlamak için bu kaynaklar gereklidir.