Freigeben über


PoolAddParameter Klasse

Ein Pool im hinzuzufügenden Azure Batch-Dienst.

Alle erforderlichen Parameter müssen aufgefüllt werden, um an Azure senden zu können.

Vererbung
PoolAddParameter

Konstruktor

PoolAddParameter(*, id: str, vm_size: str, display_name: str = None, cloud_service_configuration=None, virtual_machine_configuration=None, resize_timeout=None, target_dedicated_nodes: int = None, target_low_priority_nodes: int = None, enable_auto_scale: bool = None, auto_scale_formula: str = None, auto_scale_evaluation_interval=None, enable_inter_node_communication: bool = None, network_configuration=None, start_task=None, certificate_references=None, application_package_references=None, application_licenses=None, task_slots_per_node: int = None, task_scheduling_policy=None, user_accounts=None, metadata=None, mount_configuration=None, target_node_communication_mode=None, **kwargs)

Parameter

id
str
Erforderlich

Erforderlich. Die ID kann eine beliebige Kombination von alphanumerischen Zeichen einschließlich Bindestrichen und Unterstrichen enthalten und darf nicht mehr als 64 Zeichen enthalten. Bei der ID wird die Groß-/Kleinschreibung beibehalten und die Groß-/Kleinschreibung wird nicht beachtet (d. h., Sie verfügen möglicherweise nicht über zwei Pool-IDs innerhalb eines Kontos, die sich nur nach Groß-/Kleinschreibung unterscheiden).

display_name
str
Erforderlich

Der Anzeigename muss nicht eindeutig sein und kann Unicode-Zeichen bis zu einer maximalen Länge von 1024 enthalten.

vm_size
str
Erforderlich

Erforderlich. Informationen zu verfügbaren Größen von virtuellen Computern für Cloud Services Pools (mit cloudServiceConfiguration erstellte Pools) finden Sie unter Größen für Cloud Services (https://azure.microsoft.com/documentation/articles/cloud-services-sizes-specs/). Batch unterstützt alle Cloud Services VM-Größen außer ExtraSmall, A1V2 und A2V2. Informationen zu verfügbaren VM-Größen für Pools mit Images aus dem Virtual Machines Marketplace (mit virtualMachineConfiguration erstellte Pools) finden Sie unter Größen für Virtual Machines (Linux)https://azure.microsoft.com/documentation/articles/virtual-machines-linux-sizes/ oder Größen für Virtual Machines (Windows) (https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/). Batch unterstützt alle Azure-VM-Größen mit Ausnahme von STANDARD_A0 und Premium-Speicher (STANDARD_GS, STANDARD_DS und STANDARD_DSV2 Serie).

cloud_service_configuration
CloudServiceConfiguration
Erforderlich

Die Clouddienstkonfiguration für den Pool. Diese Eigenschaft und virtualMachineConfiguration schließen sich gegenseitig aus, und eine der Eigenschaften muss angegeben werden. Diese Eigenschaft kann nicht angegeben werden, wenn das Batch-Konto mit der poolAllocationMode-Eigenschaft erstellt wurde, die auf "UserSubscription" festgelegt ist.

virtual_machine_configuration
VirtualMachineConfiguration
Erforderlich

Die Konfiguration des virtuellen Computers für den Pool. Diese Eigenschaft und cloudServiceConfiguration schließen sich gegenseitig aus, und eine der Eigenschaften muss angegeben werden.

resize_timeout
<xref:timedelta>
Erforderlich

Dieses Timeout gilt nur für die manuelle Skalierung. es hat keine Auswirkung, wenn enableAutoScale auf true festgelegt ist. Der Standardwert beträgt 15 Minuten. Der Mindestwert beträgt 5 Minuten. Wenn Sie einen Wert kleiner als 5 Minuten angeben, gibt der Batch-Dienst einen Fehler zurück. Wenn Sie die REST-API direkt aufrufen, ist der HTTP-status Code 400 (ungültige Anforderung).

target_dedicated_nodes
int
Erforderlich

Die gewünschte Anzahl dedizierter Computeknoten im Pool. Diese Eigenschaft darf nicht angegeben werden, wenn enableAutoScale auf true festgelegt ist. Wenn enableAutoScale auf false festgelegt ist, müssen Sie entweder targetDedicatedNodes, targetLowPriorityNodes oder beides festlegen.

target_low_priority_nodes
int
Erforderlich

Die gewünschte Anzahl von Computeknoten mit spot/low-priority im Pool. Diese Eigenschaft darf nicht angegeben werden, wenn enableAutoScale auf true festgelegt ist. Wenn enableAutoScale auf false festgelegt ist, müssen Sie entweder targetDedicatedNodes, targetLowPriorityNodes oder beides festlegen.

enable_auto_scale
bool
Erforderlich

Gibt an, ob die Poolgröße im Laufe der Zeit automatisch angepasst werden soll. Bei false muss mindestens einer von targetDedicatedNodes und targetLowPriorityNodes angegeben werden. Wenn true, ist die autoScaleFormula-Eigenschaft erforderlich, und der Pool ändert die Größe automatisch gemäß der Formel. Der Standardwert ist „FALSE“.

auto_scale_formula
str
Erforderlich

Diese Eigenschaft darf nicht angegeben werden, wenn enableAutoScale auf false festgelegt ist. Dies ist erforderlich, wenn enableAutoScale auf true festgelegt ist. Die Formel wird auf Gültigkeit überprüft, bevor der Pool erstellt wird. Wenn die Formel ungültig ist, lehnt der Batch-Dienst die Anforderung mit detaillierten Fehlerinformationen ab. Weitere Informationen zum Angeben dieser Formel finden Sie unter Automatisches Skalieren von Computeknoten in einem Azure Batch Pool (https://azure.microsoft.com/documentation/articles/batch-automatic-scaling/).

auto_scale_evaluation_interval
<xref:timedelta>
Erforderlich

Der Standardwert beträgt 15 Minuten. Der Mindest- und Höchstwert beträgt 5 Minuten bzw. 168 Stunden. Wenn Sie einen Wert angeben, der kleiner als 5 Minuten oder größer als 168 Stunden ist, gibt der Batch-Dienst einen Fehler zurück. Wenn Sie die REST-API direkt aufrufen, ist der HTTP-status Code 400 (ungültige Anforderung).

enable_inter_node_communication
bool
Erforderlich

Gibt an, ob der Pool die direkte Kommunikation zwischen Computeknoten zulässt. Das Aktivieren der Knotenkommunikation schränkt die maximale Größe des Pools aufgrund von Bereitstellungseinschränkungen für die Computeknoten des Pools ein. Dies kann dazu führen, dass der Pool seine gewünschte Größe nicht erreicht. Der Standardwert ist „FALSE“.

network_configuration
NetworkConfiguration
Erforderlich

Die Netzwerkkonfiguration für den Pool.

start_task
StartTask
Erforderlich

Ein Task, der auf jedem Computeknoten ausgeführt werden soll, wenn er dem Pool beitritt. Der Task wird ausgeführt, wenn der Computeknoten dem Pool hinzugefügt wird oder wenn der Computeknoten neu gestartet wird.

certificate_references
list[CertificateReference]
Erforderlich

Für Windows-Knoten installiert der Batch-Dienst die Zertifikate im angegebenen Zertifikatspeicher und Speicherort. Für Linux-Computeknoten werden die Zertifikate in einem Verzeichnis innerhalb des Arbeitsverzeichnisses Task gespeichert, und eine Umgebungsvariable AZ_BATCH_CERTIFICATES_DIR wird für den Task bereitgestellt, um diesen Speicherort abzufragen. Für Zertifikate mit Sichtbarkeit von "remoteUser" wird im Basisverzeichnis des Benutzers (z. B. /home/{benutzername}/certs) ein Verzeichnis "certs" erstellt, und Zertifikate werden in diesem Verzeichnis platziert. Warnung: Diese Eigenschaft ist veraltet und wird nach Februar 2024 entfernt. Verwenden Sie stattdessen die Azure KeyVault-Erweiterung .

application_package_references
list[ApplicationPackageReference]
Erforderlich

Beim Erstellen eines Pools muss die Anwendungs-ID des Pakets voll qualifiziert sein (/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}). Änderungen an Paketverweisen wirken sich auf alle neuen Knoten aus, die dem Pool beitreten, wirken sich jedoch nicht auf Computeknoten aus, die sich bereits im Pool befinden, bis sie neu gestartet oder ein erneutes Image erstellt werden. Es gibt maximal 10 Paketverweise für einen bestimmten Pool.

application_licenses
list[str]
Erforderlich

Die Liste der Anwendungslizenzen muss eine Teilmenge der verfügbaren Batch-Dienstanwendungslizenzen sein. Wenn eine Lizenz angefordert wird, die nicht unterstützt wird, schlägt die Poolerstellung fehl.

task_slots_per_node
int
Erforderlich

Die Anzahl von Taskslots, die verwendet werden können, um gleichzeitige Tasks auf einem einzelnen Computeknoten im Pool auszuführen. Der Standardwert ist 1. Der Maximalwert ist der 4-fache der Anzahl der Kerne des vmSize-Pools oder 256.

task_scheduling_policy
TaskSchedulingPolicy
Erforderlich

Wie Aufgaben auf Computeknoten in einem Pool verteilt werden. Wenn nicht angegeben, ist der Standardwert spread.

user_accounts
list[UserAccount]
Erforderlich
metadata
list[MetadataItem]
Erforderlich

Der Batch-Dienst weist Metadaten keine Bedeutung zu. es dient ausschließlich der Verwendung von Benutzercode.

mount_configuration
list[MountConfiguration]
Erforderlich

Binden Sie den Speicher mithilfe des auf Azure-Dateifreigabe, NFS, CIFS oder Blobfuse basierenden Dateisystems ein.

target_node_communication_mode
str oder NodeCommunicationMode
Erforderlich

Der kommunikationsmodus für den gewünschten Knoten für den Pool. Wenn der Wert nicht angegeben wird, lautet der Standardwert Default. Mögliche Werte: "default", "classic", "simplified"

Methoden

as_dict

Gibt ein Dict zurück, das mit json.dump JSONify sein kann.

Bei erweiterter Verwendung kann optional ein Rückruf als Parameter verwendet werden:

Key ist der Attributname, der in Python verwendet wird. Attr_desc ist ein Diktat von Metadaten. Enthält derzeit "type" mit dem Msrest-Typ und "key" mit dem RestAPI-codierten Schlüssel. Value ist der aktuelle Wert in diesem Objekt.

Die zurückgegebene Zeichenfolge wird verwendet, um den Schlüssel zu serialisieren. Wenn der Rückgabetyp eine Liste ist, wird dies als hierarchische Ergebnisdikt betrachtet.

Sehen Sie sich die drei Beispiele in dieser Datei an:

  • attribute_transformer

  • full_restapi_key_transformer

  • last_restapi_key_transformer

Wenn Sie eine XML-Serialisierung wünschen, können Sie die kwargs is_xml=True übergeben.

deserialize

Analysieren Sie eine str mithilfe der RestAPI-Syntax, und geben Sie ein Modell zurück.

enable_additional_properties_sending
from_dict

Analysieren eines Diktats mit dem angegebenen Schlüsselextraktor gibt ein Modell zurück.

Berücksichtigen Sie standardmäßig Schlüsselextraktoren (rest_key_case_insensitive_extractor, attribute_key_case_insensitive_extractor und last_rest_key_case_insensitive_extractor)

is_xml_model
serialize

Gibt den JSON-Code zurück, der von diesem Modell an Azure gesendet wird.

Dies ist ein Alias für as_dict(full_restapi_key_transformer, keep_readonly=False).

Wenn Sie eine XML-Serialisierung wünschen, können Sie die kwargs is_xml=True übergeben.

validate

Überprüfen Sie dieses Modell rekursiv, und geben Sie eine Liste von ValidationError zurück.

as_dict

Gibt ein Dict zurück, das mit json.dump JSONify sein kann.

Bei erweiterter Verwendung kann optional ein Rückruf als Parameter verwendet werden:

Key ist der Attributname, der in Python verwendet wird. Attr_desc ist ein Diktat von Metadaten. Enthält derzeit "type" mit dem Msrest-Typ und "key" mit dem RestAPI-codierten Schlüssel. Value ist der aktuelle Wert in diesem Objekt.

Die zurückgegebene Zeichenfolge wird verwendet, um den Schlüssel zu serialisieren. Wenn der Rückgabetyp eine Liste ist, wird dies als hierarchische Ergebnisdikt betrachtet.

Sehen Sie sich die drei Beispiele in dieser Datei an:

  • attribute_transformer

  • full_restapi_key_transformer

  • last_restapi_key_transformer

Wenn Sie eine XML-Serialisierung wünschen, können Sie die kwargs is_xml=True übergeben.

as_dict(keep_readonly=True, key_transformer=<function attribute_transformer>, **kwargs)

Parameter

key_transformer
<xref:function>

Eine Schlüsseltransformatorfunktion.

keep_readonly
Standardwert: True

Gibt zurück

Ein JSON-kompatibles Diktatobjekt

Rückgabetyp

deserialize

Analysieren Sie eine str mithilfe der RestAPI-Syntax, und geben Sie ein Modell zurück.

deserialize(data, content_type=None)

Parameter

data
str
Erforderlich

Eine str-Struktur, die die RestAPI-Struktur verwendet. Standardmäßig JSON.

content_type
str
Standardwert: None

Json standardmäßig, legen Sie application/xml fest, wenn XML.

Gibt zurück

Eine instance dieses Modells

Ausnahmen

DeserializationError if something went wrong

enable_additional_properties_sending

enable_additional_properties_sending()

from_dict

Analysieren eines Diktats mit dem angegebenen Schlüsselextraktor gibt ein Modell zurück.

Berücksichtigen Sie standardmäßig Schlüsselextraktoren (rest_key_case_insensitive_extractor, attribute_key_case_insensitive_extractor und last_rest_key_case_insensitive_extractor)

from_dict(data, key_extractors=None, content_type=None)

Parameter

data
dict
Erforderlich

Ein Diktat mithilfe der RestAPI-Struktur

content_type
str
Standardwert: None

Json standardmäßig, legen Sie application/xml fest, wenn XML.

key_extractors
Standardwert: None

Gibt zurück

Eine instance dieses Modells

Ausnahmen

DeserializationError if something went wrong

is_xml_model

is_xml_model()

serialize

Gibt den JSON-Code zurück, der von diesem Modell an Azure gesendet wird.

Dies ist ein Alias für as_dict(full_restapi_key_transformer, keep_readonly=False).

Wenn Sie eine XML-Serialisierung wünschen, können Sie die kwargs is_xml=True übergeben.

serialize(keep_readonly=False, **kwargs)

Parameter

keep_readonly
bool
Standardwert: False

Wenn Sie die schreibgeschützten Attribute serialisieren möchten

Gibt zurück

Ein JSON-kompatibles Diktatobjekt

Rückgabetyp

validate

Überprüfen Sie dieses Modell rekursiv, und geben Sie eine Liste von ValidationError zurück.

validate()

Gibt zurück

Eine Liste mit Validierungsfehlern

Rückgabetyp