Teilen über


Attributbasierte VM-Auswahl für Azure Compute Fleet (Vorschau)

Wichtig

Die Attributbasierte VM-Auswahl befindet sich derzeit in der Vorschau. Vorschauversionen werden Ihnen zur Verfügung gestellt, wenn Sie die zusätzlichen Nutzungsbedingungen akzeptieren. Einige Aspekte dieses Features werden bis zur allgemeinen Verfügbarkeit unter Umständen noch geändert.

Mit dem Attributbasierten Auswahlfeature für virtuelle Computer (VM) können Sie Ihre Instanzanforderungen als eine Reihe von VM-Attributen konfigurieren, z. B. Arbeitsspeicher, vCPU und Speicher. Diese Anforderungen werden mit allen geeigneten Azure-VM-Größen abgeglichen, was die Erstellung und Wartung von VM-Konfigurationen vereinfacht. Mit diesem Feature können Sie auch nahtlos neuere VM-Generationen nutzen, sobald sie verfügbar sind. Sie erhalten auch Zugriff auf eine größere Bandbreite an Kapazität über Azure Spot Virtual Machines. Der Compute Fleet-Dienst wählt virtuelle Computer aus, die den angegebenen Attributen entsprechen, und startet sie, sodass keine VM-Größen manuell ausgewählt werden müssen.

Screenshot des Flussdiagramms für die Attributbasierte VM-Auswahl.

Die attributbasierte VM-Auswahl eignet sich ideal für Szenarien wie zustandslose Webdienste, umfangreiche Batchverarbeitung, Big Data-Cluster oder fortlaufende Integrationspipelines. Workloads wie Finanzrisikomodellierung, Protokollverarbeitung und Bildrendering können die Möglichkeit nutzen, Hunderte von Tausenden gleichzeitiger Kerne oder Instanzen auszuführen. Bei der Nutzung von Spot Virtual Machines kann eine einfache Attributkonfiguration jetzt alle relevanten Optionen umfassen, einschließlich neuer Optionen, während sie freigegeben werden, statt zahlreiche VM-Größen und Typen einzeln anzugeben.

Voraussetzungen

Um die attributbasierte VM-Auswahl zu verwenden, müssen Sie sich für Azure Compute Fleet Preview-Features registrieren. Nachdem Sie das Registrierungsformular abgeschlossen und genehmigt haben, werden Sie mit den nächsten Schritten und Onboarding-Details kontaktiert.

Vorteile

  • Optimale Flexibilität für Spot-VMs: Compute Fleet bietet optimale Flexibilität bei der Bereitstellung Spot Virtual Machines, indem sie aus einer breiten Palette von VM-Größen wählen. Dieser Prozess richtet sich an bewährte Methoden für die Spotnutzung, indem die Flexibilität bei der Auswahl der VM-Größe sichergestellt wird, wodurch die Wahrscheinlichkeit einer Azure Spot-VMs-Besprechung verbessert und die erforderliche Computekapazität zugewiesen wird.
  • Vereinfachte Auswahl des VM-Typs: Mit der großen Anzahl verfügbarer VM-Größen kann die Suche nach der besten Übereinstimmung für Ihre Workload eine komplexe Aufgabe sein. Durch die Angabe von VM-Attributen können Azure Virtual Machine Scale Sets automatisch die VM-Größen auswählen, welche die Anforderungen Ihrer Workload erfüllen. Diese Automatisierung vereinfacht den Prozess und stellt sicher, dass die richtigen Ressourcen ausgewählt werden.
  • Automatische Einführung neuer VM-Größen: Azure Virtual Machine Scale Sets können automatisch VM-Größen der neueren Generation enthalten, sobald sie verfügbar sind. Wenn diese neuen VM-Größen Ihren angegebenen Anforderungen entsprechen und ihren ausgewählten Zuordnungsstrategien entsprechen, werden sie nahtlos von Ihrem Skalierungssatz verwendet, um sicherzustellen, dass Ihre Bereitstellung ohne manuelle Updates von den neuesten Fortschritten profitiert.

Prozess

Wie funktioniert die attributbasierte VM-Auswahl? Der Prozess umfasst zwei Hauptschritte: VM-Typermittlung, gefolgt von der Anwendung der Zuordnungsstrategie.

  • VM-Typermittlung: Attributbasierte Auswahl generiert eine Liste von VM-Typen basierend auf angegebenen Attributen, ausgewählten Azure-Regionen und Verfügbarkeitszonen.
  • Zuordnungsstrategieanwendung: Die Compute Fleet wendet die ausgewählte Zuordnungsstrategie auf die generierte Liste der VMs an.

Bei Azure Spot-VMs unterstützt die attributbasierte Auswahl sowohl kapazitätsoptimierte Strategien als auch Strategien für die Zuteilung von niedrigsten Preisen. Für Standard-VMs unterstützt die attributbasierte Auswahl die Strategie für die niedrigste Preiszuordnung. Die Compute Fleet löst Attributkonfigurationen in eine Liste der geeigneten VM-Typen auf und startet zunächst die günstigste VM, um den On-Demand-Teil der Kapazitätsanforderung zu erfüllen, und geht bei Bedarf zur nächstgünstigsten VM.

Das Attributbasierte Auswahlfeature ermöglicht flexiblere VM-Typkonfigurationen, ohne dass umfangreiche Instanzentyplisten erforderlich sind. Auf diese Weise nutzen Sie automatisch neuere VM-Generationen, wenn sie in Ihrer ausgewählten Azure-Region eingeführt werden. Darüber hinaus verbessert die attributbasierte Auswahl die Möglichkeit, effizient auf mehr Kapazität über Spotanforderungen zuzugreifen.

Mit der attributbasierten Auswahl wird die Verwaltung von VM-Größenkonfigurationen einfacher und skalierbarer, wodurch sichergestellt wird, dass Ihre Workloads reibungslos mit optimierten Kosten und Leistung ausgeführt werden.

Unterstützte VM-Attribute

Die folgende Liste der VM-Attribute wird unterstützt und stellt Beispiele für Konfigurationen bereit.

vCpuCount

  • Erforderlich
  • Muss angegeben werden, wenn VMAttributes angegeben sind
  • Der Bereich von vCpuCount von „min“ bis „max“ angegeben
  • Entweder min(uint) oder max(uint) ist erforderlich, wenn angegeben
"vCpuCount": {
	"value": {
		"min": 2, 
		"max": 24
	}
}

memoryInGiB

  • Erforderlich
  • Muss angegeben werden, wenn VMAttributes angegeben sind
  • Der Bereich von memoryInGiB von „min“ bis „max“ angegeben
  • Entweder min(double) oder max(double) ist erforderlich, wenn angegeben
"memoryInGiB": { 
	"value": {  
		"min": 0,
		"max": 1024
	}
}

memoryInGiBPerVCpu

  • Optional
  • Der Bereich von memoryInGiBPerVCpu von „min“ bis „max“ angegeben
  • Entweder min(double) oder max(double) ist erforderlich, wenn angegeben
"memoryInGiBPerVCpu": { 
	"value": {  
		"min": 0,
		"max": 8 
	} 
}

localStorageSupport

  • Optional
  • Gibt an, ob die VM-Größe, die lokalen Speicher unterstützt, verwendet werden soll, um eine Compute Fleet zu erstellen oder nicht
  • Mögliche Werte:
    • Ausgeschlossen: Schließen Sie keine VM-Größen ein, die den lokalen Speicher unterstützen
    • Erforderlich: Schließen Sie nur VM-Größen ein, die den lokalen Speicher unterstützen
    • Enthalten: Einschließen von VM-Größen, die lokalen Speicher unterstützen und nicht unterstützen, ist die Standardeinstellung, wenn localStorageSupport nicht angegeben ist
"localStorageSupport": "Included"

localStorageInGiB

  • Optional
  • Der Bereich von localStorageInGiB von „min“ bis „max“ angegeben
  • Entweder min(double) oder max(double) ist erforderlich, wenn angegeben
  • localStorageSupport sollte auf Enthalten oder Erforderliche festgelegt werden, um dieses VM-Attribut zu verwenden
  • Wenn localStorageSupport auf Ausgeschlossen festgelegt ist, kann dieses VM-Attribut nicht verwendet werden
"localStorageInGiB": { 
	"value": {  
		"min": 0,
		"max": 100 
	}
}

localStorageDiskTypes

  • Optional
  • Die localStorageDiskTypes wird als Liste angegeben
  • Gültige Werte sind SSD und HDD
  • localStorageSupport sollte auf Enthalten oder Erforderliche festgelegt werden, um dieses VM-Attribut zu verwenden
  • Wenn localStorageSupport auf Ausgeschlossen festgelegt ist, kann dieses VM-Attribut nicht verwendet werden
  • Der Standardwert für localStorageDiskTypes, falls nicht angegeben, ist EINER der gültigen Werte
"localStorageDiskTypes": { 
	"value": [ 
		"SSD", 
		"HDD" 
	] 
}

dataDiskCount

  • Optional
  • Der Bereich von dataDiskCount des angegebenen Bereichs von min bis max
  • Entweder min(uint) oder max(uint) ist erforderlich, wenn angegeben
"dataDiskCount": { 
	"value": {  
		"min": 0, 
		"max": 10 
	} 
}

networkInterfaceCount

  • Optional
  • Der Bereich von networkInterfaceCount des angegebenen Bereichs von min bis max
  • Entweder min(uint) oder max(uint) ist erforderlich, wenn angegeben
"networkInterfaceCount": { 
	"value": {  
		"min": 0, 
		"max": 10 
	} 
}

networkBandwidthInMbps

  • Optional
  • Der Bereich von networkBandwidthInMbps des angegebenen Bereichs von min bis max
  • Entweder min(double) oder max(double) ist erforderlich, wenn angegeben
"networkBandwidthInMbps": { 
	"value": {  
		"min": 0, 
		"max": 500 
	} 
}

rdmaSupport

  • Optional
  • Gibt an, ob die VM-Größe, die Remote Direct Memory Access (RDMA) unterstützt, zum Erstellen der Compute Fleet verwendet werden soll oder nicht
  • Mögliche Werte:
    • Ausgeschlossen: Kein Einschließen von VM-Größen, die RDMA unterstützen, ist die Standardeinstellung, wenn rdmaSupport nicht angegeben ist
    • Erforderlich: Schließen Sie nur VM-Größen ein, die RDMA unterstützen
    • Enthalten: Einschließen von VM-Größen, die RDMA unterstützen und nicht unterstützen
"rdmaSupport": "Included"

rdmaNetworkInterfaceCount

  • Optional
  • Der Bereich von rdmaNetworkInterfaceCount des angegebenen Bereichs von min bis max
  • Entweder min(uint) oder max(uint) ist erforderlich, wenn angegeben
  • rdmaSupport sollte auf Enthalten oder Erforderliche festgelegt werden, um dieses VM-Attribut zu verwenden
  • Wenn rdmaSupport auf Ausgeschlossen festgelegt ist, kann dieses VM-Attribut nicht verwendet werden
"rdmaNetworkInterfaceCount": { 
	"value": {  
		"min": 0, 
		"max": 10 
	} 
}

acceleratorSupport

  • Optional
  • Gibt an, ob die VM-Größe, die Beschleuniger unterstützt, verwendet werden soll, um eine Compute Fleet zu erstellen oder nicht
  • Mögliche Werte:
    • Ausgeschlossen: Kein Einschließen von VM-Größen, die Beschleuniger unterstützen, ist die Standardeinstellung, wenn acceleratorSupport nicht angegeben ist
    • Erforderlich: Schließen Sie nur VM-Größen ein, die Beschleuniger unterstützen
    • Enthalten: Einschließen von VM-Größen, die Beschleuniger unterstützen und nicht unterstützen
"acceleratorSupport": "Required"

acceleratorManufacturers

  • Optional
  • Die acceleratorManufacturers wird als Liste angegeben
  • Gültige Werte sind AMD, NVIDIA und Xilinx
  • acceleratorSupport sollte auf Enthalten oder Erforderliche festgelegt werden, um dieses VM-Attribut zu verwenden
  • Wenn acceleratorSupport auf Ausgeschlossen festgelegt ist, kann dieses VM-Attribut nicht verwendet werden
  • Der Standardwert für acceleratorManufacturers, falls nicht angegeben, ist EINER der gültigen Werte
"acceleratorManufacturers": { 
	"value": { 
		"Nvidia", 
		"Xilinx" 
	} 
}

acceleratorCount

  • Optional
  • Der Bereich von acceleratorCount wird von min bis maxangegeben
  • Entweder min(uint) oder max(uint) ist erforderlich, wenn angegeben
  • acceleratorSupport sollte auf Enthalten oder Erforderliche festgelegt werden, um dieses VM-Attribut zu verwenden
  • Wenn acceleratorSupport auf Ausgeschlossen festgelegt ist, kann dieses VM-Attribut nicht verwendet werden
"acceleratorCount": { 
	"value": {  
		"min": 0, 
		"max": 10 
	} 
}

acceleratorTypes

  • Optional
  • Die acceleratorTypes wird als Liste angegeben
  • Gültige Werte sind GPU und FPGA
  • acceleratorSupport sollte auf Enthalten oder Erforderliche festgelegt werden, um dieses VM-Attribut zu verwenden
  • Wenn acceleratorSupport auf Ausgeschlossen festgelegt ist, kann dieses VM-Attribut nicht verwendet werden
  • Der Standardwert für acceleratorTypes, falls nicht angegeben, ist EINER der gültigen Werte
"acceleratorTypes": { 
	"value": { 
		"GPU", 
		"FPGA" 
	} 
}

vmCategories

  • Optional
  • vmCategories wird als Liste angegeben
  • Gültige Werte sind:
    • GeneralPurpose
    • ComputeOptimized
    • MemoryOptimized
    • StorageOptimized
    • GpuAccelerated
    • FpgaAccelerated
    • HighPerformanceCompute
  • Der Standardwert für vmCategories, falls nicht angegeben, ist GeneralPurpose
"vmCategories": { 
	"value": { 
		"GeneralPurpose", 
		"ComputeOptimized" 
	}
}

architectureTypes

  • Optional
  • architectureTypes wird als Liste angegeben
  • Gültige Werte sind X64 und Arm64
  • Der Standardwert für architectureTypes, falls nicht angegeben, ist „EINER“ der gültigen Werte
"architectureTypes": { 
	"value": { 
		"Arm64", 
		"x64" 
	} 
}

cpuManufacturers

  • Optional
  • cpuManufacturers wird als Liste angegeben
  • Gültige Werte sind Intel, AMD, Microsoft und Ampere
  • Der Standardwert für cpuManufacturers, falls nicht angegeben, ist „EINER“ der gültigen Werte
"cpuManufacturers": { 
	"value": { 
		"Microsoft", 
		"Intel" 
	} 
}

burstableSupport

  • Optional
  • Gibt an, ob die VM-Größe, die burstfähige Funktionen unterstützt, verwendet werden soll, um eine Compute Fleet zu erstellen oder nicht
  • Mögliche Werte:
    • Ausgeschlossen: Kein Einschließen von VM-Größen, die burstfähige Funktionen hat, ist die Standardeinstellung, wenn acceleratorSupport nicht angegeben ist
    • Erforderlich: Schließen Sie nur VM-Größen ein, die über burstfähige Funktionen verfügen
    • Enthalten: Einschließen von VM-Größen, die burstfähige Funktionen unterstützen und nicht unterstützen
"burstableSupport": "Excluded"

excludedVMSizes

  • Optional
  • Gibt an, welche VM-Größen beim Erstellen einer Compute Fleet ausgeschlossen werden sollen
  • Alle excludedVMSizes werden ignoriert, auch wenn sie den VM-Attributen entsprechen
  • Wenn excludedVMSizes das VM-Attribut angegeben wird, kann VMSizesProfile nicht angegeben werden und umgekehrt
  • Der Grenzwert beträgt 100 VM-Größen
"excludedVMSizes": { 
	"value": { 
		"Standard_F1", 
		"Standard_F2" 
	} 
}

VMSizesProfile

  • Optional
  • Gibt an, welche VM-Größen beim Erstellen einer Compute Fleet ausgeschlossen werden sollen
  • Alle anderen VM-Größen werden ignoriert, auch wenn sie den VM-Attributen entsprechen
  • Wenn VMSizesProfile angegeben ist, kann excludedVMSizes nicht angegeben werden und umgekehrt
  • Der Grenzwert beträgt 100 VM-Größen
"VMSizesProfile": { 
	"value": { 
		{"name": "Standard_F1"}, 
		{"name": "Standard_F2"} 
	} 
}

Nächste Schritte