Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W obszarze CycleCloud termin klaster opisuje grupę połączonych komputerów (węzłów) pracujących razem jako pojedynczy system. Klastry można zagnieżdżać. Na przykład klaster obliczeniowy składający się z głównego węzła planującego Grid Engine i węzłów obliczeniowych może zainstalować klaster BeeGFS składający się z kilku serwerów metadanych i pamięci masowej. Zarówno klastry obliczeniowe, jak i magazynowe łączą się w ramach jednego nadrzędnego klastra HPC lub systemu.
Węzły i tablice węzłów
Klastry zasadniczo składają się z węzłów, z których każda pełni określoną rolę w systemie HPC. Terminy węzeł i maszyna wirtualna są czasami używane zamiennie, ale są semantycznie oddzielone w usłudze CycleCloud. Węzły tworzące klaster to maszyny wirtualne na platformie Azure, które kończą proces przygotowywania i konfiguracji. Innymi słowy, maszyny wirtualne są tworzone na podstawie warstw usługi infrastruktury platformy Azure. Po zainstalowaniu oprogramowania i wykonaniu kroków konfiguracji maszyny wirtualne są węzłami klastra HPC.
Usługa CycleCloud ma dwa typy węzłów: autonomiczne węzły i tablice węzłów. Tablica węzłów jest kolekcją identycznych skonfigurowanych węzłów. Rozróżnienie między pojedynczym węzłem a tablicą węzłów odpowiada analogii DevOps Pets vs Cattle. Autonomiczne węzły są tworzone na podstawie pojedynczych maszyn wirtualnych na platformie Azure. Tablice węzłów są mapowane na zestawy skalowania maszyn wirtualnych.
Istnieją jednak istotne różnice między macierzami węzłów a zestawami skalowania maszyn wirtualnych. Tablica z jednym węzłem może składać się z wielu zestawów skalowania maszyn wirtualnych. Ta konfiguracja umożliwia tworzenie tablicy z jednym węzłem na podstawie maszyn wirtualnych o różnych rozmiarach lub nawet różnych rodzin maszyn wirtualnych. Jedynym ograniczeniem jest to, że wszystkie węzły w tablicy węzłów pełnią tę samą rolę w klastrze. Na przykład wszystkie węzły udostępniają zasoby do jednej kolejki harmonogramu zadań.
Szablony klastrów
Zdefiniuj topologię lub sposób organizowania węzłów w klastrze CycleCloud w szablonach tekstowych. Szablony określają relacje między węzłami klastra. Jeśli istnieją klastry zagnieżdżone, szablony definiują relację klastrów nadrzędnych i podrzędnych. Szablony definiują również rolę każdego węzła.
Zdefiniuj szablony klastrów w formacie INI. Użyj sekcji wyznaczonych w nawiasach kwadratowych [ i ] do definiowania klastrów, węzłów i tablic węzłów. Podstawowe elementy plików INI to asercje pary klucz-wartość, które zapewniają szczegóły konfiguracji każdej sekcji. Te szczegóły konfiguracji zawierają informacje kontekstowe dotyczące tworzenia każdego węzła klastra, takich jak obraz maszyny wirtualnej w celu rozruchu maszyny wirtualnej i podsieci maszyny wirtualnej. Aby uzyskać więcej informacji, zobacz CycleCloud cluster templates (Szablony klastrów CycleCloud).
Przygotowywanie i konfiguracja węzła
Usługa CycleCloud konfiguruje maszyny wirtualne z bazowych obrazów VM zdefiniowanych w szablonie klastra. Wykonując szereg kroków zarządzanych przez agenta CycleCloud (Jetpack) podczas procesu rozruchu, inicjuje i konfiguruje system operacyjny na maszynie wirtualnej w celu przekonwertowania go na działający węzeł HPC. Te kroki obejmują od skryptów do instalowania i konfigurowania oprogramowania do planowania, po konfigurację ostatniej mili na potrzeby instalowania systemu plików.
Możesz kontrolować sposób dostosowywania węzłów podczas rozruchu, tworząc niestandardowy projekt cluster-init. Projekt zawiera skrypty i inne pliki potrzebne do dostosowania węzła, oddzielone specyfikacjami dla różnych rodzajów ról w klastrze. Na przykład projekt harmonogramu wsadowego, takiego jak Slurm, składa się z co najmniej trzech specyfikacji: jedna dla węzłów głównych harmonogramu, jedna dla węzłów komputacyjnych, a druga dla węzłów logowania. Przeczytaj więcej na temat projektów CycleCloud.
W definicji węzła odwołujesz się do specyfikacji, które mają działać na tym węźle. Jetpack używa tych specyfikacji podczas rozruchu, aby przygotować węzeł do roli w klastrze. Pliki specyfikacji pochodzą z konta Blob Storage użytkownika i są przenoszone z serwera aplikacji CycleCloud do konta magazynu, zanim węzły zostaną uruchomione.
Uwaga / Notatka
Specyfikacje wbudowanych szablonów (takich jak typ klastra Slurm) są przechowywane w usłudze GitHub. Usługa CycleCloud automatycznie pobiera je na konto pamięci masowej użytkownika po uruchomieniu danego węzła.
Po uruchomieniu węzła pakiet Jetpack pobiera specyfikacje zdefiniowane w węźle z sekcją [[[cluster-init]]] i przetwarza je w celu doprowadzenia węzła do zbieżności ze stanem operacyjnym (na przykład jako węzeł obliczeniowy).
Orkiestracja węzłów
W zależności od harmonogramu i usług używanych w klastrze usługa CycleCloud czasami musi zorganizować fazę przygotowania węzłów w klastrze, koordynując różne węzły. Na przykład niektóre harmonogramy wymagają, aby każdy węzeł obliczeniowy zarejestrował się u demona harmonogramu. To wymaganie oznacza, że węzły obliczeniowe muszą mieć świadomość adresu węzła głównego. Węzły obliczeniowe muszą również rozpoznać, że węzeł główny jest w pełni przygotowany i czeka, jeśli nie.
Usługa CycleCloud używa tego elementu odnajdywania usługi dla relacji serwer-klient systemu plików.