Udostępnij za pośrednictwem


Szybki start — wdrażanie obszaru roboczego usługi Azure CycleCloud dla programu Slurm przy użyciu witryny Marketplace

Azure CycleCloud Workspace for Slurm to bezpłatna aplikacja z witryny Marketplace, która zapewnia prosty, bezpieczny i skalowalny sposób zarządzania zasobami obliczeniowymi i magazynowymi dla obciążeń HPC i sztucznej inteligencji. W tym przewodniku Szybki start zainstalujesz aplikację CycleCloud Workspace for Slurm przy użyciu aplikacji Marketplace.

Warunki wstępne

W tym przewodniku Szybki start potrzebne są następujące elementy:

  1. Konto platformy Azure z aktywną subskrypcją
  2. Role współautora i administratora dostępu użytkowników na poziomie subskrypcji

Jak wdrożyć?

  • Zaloguj się do witryny Azure Portal.
  • Kliknij lewą górną opcję + Create a Resource
  • W polu Search services and marketplace wprowadź Slurm, a następnie wybierz pozycję Azure CycleCloud Workspace for Slurm.
  • Na stronie Azure CycleCloud Workspace for Slurm wybierz pozycję Utwórz.

zrzut ekranu przedstawiający ekran witryny Azure CycleCloud Workspace for Slurm Marketplace

Podstawy

  • Na stronie New Azure CycleCloud Workspace for Slurm account for Slurm (Nowy obszar roboczy usługi Azure CycleCloud dla konta Slurm) wprowadź lub wybierz następujące szczegóły.
    • subskrypcja: wybierz subskrypcję, która ma być używana, jeśli nie została jeszcze wybrana.
    • region: wybierz region świadczenia usługi Azure, w którym chcesz wdrożyć obszar roboczy usługi CycleCloud dla środowiska Slurm.
    • grupa zasobów: wybierz grupę zasobów dla konta Usługi Azure CycleCloud dla konta Slurm lub utwórz nową.
    • CycleCloud VM Size: wybierz nowy rozmiar maszyny wirtualnej lub zachowaj domyślny rozmiar maszyny wirtualnej
    • administrator: wprowadź nazwę i hasło dla konta administratora usługi CycleCloud.
    • admin SSH Public Key: wybierz publiczny klucz SSH konta administratora bezpośrednio lub jeśli jest przechowywany w zasobie klucza SSH na platformie Azure.

zrzut ekranu przedstawiający ekran opcji Podstawy

System plików

Katalog główny użytkowników — tworzenie nowego

Określ lokalizację katalogu macierzystego użytkowników. Utwórz nową Builtin NFS użyje maszyny wirtualnej harmonogramu jako serwera NFS z dołączonym dyskiem danych. Zrzut ekranu przedstawiający instalację systemu plików dla /shared i /home Builtin NFS create new options screen

Utworzenie nowego usługi Azure NetApp Files spowoduje utworzenie konta, puli anf oraz woluminu określonej pojemności i poziomu usługi. Zrzut ekranu przedstawiający instalację systemu plików dla /shared i /home Usługi Azure NetApp files — ekran tworzenia nowych opcji

Katalog główny użytkowników — użyj istniejącego

Jeśli masz istniejący punkt instalacji systemu plików NFS, wybierz opcję Użyj istniejącej i określ ustawienia do zainstalowania. Zrzut ekranu przedstawiający instalację systemu plików dla /shared i /home use zewnętrznego systemu plików NFS ekranu

Dodatkowa instalacja systemu plików — tworzenie nowego

Jeśli musisz zainstalować dodatkowy system plików dla danych projektu, możesz utworzyć nowy lub określić istniejący. Możesz utworzyć nowy wolumin usługi Azure NetApp Files lub zarządzany system plików Lustre platformy Azure.

zrzut ekranu przedstawiający instalację dodatkowego systemu plików w celu utworzenia nowej usługi Azure NetApp Files

zrzut ekranu przedstawiający instalację dodatkowego systemu plików w celu utworzenia nowej zarządzanej lustra platformy Azure

Dodatkowa instalacja systemu plików — użyj istniejącej

Jeśli masz istniejący zewnętrzny punkt instalacji systemu plików NFS lub zarządzany system plików Lustre platformy Azure, możesz określić opcje instalacji.

zrzut ekranu przedstawiający instalację dodatkowego systemu plików dla istniejącego zewnętrznego systemu plików NFS

Sieci

Określ tutaj, jeśli chcesz utworzyć nową sieć wirtualną i podsieci lub użyć istniejącej.

Tworzenie nowej sieci wirtualnej

zrzut ekranu przedstawiający opcje sieci służące do tworzenia nowego

  • Wybierz trasę CIDR, która będzie zgodna z liczbą docelowych węzłów obliczeniowych i określ podstawowy adres IP,
  • Najlepszym rozwiązaniem jest utworzenie usługi Bastion, jeśli nie masz bezpośredniej łączności zapewnianej przez firmowe elementy IT,
  • Utworzenie bramy translatora adresów sieciowych jest wymagane do zapewnienia łączności wychodzącej z Internetem. Stanie się to obowiązkowe w 2025 r. i jest już wymuszane przez niektóre firmy,
  • Komunikacja równorzędna z istniejącą siecią wirtualną, jeśli masz już koncentrator, z którym chcesz połączyć komunikację równorzędną, która może dostarczać usługi, takie jak Bastion i brama sieci VPN. Należy zachować ostrożność, aby wybrać podstawowy adres IP zgodny z równorzędną siecią wirtualną. Sprawdź opcję Zezwalaj na tranzyt bramy, jeśli równorzędna sieć wirtualna ma bramę.

Korzystanie z istniejącej sieci wirtualnej

Przed rozpoczęciem korzystania z istniejącej sieci wirtualnej sprawdź wymagania wstępne w Planowanie obszaru roboczego usługi CycleCloud dla wdrożenia slurm

Zrzut ekranu przedstawiający opcje sieciowe dotyczące używania istniejącego

Ustawienia slurm

Określ rozmiar i obraz maszyny wirtualnej, który ma być używany dla węzłów harmonogramu i logowania. Obrazy to obrazy HPC udostępniane w witrynie Azure Marketplace ze skojarzonymi identyfikatorami URI:

Nazwa obrazu URI
Alma Linux 8.7 almalinux:almalinux-hpc:8_7-hpc-gen2:latest
Ubuntu 20.04 microsoft-dsvm:ubuntu-hpc:2004:latest
Ubuntu 22.04 microsoft-dsvm:ubuntu-hpc:2204:latest
Obraz niestandardowy Musisz określić identyfikator URN obrazu lub identyfikator obrazu

Jeśli wybierzesz Custom Image musisz określić identyfikator URI obrazu dla istniejącego obrazu z witryny Marketplace lub identyfikator obrazu dla obrazu w galerii obliczeniowej platformy Azure.

Możesz również sprawdzić Use image on all nodes, jeśli chcesz, aby węzły harmonogramu, węzły logowania i węzły obliczeniowe używały tego samego obrazu.

Ustaw liczbę węzłów logowania, które chcesz aprowizować podczas uruchamiania i maksymalną liczbę. Na koniec włączenie kontroli kondycji spowoduje wykonanie kontroli kondycji węzła dla hpC i partycji procesora GPU w celu automatycznego usunięcia węzłów w złej kondycji po uruchomieniu.

zrzut ekranu przedstawiający ustawienia slurm

Jeśli chcesz włączyć ewidencjonowanie zadań Slurm, zaznacz pole wyboru, aby wyświetlić opcje łączności. Należy pamiętać, że musisz mieć wcześniej wdrożony zasób serwera elastycznego usługi Azure Database for MySQL. Połączenie za pośrednictwem udostępniania nazwy FQDN lub prywatnego adresu IP jest dostępne, jeśli zdecydujesz się podać własną sieć wirtualną lub użyć komunikacji równorzędnej sieci wirtualnej podczas tworzenia nowej sieci wirtualnej w ramach wdrożenia. Ponadto połączenie za pośrednictwem prywatnego punktu końcowego jest dostępne, jeśli zdecydujesz się utworzyć nową sieć wirtualną.

zrzut ekranu przedstawiający opcje ustawienia slurm dla bazy danych ewidencjonowania zadań, bezpośrednia nazwa FQDN

zrzut ekranu przedstawiający opcje ustawienia slurm dla bazy danych ewidencjonowania zadań z prywatnym punktem końcowym

Ustawienia partycji

Obszar roboczy usługi Azure CycleCloud dla narzędzia Slurm zawiera 3 zdefiniowane partycje Slurm:

  • HTC : dla zadań embarassingly innych niż MPI,
  • HPC: w przypadku ściśle powiązanych zadań MPI głównie z obsługą infiniBand maszyn wirtualnych,
  • Procesor GPU: dla zadań mpI i innych niż MPI gpu

Obraz można ustawić i maksymalną liczbę węzłów, które mają być dynamicznie aprowidowane przez usługę CycleCloud dla każdej partycji. Tylko partycja HTC umożliwia korzystanie z wystąpień typu Spot, ponieważ zwykle nie jest najlepszym rozwiązaniem do używania wystąpień typu Spot dla zadań HPC i GPU. Jednak te ustawienia można zastąpić po wdrożeniu w interfejsie użytkownika CycleCloud.

Zrzut ekranu przedstawiający opcje ustawień partycji

Tagi

Ustaw odpowiednie tagi dla wymaganych zasobów. Node Array tagi zostaną zastosowane do maszyn wirtualnych dynamicznie aprowizowania przez usługę CycleCloud.

zrzut ekranu przedstawiający opcje tagów

Przeglądanie+tworzenie

Przejrzyj opcje. Ten krok spowoduje również przetworzenie niektórych weryfikacji. zrzut ekranu przedstawiający przeglądu

Po przekazaniu kliknij przycisk Utwórz, aby zainicjować wdrożenie Zrzut ekranu przedstawiający postęp wdrażania

Postępuj zgodnie ze stanem wdrożenia i krokami.

Sprawdzanie wdrożenia

Połącz się z ccw-cyclecloud-vm przy użyciu usługi Bastion z nazwą użytkownika i kluczami SSH określonymi podczas wdrażania.

zrzut ekranu przedstawiający menu Połącz z usługą Bastion Zrzut ekranu przedstawiający opcje połączenia z usługą Bastion

Po nawiązaniu połączenia sprawdź dzienniki cloud-init, aby sprawdzić, czy wszystko jest poprawne.

$tail -f -n 25 /var/log/cloud-init-output.log
Waiting for Azure.MachineType to be populated...
Waiting for Azure.MachineType to be populated...
Waiting for Azure.MachineType to be populated...
Waiting for Azure.MachineType to be populated...
Waiting for Azure.MachineType to be populated...
Waiting for Azure.MachineType to be populated...
Waiting for Azure.MachineType to be populated...
Waiting for Azure.MachineType to be populated...
Waiting for Azure.MachineType to be populated...
Waiting for Azure.MachineType to be populated...
Waiting for Azure.MachineType to be populated...
Waiting for Azure.MachineType to be populated...
Starting cluster ccws....
----------------------------
ccws : allocation -> started
----------------------------
Resource group: 
Cluster nodes:
    scheduler: Off -- --  
Total nodes: 1
CC start_cluster successful
/
exiting after install
Cloud-init v. 23.4-7.el8_10.alma.1 running 'modules:final' at Wed, 12 Jun 2024 10:15:53 +0000. Up 11.84 seconds.
Cloud-init v. 23.4-7.el8_10.alma.1 finished at Wed, 12 Jun 2024 10:28:15 +0000. Datasource DataSourceAzure [seed=/dev/sr0].  Up 754.29 seconds

Następnie ustanów łączność między maszyną klienta a maszyną wirtualną CycleCloud. Może to być z firmowego it, sieci VPN, tunelowania bastionu, dołączonego publicznego adresu IP, jeśli zezwala na to Twoja firma. Nawiąż połączenie z interfejsem internetowym, przechodząc do https://<cycleccloud_ip>i uwierzytelniając się przy użyciu nazwy użytkownika i hasła podanego podczas wdrażania. Upewnij się, że zarówno harmonogram, jak i węzeł Logowania są uruchomione.

Nawiązywanie połączenia z węzłem logowania

W przypadku korzystania z usługi Bastion użyj jednego ze skryptów narzędziowych util/ssh_thru_bastion.sh lub util/tunnel_thru_bastion.sh, aby nawiązać połączenie, pod warunkiem tutaj. Jeśli nie używasz usługi Bastion, musisz samodzielnie ustanowić bezpośrednią łączność.