Dela via


Nod- och nodearray-objekt

Nod- och nodearray-objekt är rangordnade 2 och underordnade till cluster. En nod representerar en enskild virtuell dator, medan en nodearray kan representera en samling virtuella datorer, eller minst en VM-skalningsuppsättning.

Standardvärden för noder

[[node defaults]] är en särskild abstrakt nod som anger standardinställningen för alla noder och nodearrays i ett kluster:

[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 är en referens till en parameter med namnet "Autentiseringsuppgifter".

I my-clusterärver grid nodearray Credential och SubnetId från noden defaults, men använder en specifik HPC VM-storlek på Standard_H16.

Exempel

Den här exempelmallen skapar ett kluster med två noder och en nodearray. Proxynoden använder IsReturnProxy för att definiera den särskilda rollen för ReturnProxy, som är slutpunkten för en omvänd kanalproxy som kommer från CycleCloud när klustret startar.

[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

Obligatorisk attributreferens

Det finns minst fyra obligatoriska attribut för att starta en nod:

Attribut Typ Definition
MachineType Sträng Storleken på den virtuella Azure-datorn
Undernäts-ID Sträng Undernätsdefinition i formuläret ${rg}/${vnet}/${subnet}
Autentiseringsuppgifter Sträng Namnet på molnleverantörskontot.

Det fjärde obligatoriska attributet är relaterat till en bild. Ett bildattribut krävs men det finns flera formulär som det kan ta – se Bildattribut.

Ytterligare attribut

Attribut Typ Definition
ComputerName Sträng Datornamn för den virtuella datorn. Om det anges åsidosätter det systemgenererade namnet.
ComputerNamePrefix Sträng Prefixet föregås av systemgenererade datornamn
Zon Sträng (lista) Tillgänglighetszon för virtuell dator eller VMSS. Kan vara en lista för VMSS. T.ex. Zone = 1,3
KeyPairLocation Heltal Där CycleCloud hittar ett SSH-nyckelpar på det lokala filsystemet
KeepAlive Boolesk Om sant förhindrar CycleCloud att noden avslutas
Skåp Sträng Ange namnet på skåpet som projektspecifikationer ska hämtas från. Se Använda projekt
Attribut Typ Definition
ComputerName Sträng Datornamn för den virtuella datorn. Om det anges åsidosätter det systemgenererade namnet.
ComputerNamePrefix Sträng Prefixet föregås av systemgenererade datornamn
EphemeralOSDisk Boolesk Använd tillfälliga startdiskar för virtuella datorer om det stöds
Zon Sträng (lista) Tillgänglighetszon för virtuell dator eller VMSS. Kan vara en lista för VMSS. T.ex. Zone = 1,3
ProximityPlacementGroupId Sträng Det fullständiga ID:t för närhetsplaceringsgruppen för att placera den här noden i. Måste börja med /subscriptions/
PlacementGroupId Sträng Om den här etiketten anges används den för att placera den här noden i en enda placeringsgrupp med alla andra noder som har ett matchande värde för PlacementGroupId. Detta ger kortare svarstidskommunikation och krävs för att aktivera InfiniBand på VM-storlekar som stöder det. Detta anges vanligtvis av schemaläggaren efter behov så att den inte behöver anges manuellt.
KeyPairLocation Heltal Där CycleCloud hittar ett SSH-nyckelpar på det lokala filsystemet
KeepAlive Boolesk Om sant förhindrar CycleCloud att noden avslutas
Skåp Sträng Ange namnet på skåpet som projektspecifikationer ska hämtas från. Se Använda projekt
BootDiagnosticsUri Sträng Lagrings-URI för startdiagnostik (exempel: https://mystorageaccount.blob.core.windows.net/), om det anges. Lagringsavgifter tillkommer.
HybridBenefit Boolesk Om det är sant aktiverar du "Azure Hybrid Benefit"-licensiering för virtuella Windows-datorer
EnableTerminateNotification (8.2.0+) Boolesk Om det är sant kan Avsluta meddelande skicka händelser vid borttagning av virtuella datorer till den virtuella datorn för lokal hantering. Detta gäller endast för skalningsuppsättning av virtuella datorer.
TerminateNotificationTimeout (8.2.2+) Relativ tid Om avsluta-meddelande är aktiverat styr detta hur länge virtuella datorer ges för att hantera händelsen innan de tas bort.
ThrottleCapacity (8.2.2+) Boolesk Om det är sant rapporterar den här nodearrayen 0 kapacitet till autoskalning under standardvärdet 5 minuter efter att ett kapacitetsproblem har uppstått
ThrottleCapacityTime (8.2.2+) Relativ tid Om ThrottleCapacity är aktiverat är det så här länge du rapporterar 0-tillgänglighet efter att kapaciteten har begränsats. Standardvärdet är "5m".
HybridBenefitLicense (8.3.0+) Sträng Om HybridBenefit är sant anger detta vilken licens som ska användas: RHEL_BYOS, SLES_BYOSeller Windows_Server. Standardvärdet är Windows_Server.
FlexScaleSetId (8.3.0+) Sträng Om det anges är detta det fullständigt kvalificerade ID:t för en skalningsuppsättning i Flex-orkestreringsläge som används för den virtuella datorn för den här noden.
EncryptionAtHost (8.4.0+) Boolesk Om det är sant har den virtuella datorn kryptering på värd aktiverat.
SecurityType (8.5.0+) Sträng Anger säkerhetstyp; antingen odefinierad, TrustedLaunch eller ConfidentialVM
EnableSecureBoot (8.5.0+) Boolesk Aktiverar säker start, om du använder betrodda virtuella datorer eller konfidentiella virtuella datorer.
EnableVTPM (8.5.0+) Boolesk Aktiverar Modul för virtuell betrodd plattform, om du använder betrodda virtuella startdatorer eller konfidentiella virtuella datorer.
ScaleSetUpgradePolicyMode (8.6.2+) Sträng Anger uppgraderingsprincipen för skalningsuppsättningen, som styr vad som händer med befintliga virtuella datorer i en skalningsuppsättning när skalningsuppsättningsmallen ändras utanför CycleCloud. Detta bör vanligtvis aktiveras om du använder ett automatiserat verktyg för att ändra befintliga skalningsuppsättningar, till exempel Azure Policy. Obs! Detta inte automatiskt uppgradera OS-avbildningen. En av Automatic, Rollingeller Manual (standard).

Not

En närhetsplaceringsgrupp är en allmän Azure-funktion och en måste skapas innan den kan refereras till på en nod. På så sätt kan virtuella CycleCloud-datorer samverka med andra Azure-resurser i närhetsplaceringsgruppen, men aktiverar inte InfiniBand-nätverk. Däremot är PlacementGroupId en godtycklig sträng i CycleCloud som används för att gruppera virtuella datorer för noder i en enda skalningsuppsättning som är begränsad till samma nätverksväxel, men som kanske inte är samspelad med andra Azure-resurser. Båda kan användas tillsammans, men det kan minska antalet virtuella datorer som kan allokeras.

Bildattribut

Vm-avbildningen är en obligatorisk inställning för att starta en virtuell dator. Det finns tre giltiga former av bilddefinition: standardnamn för CycleCloud-avbildningar, Marketplace-bilddefinitioner och bild-ID:t.

ImageName

CycleCloud stöder ett antal marketplace-standardavbildningar som är tillgängliga för olika operativsystemssmak. Dessa kan anges med en ImageName.

Attribut Typ Definition
ImageName Sträng Namn på avbildningar som stöds med cykel. cycle.image. [win2016, win2012, centos7, centos6, ubuntu16, ubuntu14]

Marketplace-avbildningar

Tillsammans med Cykelhanterade Marketplace-avbildningar kan alla marketplace-avbildningar användas genom att ange Publisher, Offer, Sku och ImageVersion.

Attribut Typ Definition
Azure.Publisher Sträng Utgivare av Marketplace-avbildning för virtuell dator
Azure.Offer Sträng Erbjudande för VM Marketplace-avbildning
Azure.Sku Sträng Sku för VM Marketplace-avbildning
Azure.ImageVersion Sträng Bildversion av Marketplace-avbildning.

Not

En Marketplace-avbildning kan också anges i attributet ImageName, som kodas som ett URN i formuläret Publisher:Offer:Sku:ImageVersion.

Bilder med anpassad prisplan

Delade bildgalleribilder som har en bifogad prisplan kräver information om planen som ska användas, såvida inte den informationen lagras i bildgalleriet för delad bild. Det anges med attributet ImagePlan med attributen Publisher, Product och Plan.

Not

Användning av anpassade avbildningar med en prisplan kräver CycleCloud 8.0.2 eller senare.

ImageId

Alternativt kan resurs-ID för en VM-avbildning i prenumerationen för autentiseringsuppgifter också användas:

Attribut Typ Definition
ImageId Sträng Resurs-ID för VM-avbildning

Bildattribut

Marketplace-avbildningar och avbildningar som definierats av ImageIds behöver några ytterligare inställningar för att konfigurera CycleCloud OS-tillägget korrekt:

Attribut Typ Definition
DownloadJetpack Boolesk Om det är falskt laddar CycleCloud inte ned Jetpack från lagringskontot. Jetpack måste redan vara installerat. Obs! Endast Linux-noder stöds. Standardvärdet är sant. Lades till i 8.4.1.
InstallJetpack Boolesk Om det är falskt installerar CycleCloud inte Jetpack på nya virtuella datorer. Standardvärdet är sant.
AwaitInstallation Boolesk Om det är falskt väntar CycleCloud inte på att Jetpack ska rapportera installationsinformation när den virtuella datorn skapas. Standardvärdet är sant.
JetpackPlatform Sträng Jetpack installer platform to use: centos-7, centos-6, ubuntu-14.04, ubuntu-16.04, windows. Inaktuell i 7.7.0.

Varning

Du rekommenderas inte att ange InstallJetpack eller AwaitInstallation. Dessutom kräver inställningen DownloadJetpack en anpassad avbildning med rätt version av Jetpack-installationen och rekommenderas endast för miljöer som har problem med att ladda ned från lagringskonton.

Not

ImageId används som standard om flera bilddefinitioner ingår i en enskild noddefinition.

Exempel på alternativ bild

Här är en exempelmall med de tre alternativa bildkonstruktionerna för noderna:

[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

Avancerade nätverksattribut

Attribut Typ Definition
IsReturnProxy Boolesk Upprätta omvänd kanalproxy till den här noden. Endast en nod per kluster kan ha den här inställningen som true.
ReturnPath.Hostname Värdnamn Värdnamn där noden kan nå CycleCloud.
ReturnPath.WebserverPort Heltal Webbserverport där noden kan nå CycleCloud.
ReturnPath.BrokerPort Heltal Broker där noden kan nå CycleCloud.

Taggar

CycleCloud stöder taggning av virtuella datorer och VMSS.

Attribut Sträng Definition
Taggar Sträng Använd tags.my-tag = my-tag-value för att lägga till taggar i distributionen utöver de taggar som tilldelats av CycleCloud som standard.

Vanliga attribut/punktattribut

CycleCloud stöder användning av virtuella datorer med oanvänd kapacitet via följande attribut. Mer information finns i Spot Virtual Machines.

Attribut Sträng Definition
Frånkopplingsbara Boolesk Om det är sant är den virtuella datorn en virtuell dator med oanvänd kapacitet som ger lägre priser.
MaxPrice Flyta Det högsta priset som ska spenderas på den virtuella datorn. (Standard: -1)

Nodearray-Specific attribut

Alla attribut för en nod är giltiga för en nodearray, men en nodmatris är en elastisk resurs så ytterligare attribut är tillgängliga. Nodearray är en drivrutin för Azure VirtualMachine ScaleSets (VMSS) och kan ha många säkerhetskopierade VMSS.

Attribut Sträng Definition
Azure.AllocationMethod Sträng Ställ in på StandAlone för att hantera enskilda virtuella datorer eller lämna odefinierat för att använda VMSS.
Azure.SingleScaleset Boolesk Använd en enskild VMSS för alla noder (standard: false).
Azure.SinglePlacementGroup Boolesk Använd inställningen för en placeringsgrupp för VMSS. (Standard: false)
Azure.Overprovision Boolesk Använd funktionen Överetablering i VMSS. Cyclecloud anges dynamiskt beroende på scenariot. Det här är en åsidosättning.
Azure.MaxScaleSetSize Heltal Begränsa antalet virtuella datorer i en enda VMSS. När det maximala värdet har uppnåtts lägger CycleCloud till ytterligare VMSS i klustret. (Standard: '40')
InitialCount Heltal Antal noder som ska startas när klustret startar.
MaxCount Heltal För att säkerställa att klustret aldrig överskrider 10 noder anger du värdet 10. Observera att MaxCount och MaxCoreCount kan användas tillsammans, i vilket fall den lägre effektiva begränsningen börjar gälla.
InitialCoreCount Heltal Antal kärnor som ska startas när klustret startar.
MaxCoreCount Heltal För att säkerställa att klustret aldrig överskrider 100 kärnor anger du värdet 100. Observera att MaxCount och MaxCoreCount kan användas tillsammans, i vilket fall den lägre effektiva begränsningen börjar gälla.
ShutdownPolicy Sträng Anger vad du ska göra med den virtuella datorn när en nod stängs av. Om "avsluta" tas den virtuella datorn bort när noden stängs av. Om "frigör" stoppas noden i stället. (Standard: avsluta)
Attribut Sträng Definition
Azure.AllocationMethod Sträng Ställ in på StandAlone för att hantera enskilda virtuella datorer eller lämna odefinierat för att använda VMSS.
Azure.SingleScaleset Boolesk Använd en enskild VMSS för alla noder (standard: false).
Azure.SinglePlacementGroup Boolesk Använd inställningen för en placeringsgrupp för VMSS. (Standard: false)
Azure.Overprovision Boolesk Använd funktionen Överetablering i VMSS. Cyclecloud anges dynamiskt beroende på scenariot. Det här är en åsidosättning.
Azure.MaxScaleSetSize Heltal Begränsa antalet virtuella datorer i en enda VMSS. När det maximala värdet har uppnåtts lägger CycleCloud till ytterligare VMSS i klustret. (Standard: '40')
InitialCount Heltal Antal noder som ska startas när klustret startar.
MaxCount Heltal För att säkerställa att klustret aldrig överskrider 10 noder anger du värdet 10. Observera att MaxCount och MaxCoreCount kan användas tillsammans, i vilket fall den lägre effektiva begränsningen börjar gälla.
InitialCoreCount Heltal Antal kärnor som ska startas när klustret startar.
MaxCoreCount Heltal För att säkerställa att klustret aldrig överskrider 100 kärnor anger du värdet 100. Observera att MaxCount och MaxCoreCount kan användas tillsammans, i vilket fall den lägre effektiva begränsningen börjar gälla.
ShutdownPolicy Sträng Anger vad du ska göra med den virtuella datorn när en nod stängs av. Om "avsluta" tas den virtuella datorn bort när noden stängs av. Om "frigör" stoppas noden i stället. (Standard: avsluta)
ThrottleCapacity Boolesk Om begäranden till Azure ska pausas när Insufficient Capacity signal tas emot. (Standard: false)
ThrottleCapacityTime Relativ tid Backoff-tid efter att ha tagit emot Insufficient Capacity signal från Azure. AvailableCount rapporteras som noll under den här tiden. (Standard: '5m')

Not

Alla VMSS tilldelas FaultDomainCount = 1

Arv

Noder och nodearrays som är nära relaterade kan härledas från andra noder i samma klustermall. Dessa ärvda definitioner minimerar de deklarationer som behövs genom att dela vanliga attribut. Ofta används avsnittet [[node defaults]], som är en särskild abstrakt definition som gäller för alla noder och nodearrays i klustret.

Attribut Sträng Definition
Abstrakt Boolesk Om det är sant ska du inte skapa en nod eller nodarray i klustret. Abstraktet kan användas för arv. (Standard: false)
Sträcker sig Sträng (lista) Ordnad lista över ärvda noder/nodearray-namn. Objekt senare i listan har företräde när värden är i konflikt. Noden "defaults" kommer alltid att vara först i listan. (Standard: [])

Underordnade objekt

Nod-/nodearray-objekten har volym, nätverksgränssnitt, cluster-init, input-endpointoch konfiguration som underordnade objekt.