Udostępnij przez


Node i Nodearray Obiekty

Obiekty node i nodearray są obiektami drugiego poziomu, które są podrzędne względem cluster. Węzeł reprezentuje jedną maszynę wirtualną, natomiast tablica węzłów może reprezentować kolekcję maszyn wirtualnych lub co najmniej jeden zestaw skalowania maszyn wirtualnych.

Domyślne ustawienia węzła

Jest to specjalny węzeł abstrakcyjny, który określa domyślne ustawienia dla wszystkich węzłów i tablic węzłów w klastrze.

[cluster my-cluster]
  [[node defaults]]
  Credentials = $Credentials
  SubnetId = my-rg/my-vnet/my-subnet
  MachineType = Standard_D2s_v3

  [[nodearray grid]]
  ImageName = cycle.image.ubuntu22
  MachineType = Standard_H16

Element $Credentials jest odniesieniem do parametru o nazwie Credentials.

W my-clustersystemie tablicy węzłów grid wartości Credential i SubnetId z węzła, ale używa określonego rozmiaru maszyny wirtualnej HPC node defaults.

Przykład

Ten przykładowy szablon tworzy klaster z dwoma węzłami i tablicą węzłów. Węzeł proxy używa IsReturnProxy właściwości do zdefiniowania specjalnej ReturnProxy roli. Ten węzeł działa jako punkt końcowy dla proxy kanału zwrotnego pochodzącego z CycleCloud, po rozpoczęciu pracy klastra.

[cluster my-cluster]

  [[node defaults]]
    Credentials = $Credentials
    SubnetId = $SubnetId
    KeyPairLocation = ~/.ssh/cyclecloud.pem
    ImageName = cycle.image.ubuntu22

  [[node proxy]]
    IsReturnProxy = true
    MachineType = Standard_B2

  [[node scheduler]]
    MachineType = Standard_D4s_v3

  [[nodearray execute]]
    MachineType = Standard_D16s_v3

Wymagana referencja atrybutu

Aby pomyślnie uruchomić węzeł, potrzebne są co najmniej cztery wymagane atrybuty:

Atrybut Typ Definicja
Rodzaj maszyny Sznurek Rozmiar maszyny wirtualnej Azure
Identyfikator podsieci Sznurek Definicja podsieci w formularzu ${rg}/${vnet}/${subnet}. Pamiętaj, że ta wartość nie jest pełnym identyfikatorem zasobu.
Akredytacje Sznurek Nazwa konta dostawcy usług chmurowych.

Czwarty wymagany atrybut odnosi się do obrazu. Musisz podać atrybut obrazu, ale możesz wybrać jedną z kilku formularzy. Aby uzyskać więcej informacji, zobacz Atrybuty obrazu.

Dodatkowe atrybuty

Atrybut Typ Definicja
Nazwa komputera Sznurek Nazwa komputera maszyny wirtualnej. Jeśli określisz ten atrybut, zastąpi nazwę wygenerowaną przez system.
PrefiksNazwuKomputera Sznurek Prefiks dodany do nazw komputerów generowanych przez system.
Strefa Ciąg (lista) Strefa dostępności dla maszyny wirtualnej lub zestawów skalowania maszyn wirtualnych. Może być listą dla zestawu skalowania maszyn wirtualnych. Na przykład Zone = 1,3.
KeyPairLocation Liczba całkowita Lokalizacja, w której usługa CycleCloud odnajduje parę kluczy SSH w lokalnym systemie plików.
KeepAlive logiczny Jeśli to prawda, usługa CycleCloud uniemożliwia zakończenie tego węzła.
Szafka Sznurek Nazwa funkcji locker, która ma być używana do pobierania specyfikacji projektu. Zobacz Korzystanie z projektów.
Atrybut Typ Definicja
Nazwa komputera Sznurek Nazwa komputera maszyny wirtualnej. Jeśli określisz nazwę, zastępuje ona nazwę wygenerowaną przez system.
PrefiksNazwuKomputera Sznurek Prefiks dodany do nazw komputerów generowanych przez system.
DyskEfemerycznyOS logiczny Użyj efemerycznego dysku rozruchowego dla maszyny wirtualnej, jeśli jest obsługiwana.
Strefa Ciąg (lista) Strefa dostępności dla maszyny wirtualnej lub zestawu skalowania maszyn wirtualnych. Może to być lista dla Virtual Machine Scale Set. Na przykład Zone = 1,3.
IdentyfikatorGrupyLokalizacjiProxymity (ProximityPlacementGroupId) Sznurek Pełny identyfikator grupy lokalizacji w pobliżu do umieszczenia tego węzła. Musi zaczynać się od /subscriptions/.
IdentyfikatorGrupyUmieszczenia Sznurek Jeśli ta etykieta zostanie ustawiona, umieszcza węzeł w jednej grupie lokalizacyjnej ze wszystkimi innymi węzłami, które mają zgodną wartość dla PlacementGroupId. Ta konfiguracja oferuje komunikację o mniejszych opóźnieniach i jest wymagana do włączenia funkcji InfiniBand na rozmiarach maszyn wirtualnych, które go obsługują. Harmonogram zwykle ustawia tę wartość zgodnie z potrzebami, więc nie trzeba ich określać ręcznie.
KeyPairLocation Liczba całkowita Gdzie usługa CycleCloud znajduje parę kluczy SSH w lokalnym systemie plików
KeepAlive logiczny Jeśli to prawda, usługa CycleCloud uniemożliwia zakończenie tego węzła
Szafka Sznurek Nazwa schowka, z którego można pobrać specyfikacje projektu. Zobacz Use Projects
BootDiagnosticsUri Sznurek URI magazynu do diagnostyki rozruchu (przykład: https://mystorageaccount.blob.core.windows.net/), jeśli określony. Naliczane są opłaty za magazyn.
HybridBenefit logiczny Jeśli prawda, włącza licencjonowanie "Azure Hybrid Benefit" dla maszyn wirtualnych Windows.
NetworkSecurityGroupId Sznurek Jeśli zostanie podany, pełny identyfikator zasobu sieciowej grupy zabezpieczeń do użycia dla tego węzła. Tę wartość można również określić jako SecurityGroup w interfejsie sieciowym.
EnableTerminateNotification (8.2.0+) logiczny Jeśli prawda, umożliwia Powiadomienie o zakończeniu wysyłanie zdarzeń związanych z usunięciem maszyny wirtualnej (VM) do tej maszyny wirtualnej dla lokalnej obsługi. To ustawienie dotyczy tylko maszyn wirtualnych w zestawie skalowania.
TerminateNotificationTimeout (8.2.2+) Czas względny Jeśli powiadomienie o zakończeniu jest włączone, to ustawienie określa, jak długo maszyny wirtualne muszą obsługiwać zdarzenie przed usunięciem.
ThrottleCapacity (8.2.2+) logiczny Jeśli jest to wartość prawdziwa, tablica węzłów zgłasza 0 jako pojemność do automatycznego skalowania przez domyślny okres pięciu minut po wystąpieniu problemu z pojemnością.
ThrottleCapacityTime (8.2.2+) Czas względny Jeśli włączysz ThrottleCapacity, ustaw czas, przez jaki będzie raportowana dostępność wynosząca 0 po ograniczeniu pojemności. Wartość domyślna to "5m".
HybridBenefitLicense (8.3.0+) Sznurek Jeśli HybridBenefit ma wartość true, określ licencję do użycia: RHEL_BYOS, SLES_BYOSlub Windows_Server. Wartość domyślna to Windows_Server.
FlexScaleSetId (8.3.0+) Sznurek Wprowadź w pełni kwalifikowany identyfikator zestawu skalowania w trybie aranżacji Flex , którego chcesz użyć dla maszyny wirtualnej w tym węźle.
EncryptionAtHost (8.4.0+) logiczny Jeśli to prawda, maszyna wirtualna ma włączone szyfrowanie na hoście .
SecurityType (8.5.0+) Sznurek Ustawia typ zabezpieczeń; albo niezdefiniowane, TrustedLaunchlub ConfidentialVM.
EnableSecureBoot (8.5.0+) logiczny Włącza Bezpieczny Rozruch, jeśli korzystasz z maszyn wirtualnych o zaufanym uruchomieniu lub maszyn wirtualnych o poufnych właściwościach.
EnableVTPM (8.5.0+) logiczny Włącza wirtualny moduł zaufanej platformy , jeśli używasz zaufanych maszyn wirtualnych uruchamiania lub poufnych maszyn wirtualnych.
Tryb Polityki Aktualizacji Zestawu Skalowania (8.6.2+) Sznurek Określa zasady aktualizacji zestawu skalowania. Te zasady kontrolują, co się stanie z istniejącymi maszynami wirtualnymi w zestawie skalowania podczas modyfikowania szablonu zestawu skalowania poza aplikacją CycleCloud. Ogólnie rzecz biorąc, włącz te zasady, jeśli używasz zautomatyzowanego narzędzia do modyfikowania istniejących zestawów skalowania, takich jak Azure Policy. Uwaga: te zasady nie uaktualniają automatycznie obrazu systemu operacyjnego. Wybierz jedną z wartości Automatic, Rollinglub Manual (wartość domyślną).

Uwaga

Grupa umieszczania w pobliżu to ogólna funkcja platformy Azure. Trzeba go utworzyć, zanim będzie można odwołać się do niego w węźle. Ta funkcja umożliwia maszynom wirtualnym CycleCloud lokowanie razem z innymi zasobami Azure w tej grupie lokalizacji, ale nie aktywuje sieci InfiniBand. Natomiast PlacementGroupId jest to dowolny ciąg w usłudze CycleCloud, którego używasz do grupowania maszyn wirtualnych dla węzłów w jeden zestaw skalowania. Ten zestaw skalowania jest ograniczony do pracy pod tym samym przełącznikiem sieciowym, ale może nie być umiejscowiony razem z innymi zasobami platformy Azure. Można używać obu funkcji razem, ale ta kombinacja może zmniejszyć liczbę maszyn wirtualnych, które można przydzielić.

Atrybuty obrazu

Musisz określić obraz VM, aby uruchomić maszynę wirtualną. Istnieją trzy prawidłowe formy definicji obrazu: domyślne nazwy obrazów usługi CycleCloud, definicje obrazów witryny Marketplace i identyfikatory obrazów.

Nazwa obrazu

Usługa CycleCloud obsługuje kilka domyślnych obrazów Marketplace dla różnych wersji systemu operacyjnego. Możesz określić te obrazy za pomocą elementu ImageName.

Atrybut Typ Definicja
Nazwa obrazu Sznurek Cykl obsługujący nazwę obrazu.

Obrazy z witryny Marketplace

Wraz z obrazami Marketplace zarządzanymi cyklicznie możesz użyć dowolnego obrazu Marketplace, określając wartości Publisher, Offer, Sku i ImageVersion.

Atrybut Typ Definicja
Azure.Publisher Sznurek Wydawca obrazu w VM Marketplace
Azure.Oferta Sznurek Oferta na obraz VM Marketplace
Azure.Sku Sznurek SKU obrazu witryny Marketplace dla maszyny wirtualnej
Azure.ImageVersion Sznurek Wersja obrazu z Marketplacu

Uwaga

Możesz również określić obraz witryny Marketplace w atrybucie ImageName . Zakoduj go jako identyfikator URI W formularzu Publisher:Offer:Sku:ImageVersion.

Obrazy z indywidualnym planem cenowym

Obrazy udostępnionej galerii obrazów, które mają załączony plan cenowy, wymagają informacji o planie, który ma być użyty, chyba że te informacje są przechowywane w obrazie udostępnionej galerii obrazów. Określ te informacje za pomocą atrybutu ImagePlan, używając zagnieżdżonych atrybutów Wydawca, Produkt i Plan.

Uwaga

Korzystanie z niestandardowych obrazów w ramach planu cenowego wymaga CycleCloud w wersji 8.0.2 lub nowszej.

Identyfikator Obrazu

Możesz również użyć identyfikatora zasobu obrazu maszyny wirtualnej w subskrypcji poświadczeń:

Atrybut Typ Definicja
Identyfikator Obrazu Sznurek Identyfikator zasobu obrazu maszyny wirtualnej

Atrybuty obrazu

Obrazy z witryny Marketplace, które zdefiniowano za pomocą identyfikatorów ImageId, wymagają kilku dodatkowych ustawień, aby działać z rozszerzeniem CycleCloud OS.

Atrybut Typ Definicja
DownloadJetpack logiczny Jeśli ustawiona jest wartość False, usługa CycleCloud nie pobierze pakietu Jetpack z konta magazynu. Jetpack musi być już zainstalowany. Uwaga: obsługiwane są tylko węzły Linux. Domyślnie ustawione na true. Dodano w wersji 8.4.1.
Zainstaluj Jetpack logiczny Jeśli ustawione na false, usługa CycleCloud nie instaluje pakietu Jetpack na nowych maszynach wirtualnych. Domyślnie ustawione na true.
OczekiwanieNaInstalację logiczny Jeśli ustawienie jest false, usługa CycleCloud nie czeka, aż Jetpack zgłosi szczegóły instalacji podczas tworzenia maszyny wirtualnej. Domyślnie ustawione na true.
JetpackPlatform Sznurek Platforma instalatora Jetpack do użycia: centos-7, centos-6, ubuntu-14.04, ubuntu-16.04, windows. Wycofane w wersji 7.7.0.

Ostrzeżenie

Nie zalecamy ustawiania InstallJetpack ani AwaitInstallation. Ponadto ustawienie DownloadJetpack wymaga niestandardowego obrazu z poprawną wersją instalacji pakietu Jetpack. Ustaw DownloadJetpack tylko wtedy, gdy środowisko ma problemy z pobieraniem z kont pamięci masowej.

Uwaga

W przypadku uwzględnienia wielu definicji obrazów w definicji jednego węzła, wdrożenie domyślnie używa ImageId.

Przykład alternatywnego obrazu

Poniższy przykładowy szablon używa trzech alternatywnych konstrukcji obrazu dla węzłów:

[cluster image-example]
  [[node defaults]]
    Credentials = $Credentials
    MachineType = Standard_D2_v3
    SubnetId = my-rg/my-vnet/my-subnet

  [[node cycle-image]]
    ImageName = cycle.image.ubuntu16

  [[node my-custom-vm-image]]
    ImageId = /subscriptions/9B16BFF1-879F-4DB3-A55E-8F8AC1E6D461/resourceGroups/my-rg/providers/Microsoft.Compute/images/jetpack-rhel7-1b1e3e93

    # Jetpack already installed on image
    DownloadJetpack = false

  [[node marketplace-vm-image]]
    Azure.Publisher = Canonical
    Azure.Offer = UbuntuServer
    Azure.Sku = 16.04-LTS
    Azure.ImageVersion = latest

  [[node custom-marketplace-vm-image]]
    ImageName = /subscriptions/9B16BFF1-879F-4DB3-A55E-8F8AC1E6D461/resourceGroups/my-rg/providers/Microsoft.Compute/images/jetpack-rhel8-1b1e3e93
    ImagePlan.Name = rhel-lvm8
    ImagePlan.Publisher = redhat
    ImagePlan.Product = rhel-byos

Zaawansowane atrybuty sieci

Atrybut Typ Definicja
IsReturnProxy logiczny Skonfiguruj serwer proxy kanału zwrotnego dla tego węzła. Tylko jeden węzeł na klaster może mieć to ustawienie jako true.
ReturnPath.NazwaHosta Nazwa hosta Nazwa hosta, gdzie węzeł może połączyć się z CycleCloud.
ReturnPath.WebserverPort Liczba całkowita Port serwera WWW, przez który węzeł może połączyć się z CycleCloud.
ReturnPath.BrokerPort Liczba całkowita Broker, przez który węzeł może połączyć się z CycleCloud.

Etykiety

Usługa CycleCloud obsługuje tagowanie maszyn wirtualnych i zestawów skalowania maszyn wirtualnych.

Atrybut Sznurek Definicja
Etykiety Sznurek Użyj tags.my-tag = my-tag-value w celu dodania tagów do wdrożenia oprócz tagów przypisanych domyślnie przez CycleCloud.

Atrybuty regularne/cechy specyficzne

Usługa CycleCloud obsługuje używanie maszyn wirtualnych typu spot za pomocą następujących atrybutów. Aby uzyskać więcej informacji, zobacz Spot Virtual Machines (Maszyny wirtualne typu spot).

Atrybut Sznurek Definicja
przerywalny logiczny Jeśli to prawda, maszyna wirtualna to maszyna wirtualna typu spot, która oferuje obniżone ceny.
MaksymalnaCena Pływak Maksymalna cena, którą chcesz zapłacić za maszynę wirtualną. (Domyślnie: -1)

Atrybuty specyficzne dla środowiska Nodearray

Wszystkie atrybuty węzła są ważne dla tablicy węzłów, ale tablica węzłów jest zasobem elastycznym, więc dostępne są dodatkowe atrybuty. Nodearray to sterownik usługi Azure VirtualMachine ScaleSets i może mieć wiele zapasowych zestawów skalowania maszyn wirtualnych.

Atrybut Sznurek Definicja
Azure.AllocationMethod Sznurek Ustaw ten atrybut na StandAlone, aby zarządzać pojedynczymi maszynami wirtualnymi, lub pozostaw nieokreślony, aby używać zestawów skalowania maszyn wirtualnych.
Azure.SingleScaleset logiczny Użyj pojedynczego zestawu skalowania maszyn wirtualnych dla wszystkich węzłów (wartość domyślna: false).
Azure.SinglePlacementGroup logiczny Użyj ustawienia pojedynczej grupy rozmieszczania dla zestawu skalowania maszyn wirtualnych. (Wartość domyślna: false)
Azure.Overprovision logiczny Użyj funkcji Overprovision zestawów skalowania maszyn wirtualnych. Usługa Cyclecloud dynamicznie ustawia tę wartość w zależności od scenariusza. Ta wartość jest nadpisaniem.
Azure.MaxScaleSetSize Liczba całkowita Ogranicz liczbę maszyn wirtualnych w jednym zestawie skalowania maszyn wirtualnych. Po osiągnięciu tego maksimum usługa CycleCloud dodaje do klastra dodatkowe zestawy skalowania maszyn wirtualnych. (Wartość domyślna: "40")
PoczątkowaLiczba Liczba całkowita Liczba węzłów do uruchomienia po uruchomieniu klastra.
MaxCount Liczba całkowita Aby upewnić się, że klaster nigdy nie przekracza 10 węzłów, określ wartość 10. Użyj razem parametrów MaxCount i MaxCoreCount. Skuteczne dolne ograniczenie wchodzi w życie.
PoczątkowaLiczbaRdzeni Liczba całkowita Liczba rdzeni do uruchomienia po uruchomieniu klastra.
MaxCoreCount Liczba całkowita Aby upewnić się, że klaster nigdy nie przekracza 100 rdzeni, określ wartość 100. Użyj razem parametrów MaxCount i MaxCoreCount. Skuteczne dolne ograniczenie wchodzi w życie.
Polityka Wyłączania Sznurek Wskazuje, co należy zrobić z maszyną wirtualną (VM), gdy węzeł przechodzi w stan wyłączenia. Jeśli terminate wtedy maszyna wirtualna zostanie usunięta, gdy węzeł zostanie zamknięty. Jeśli deallocate, węzeł zostanie zatrzymany zamiast tego. (Domyślnie: zakończyć)
Atrybut Sznurek Definicja
Azure.AllocationMethod Sznurek Ustaw tę wartość na StandAlone, aby zarządzać pojedynczymi maszynami wirtualnymi lub pozostaw ją niezdefiniowaną, aby używać zestawów skalowania maszyn wirtualnych.
Azure.SingleScaleset logiczny Użyj pojedynczego zestawu skalowania maszyn wirtualnych dla wszystkich węzłów (wartość domyślna: false).
Azure.SinglePlacementGroup logiczny Użyj ustawienia pojedynczej grupy umiejscowienia dla zestawu skalowania maszyn wirtualnych. (Wartość domyślna: false)
Azure.Overprovision logiczny Użyj funkcji Overprovision w zestawach skalowania maszyn wirtualnych. Usługa CycleCloud dynamicznie ustawia tę wartość w zależności od scenariusza. Ustawienie to działa jako nadpisanie.
Azure.MaxScaleSetSize Liczba całkowita Ogranicz liczbę maszyn wirtualnych w jednym zestawie skalowania maszyn wirtualnych. Po osiągnięciu tego maksimum usługa CycleCloud dodaje do klastra dodatkowe zestawy skalowania maszyn wirtualnych. (Wartość domyślna: "40")
PoczątkowaLiczba Liczba całkowita Liczba węzłów do uruchomienia po uruchomieniu klastra.
MaxCount Liczba całkowita Aby upewnić się, że klaster nigdy nie przekracza 10 węzłów, określ wartość 10. Użyj razem parametrów MaxCount i MaxCoreCount. Skuteczne dolne ograniczenie wchodzi w życie.
PoczątkowaLiczbaRdzeni Liczba całkowita Liczba rdzeni do uruchomienia po uruchomieniu klastra.
MaxCoreCount Liczba całkowita Aby upewnić się, że klaster nigdy nie przekracza 100 rdzeni, określ wartość 100. Użyj razem parametrów MaxCount i MaxCoreCount. Skuteczne dolne ograniczenie wchodzi w życie.
Polityka Wyłączania Sznurek Wskazuje, co należy zrobić z maszyną wirtualną (VM), gdy węzeł przechodzi w stan wyłączenia. Jeśli ustawisz wartość na terminate, maszyna wirtualna zostanie usunięta po zamknięciu węzła. Jeśli ustawisz wartość na deallocate, węzeł zostanie zatrzymany. (Domyślnie: zakończyć)
Pojemność przepustnicy logiczny Czy wstrzymać żądania do Azure po otrzymaniu sygnału Insufficient Capacity. (Wartość domyślna: false)
CzasPojemnościPrzepustnicy Czas względny Czas wycofania się po otrzymaniu sygnału Insufficient Capacity z Azure. AvailableCount jest zgłaszany jako zerowy w tym okresie. (Wartość domyślna: "5m")

Uwaga

Wszystkie zestawy skalowania maszyn wirtualnych są przypisane do FaultDomainCount = 1.

Dziedziczenie

Można tworzyć węzły i tablice węzłów, które są ściśle powiązane z innymi węzłami w tym samym szablonie klastra. Te odziedziczone definicje zmniejszają liczbę potrzebnych deklaracji, udostępniając wspólne atrybuty. Często używana [[node defaults]] sekcja to specjalna definicja abstrakcyjna, która ma zastosowanie do wszystkich węzłów i tablic węzłów w klastrze.

Atrybut Sznurek Definicja
Streszczenie logiczny Jeśli prawda, nie twórz węzła ani tablicy węzłów w klastrze. Użyj abstrakcji dziedziczenia. (Wartość domyślna: false)
Rozszerza Ciąg (lista) Uporządkowana lista dziedziczonych nazw węzłów i tablic węzłów. Elementy znajdujące się później na liście mają pierwszeństwo, gdy wartości są sprzeczne. Węzeł defaults jest zawsze najpierw na liście. (Ustawienie domyślne: [])

Obiekty podrzędne

Obiekty node i nodearray mają volumen, interfejs sieciowy, cluster-init, punkt końcowy wejścia i konfigurację jako obiekty podrzędne.