Udostępnij za pośrednictwem


Obiekty Node i Nodearray

Obiekty Node i nodearray są o 2 i podrzędne do cluster. Węzeł reprezentuje jedną maszynę wirtualną, natomiast węzełarray może reprezentować kolekcję maszyn wirtualnych lub co najmniej jeden zestaw skalowania maszyn wirtualnych.

Wartości domyślne węzła

[[node defaults]] jest specjalnym węzłem abstrakcyjnym, który określa ustawienie domyślne dla wszystkich węzłów i 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.centos6
  MachineType = Standard_H16

$Credentials jest odwołaniem do parametru o nazwie "Credentials".

W my-clustergrid nodearray dziedziczy credential and SubnetId z węzła defaults, ale używa określonego rozmiaru maszyny wirtualnej HPC Standard_H16.

Przykład

Ten przykładowy szablon tworzy klaster z dwoma węzłami i węzłemarray. Węzeł serwera proxy używa IsReturnProxy do zdefiniowania specjalnej roli ReturnProxy, która będzie punktem końcowym serwera proxy odwrotnego kanału pochodzącego z usługi CycleCloud podczas uruchamiania klastra.

[cluster my-cluster]

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

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

  [[node scheduler]]
    MachineType = Standard_D4s_v3

  [[nodearray execute]]
    MachineType = Standard_D16s_v3

Wymagane odwołanie do atrybutu

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

Atrybut Typ Definicja
Typ maszyny Struna Rozmiar maszyny wirtualnej platformy Azure
Identyfikator podsieci Struna Definicja podsieci w formularzu ${rg}/${vnet}/${subnet}
Poświadczenia Struna Nazwa konta dostawcy usług w chmurze.

Czwarty wymagany atrybut jest powiązany z obrazem. Atrybut obrazu jest wymagany, ale istnieje kilka formularzy, które można wykonać — zobacz Atrybuty obrazu.

Dodatkowe atrybuty

Atrybut Typ Definicja
Nazwa komputera Struna Nazwa komputera dla maszyny wirtualnej. Jeśli zostanie określona, zastępuje nazwę wygenerowaną przez system.
Nazwa_komputeraPrefiks Struna Prefiks prefiksu do nazw komputerów generowanych przez system
Strefa Ciąg (lista) Strefa dostępności dla maszyn wirtualnych lub zestawów skalowania maszyn wirtualnych. Może być listą usługi VMSS. Np. Zone = 1,3
KeyPairLocation Liczba całkowita Gdzie usługa CycleCloud znajdzie klucz SSH w lokalnym systemie plików
KeepAlive Boolowski Jeśli to prawda, usługa CycleCloud uniemożliwi zakończenie tego węzła
Szafka Struna Określ nazwę szafki, z której mają być pobierane specyfikacje projektu. Zobacz Use Projects
Atrybut Typ Definicja
Nazwa komputera Struna Nazwa komputera dla maszyny wirtualnej. Jeśli zostanie określona, zastępuje nazwę wygenerowaną przez system.
Nazwa_komputeraPrefiks Struna Prefiks prefiksu do nazw komputerów generowanych przez system
EfemeryczneOSDisk Boolowski Użyj efemerycznego dysku rozruchowego dla maszyny wirtualnej, jeśli jest obsługiwana
Strefa Ciąg (lista) Strefa dostępności dla maszyn wirtualnych lub zestawów skalowania maszyn wirtualnych. Może być listą usługi VMSS. Np. Zone = 1,3
ProximityPlacementGroupId Struna Pełny identyfikator grupy umieszczania w pobliżu do umieszczenia tego węzła. Musi zaczynać się od /subscriptions/
PlacementGroupId Struna Jeśli ta etykieta zostanie ustawiona, zostanie użyta do umieszczenia tego węzła w jednej grupie umieszczania ze wszystkimi innymi węzłami, które mają zgodną wartość elementu PlacementGroupId. Zapewnia to komunikację o mniejszych opóźnieniach i jest wymagana do włączenia funkcji InfiniBand na rozmiarach maszyn wirtualnych, które go obsługują. Jest to zwykle ustawiane przez harmonogram zgodnie z potrzebami, aby nie trzeba było go określać ręcznie.
KeyPairLocation Liczba całkowita Gdzie usługa CycleCloud znajdzie klucz SSH w lokalnym systemie plików
KeepAlive Boolowski Jeśli to prawda, usługa CycleCloud uniemożliwi zakończenie tego węzła
Szafka Struna Określ nazwę szafki, z której mają być pobierane specyfikacje projektu. Zobacz Use Projects
BootDiagnosticsUri Struna Identyfikator URI magazynu na potrzeby diagnostyki rozruchu (na przykład: https://mystorageaccount.blob.core.windows.net/), jeśli określono. Zostaną naliczone opłaty za magazyn.
HybridBenefit Boolowski Jeśli to prawda, włącza licencjonowanie "Korzyść użycia hybrydowego platformy Azure" dla maszyn wirtualnych z systemem Windows
EnableTerminateNotification (8.2.0+) Boolowski Jeśli to prawda, umożliwia zakończenie powiadamiania wysyłania zdarzeń na maszynie wirtualnej do maszyny wirtualnej na potrzeby obsługi lokalnej. Dotyczy to tylko maszyn wirtualnych zestawu skalowania.
TerminateNotificationTimeout (8.2.2+) Czas względny Jeśli powiadomienie o zakończeniu jest włączone, steruje to, jak długo maszyny wirtualne mają obsługiwać zdarzenie przed usunięciem.
ThrottleCapacity (8.2.2+) Boolowski Jeśli to prawda, po wystąpieniu problemu z pojemnością program nodearray zgłosi pojemność 0 do skalowania automatycznego przez wartość domyślną 5 minut
ThrottleCapacityTime (8.2.2+) Czas względny Jeśli ThrottleCapacity jest włączona, oznacza to, jak długo zgłosić dostępność 0 po ograniczeniu pojemności. Wartość domyślna to "5m".
HybridBenefitLicense (8.3.0+) Struna Jeśli HybridBenefit ma wartość true, określa licencję do użycia: RHEL_BYOS, SLES_BYOSlub Windows_Server. Wartość domyślna to Windows_Server.
FlexScaleSetId (8.3.0+) Struna W przypadku ustawienia jest to w pełni kwalifikowany identyfikator zestawu skalowania w trybie orkiestracji Flex używanym dla maszyny wirtualnej dla tego węzła.
EncryptionAtHost (8.4.0+) Boolowski Jeśli to prawda, maszyna wirtualna będzie mieć włączone szyfrowanie na hoście.
SecurityType (8.5.0+) Struna Ustawia typ zabezpieczeń ; niezdefiniowane, TrustedLaunch lub ConfidentialVM
EnableSecureBoot (8.5.0+) Boolowski Włącza bezpieczny rozruch, jeśli używasz zaufanych maszyn wirtualnych uruchamiania lub poufnych maszyn wirtualnych.
EnableVTPM (8.5.0+) Boolowski Włącza wirtualny moduł zaufanej platformy, jeśli używasz zaufanych maszyn wirtualnych uruchamiania lub poufnych maszyn wirtualnych.

Nuta

Grupa umieszczania w pobliżu jest ogólną funkcją platformy Azure i należy ją utworzyć, zanim będzie można odwoływać się do niej w węźle. Dzięki temu maszyny wirtualne CycleCloud są sortowane z innymi zasobami platformy Azure w tej grupie umieszczania w pobliżu, ale nie włączają sieci InfiniBand. Z kolei PlacementGroupId jest dowolnym ciągiem w usłudze CycleCloud używanym do grupowania maszyn wirtualnych dla węzłów w jeden zestaw skalowania, który jest ograniczony do tego samego przełącznika sieciowego, ale może nie być pogrupowany z innymi zasobami platformy Azure. Mogą być używane razem, ale może to zmniejszyć liczbę maszyn wirtualnych, które można przydzielić.

Atrybuty obrazu

Obraz maszyny wirtualnej jest wymaganym ustawieniem do uruchomienia maszyny wirtualnej. 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 wiele domyślnych obrazów witryny Marketplace, które są dostępne dla różnych smaków systemu operacyjnego. Można je określić za pomocą ImageName.

Atrybut Typ Definicja
Nazwa obrazu Struna Nazwa obrazu obsługiwanego przez cykl. cycle.image. [win2016, win2012, centos7, centos6, ubuntu16, ubuntu14]

Obrazy z witryny Marketplace

Oprócz obrazów witryny Marketplace zarządzanych przez cykl dowolny obraz witryny Marketplace może być używany przez określenie Publisher, Offer, Sku i ImageVersion.

Atrybut Typ Definicja
Azure.Publisher Struna Obraz witryny Marketplace dla wydawcy maszyny wirtualnej
Azure.Offer Struna Obraz oferty dla witryny Marketplace maszyn wirtualnych
Azure.Sku Struna Jednostka SKU obrazu witryny Marketplace maszyny wirtualnej
Azure.ImageVersion Struna Obraz wersja obrazu witryny Marketplace.

Nuta

Obraz witryny Marketplace można również określić w atrybucie ImageName zakodowanym jako identyfikator URIN w formularzu Publisher:Offer:Sku:ImageVersion.

Obrazy z niestandardowym planem cen

Obrazy galerii obrazów udostępnionych z dołączonym planem cenowym wymagają informacji o planie, które mają być używane, chyba że informacje te są przechowywane na obrazie galerii obrazów udostępnionych. Jest on określony za pomocą atrybutu ImagePlan przy użyciu atrybutów Wydawca, Produkt i Plan zagnieżdżonych.

Nuta

Używanie obrazów niestandardowych z planem cenowym wymaga usługi CycleCloud 8.0.2 lub nowszej.

Identyfikator obrazu

Alternatywnie można użyć identyfikatora zasobu obrazu maszyny wirtualnej w subskrypcji poświadczeń:

Atrybut Typ Definicja
Identyfikator obrazu Struna Identyfikator zasobu obrazu maszyny wirtualnej

Atrybuty obrazu

Aby poprawnie skonfigurować rozszerzenie systemu operacyjnego CycleCloud, obrazy i obrazy zdefiniowane przez identyfikatory ImageId, potrzebne są kilka dodatkowych ustawień:

Atrybut Typ Definicja
DownloadJetpack Boolowski Jeśli wartość false, usługa CycleCloud nie pobierze pakietu Jetpack z konta magazynu. Pakiet Jetpack musi już być zainstalowany. Uwaga: obsługiwane są tylko węzły systemu Linux. Wartość domyślna to true. Dodano element w wersji 8.4.1.
InstallJetpack Boolowski Jeśli wartość false, usługa CycleCloud nie zainstaluje pakietu Jetpack na nowych maszynach wirtualnych. Wartość domyślna to true.
AwaitInstallation Boolowski Jeśli wartość false, usługa CycleCloud nie będzie czekać, aż pakiet Jetpack zgłosi szczegóły instalacji po utworzeniu maszyny wirtualnej. Wartość domyślna to true.
JetpackPlatform Struna Platforma instalatora Jetpack do użycia: centos-7, centos-6, ubuntu-14.04, ubuntu-16.04, windows. Przestarzałe w wersji 7.7.0.

Ostrzeżenie

Ustawienie InstallJetpack lub AwaitInstallation nie jest zalecane. Ponadto ustawienie DownloadJetpack wymaga niestandardowego obrazu z poprawną wersją instalacji pakietu Jetpack i jest zalecane tylko w przypadku środowisk, w których występują problemy z pobieraniem z kont magazynu.

Nuta

ImageId jest używany domyślnie, jeśli wiele definicji obrazów jest uwzględnionych w jednej definicji węzła.

Przykład alternatywnego obrazu

Oto przykładowy szablon korzystający z 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 Boolowski Ustanów zwrotny serwer proxy kanału do tego węzła. To ustawienie może mieć wartość true tylko jeden węzeł na klaster.
ReturnPath.Hostname Nazwa hosta Nazwa hosta, w którym węzeł może uzyskać dostęp do aplikacji CycleCloud.
ReturnPath.WebserverPort Liczba całkowita Port serwera internetowego, na którym węzeł może nawiązać dostęp do aplikacji CycleCloud.
ReturnPath.BrokerPort Liczba całkowita Broker, w którym węzeł może dotrzeć do usługi CycleCloud.

Tagi

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

Atrybut Struna Definicja
Tagi Struna Użyj tags.my-tag = my-tag-value, aby dodać tagi do wdrożenia oprócz tagów przypisanych do usługi CycleCloud domyślnie.

Atrybuty regularne/spot

Usługa CycleCloud obsługuje korzystanie z maszyn wirtualnych typu spot za pośrednictwem następujących atrybutów. Aby uzyskać więcej informacji, zobacz Spot Virtual Machines.

Atrybut Struna Definicja
Przerywanej Boolowski Jeśli to prawda, maszyna wirtualna będzie maszyną wirtualną typu spot, aby zapewnić obniżone ceny.
MaxPrice Spławik Maksymalna cena do wydania na maszynę wirtualną. (Ustawienie domyślne: -1)

atrybuty Nodearray-Specific

Wszystkie atrybuty węzła są prawidłowe dla tablicy węzłów, ale tablica węzłów jest zasobem elastycznym, dzięki czemu dostępne są dodatkowe atrybuty. Nodearray to sterownik usługi Azure VirtualMachine ScaleSets (VMSS) i może mieć wiele kopii zapasowych zestawów skalowania maszyn wirtualnych.

Atrybut Struna Definicja
Azure.AllocationMethod Struna Ustaw tę opcję na StandAlone, aby zarządzać pojedynczymi maszynami wirtualnymi lub pozostawić niezdefiniowane do korzystania z usługi VMSS.
Azure.SingleScaleset Boolowski Użyj pojedynczego zestawu skalowania maszyn wirtualnych dla wszystkich węzłów (wartość domyślna: false).
Azure.SinglePlacementGroup Boolowski Użyj ustawienia pojedynczej grupy umieszczania dla zestawu skalowania maszyn wirtualnych. (Wartość domyślna: false)
Azure.Overprovision Boolowski Użyj funkcji Overprovision usługi VMSS. Usługa Cyclecloud będzie dynamicznie ustawiana w zależności od scenariusza. Jest to przesłonięcia.
Azure.MaxScaleSetSize Liczba całkowita Ogranicz liczbę maszyn wirtualnych w jednym zestawie skalowania maszyn wirtualnych. Po osiągnięciu tego maksymalnego limitu usługa CycleCloud doda do klastra dodatkowe zestawy skalowania maszyn wirtualnych. (Wartość domyślna: "40")
InitialCount 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, należy określić wartość 10. Należy pamiętać, że wartości MaxCount i MaxCoreCount można używać razem, w takim przypadku mniejsze ograniczenie skuteczne zacznie obowiązywać.
InitialCoreCount Liczba całkowita Liczba rdzeni do uruchomienia po uruchomieniu klastra.
MaxCoreCount Liczba całkowita Aby upewnić się, że klaster nigdy nie przekracza 100 rdzeni, należy określić wartość 100. Należy pamiętać, że wartości MaxCount i MaxCoreCount można używać razem, w takim przypadku mniejsze ograniczenie skuteczne zacznie obowiązywać.
ShutdownPolicy Struna Wskazuje, co zrobić z maszyną wirtualną po zamknięciu węzła. Jeśli "zakończ", maszyna wirtualna zostanie usunięta po zamknięciu węzła. W przypadku cofnięcia przydziału węzeł zostanie zatrzymany. (Ustawienie domyślne: zakończenie)
Atrybut Struna Definicja
Azure.AllocationMethod Struna Ustaw tę opcję na StandAlone, aby zarządzać pojedynczymi maszynami wirtualnymi lub pozostawić niezdefiniowane do korzystania z usługi VMSS.
Azure.SingleScaleset Boolowski Użyj pojedynczego zestawu skalowania maszyn wirtualnych dla wszystkich węzłów (wartość domyślna: false).
Azure.SinglePlacementGroup Boolowski Użyj ustawienia pojedynczej grupy umieszczania dla zestawu skalowania maszyn wirtualnych. (Wartość domyślna: false)
Azure.Overprovision Boolowski Użyj funkcji Overprovision usługi VMSS. Usługa Cyclecloud będzie dynamicznie ustawiana w zależności od scenariusza. Jest to przesłonięcia.
Azure.MaxScaleSetSize Liczba całkowita Ogranicz liczbę maszyn wirtualnych w jednym zestawie skalowania maszyn wirtualnych. Po osiągnięciu tego maksymalnego limitu usługa CycleCloud doda do klastra dodatkowe zestawy skalowania maszyn wirtualnych. (Wartość domyślna: "40")
InitialCount 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, należy określić wartość 10. Należy pamiętać, że wartości MaxCount i MaxCoreCount można używać razem, w takim przypadku mniejsze ograniczenie skuteczne zacznie obowiązywać.
InitialCoreCount Liczba całkowita Liczba rdzeni do uruchomienia po uruchomieniu klastra.
MaxCoreCount Liczba całkowita Aby upewnić się, że klaster nigdy nie przekracza 100 rdzeni, należy określić wartość 100. Należy pamiętać, że wartości MaxCount i MaxCoreCount można używać razem, w takim przypadku mniejsze ograniczenie skuteczne zacznie obowiązywać.
ShutdownPolicy Struna Wskazuje, co zrobić z maszyną wirtualną po zamknięciu węzła. Jeśli "zakończ", maszyna wirtualna zostanie usunięta po zamknięciu węzła. W przypadku cofnięcia przydziału węzeł zostanie zatrzymany. (Ustawienie domyślne: zakończenie)
Ograniczanie przepływności Boolowski Czy wstrzymać żądania na platformie Azure po otrzymaniu sygnału Insufficient Capacity. (Wartość domyślna: false)
ThrottleCapacityTime Czas względny Czas wycofywania po otrzymaniu sygnału Insufficient Capacity z platformy Azure. AvailableCount będą zgłaszane jako zero w tym czasie. (Wartość domyślna: "5m")

Nuta

Wszystkie maszyny wirtualne zostaną przypisane FaultDomainCount = 1

Dziedziczenie

Węzły i macierze węzłów, które są ściśle powiązane, mogą pochodzić z innych węzłów w tym samym szablonie klastra. Te odziedziczone definicje minimalizują deklaracje wymagane przez udostępnianie wspólnych atrybutów. Często używana jest sekcja [[node defaults]], która jest specjalną definicją abstrakcyjną, która ma zastosowanie do wszystkich węzłów i węzłów w klastrze.

Atrybut Struna Definicja
Abstrakt Boolowski Jeśli wartość true, nie twórz węzła ani węzła w klastrze. Abstrakcja może służyć do dziedziczenia. (Wartość domyślna: false)
Rozszerza Ciąg (lista) Uporządkowana lista dziedziczonych nazw węzłów/węzłówarray. Elementy w dalszej części listy mają pierwszeństwo, gdy wartości powodują konflikt. Węzeł "defaults" zawsze będzie znajdować się na liście jako pierwszy. (Ustawienie domyślne: [])

Obiekty podrzędne

Obiekty node/nodearray mają wolumin , interfejs sieciowy, klastra init, wejściowy punkt końcowyi konfiguracji jako obiekty podrzędne.