PoolSpecification Klasa
Specyfikacja tworzenia nowej puli.
Aby wysyłać na platformę Azure wszystkie wymagane parametry, należy wypełnić wszystkie wymagane parametry.
- Dziedziczenie
-
PoolSpecification
Konstruktor
PoolSpecification(*, vm_size: str, display_name: str = None, cloud_service_configuration=None, virtual_machine_configuration=None, task_slots_per_node: int = None, task_scheduling_policy=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, user_accounts=None, metadata=None, mount_configuration=None, target_node_communication_mode=None, **kwargs)
Parametry
- display_name
- str
Nazwa wyświetlana nie musi być unikatowa i może zawierać znaki Unicode o maksymalnej długości 1024.
- vm_size
- str
Wymagane. Aby uzyskać informacje o dostępnych rozmiarach maszyn wirtualnych w pulach, zobacz Wybieranie rozmiaru maszyny wirtualnej dla węzłów obliczeniowych w puli Azure Batch (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes).
- cloud_service_configuration
- CloudServiceConfiguration
Konfiguracja usługi w chmurze dla puli. Tę właściwość należy określić, jeśli pula musi zostać utworzona przy użyciu maszyn wirtualnych PaaS platformy Azure. Ta właściwość i element virtualMachineConfiguration wykluczają się wzajemnie i należy określić jedną z właściwości. Jeśli żadna z nich nie zostanie określona, usługa Batch zwróci błąd; Jeśli bezpośrednio wywołujesz interfejs API REST, kod stanu HTTP to 400 (Nieprawidłowe żądanie). Nie można określić tej właściwości, jeśli konto usługi Batch zostało utworzone z właściwością poolAllocationMode ustawioną na wartość "UserSubscription".
- virtual_machine_configuration
- VirtualMachineConfiguration
Konfiguracja maszyny wirtualnej dla puli. Tę właściwość należy określić, jeśli pula musi zostać utworzona przy użyciu maszyn wirtualnych IaaS platformy Azure. Ta właściwość i właściwość cloudServiceConfiguration wzajemnie się wykluczają i należy określić jedną z właściwości. Jeśli żadna z nich nie zostanie określona, usługa Batch zwróci błąd; Jeśli bezpośrednio wywołujesz interfejs API REST, kod stanu HTTP to 400 (Nieprawidłowe żądanie).
- task_slots_per_node
- int
Liczba miejsc zadań, których można użyć do uruchamiania współbieżnych zadań w jednym węźle obliczeniowym w puli. Wartość domyślna to 1. Wartość maksymalna jest mniejsza niż 4 razy mniejsza niż liczba rdzeni vmSize puli lub 256.
- task_scheduling_policy
- TaskSchedulingPolicy
Jak zadania są dystrybuowane między węzłami obliczeniowymi w puli. Jeśli nie zostanie określony, wartość domyślna zostanie rozłożona.
- resize_timeout
- <xref:timedelta>
Ten limit czasu dotyczy tylko skalowania ręcznego; nie ma żadnego efektu, gdy właściwość enableAutoScale jest ustawiona na wartość true. Wartość domyślna to 15 minut. Wartość minimalna to 5 minut. Jeśli określisz wartość mniejszą niż 5 minut, usługa Batch odrzuci żądanie z błędem; Jeśli bezpośrednio wywołujesz interfejs API REST, kod stanu HTTP to 400 (Nieprawidłowe żądanie).
- target_dedicated_nodes
- int
Żądana liczba dedykowanych węzłów obliczeniowych w puli. Nie można określić tej właściwości, jeśli właściwość enableAutoScale jest ustawiona na wartość true. Jeśli parametr enableAutoScale ma wartość false, musisz ustawić wartość targetDedicatedNodes, targetLowPriorityNodes lub oba te węzły.
- target_low_priority_nodes
- int
Żądana liczba węzłów obliczeniowych typu spot/low-priority w puli. Nie można określić tej właściwości, jeśli właściwość enableAutoScale jest ustawiona na wartość true. Jeśli parametr enableAutoScale ma wartość false, musisz ustawić wartość targetDedicatedNodes, targetLowPriorityNodes lub oba te węzły.
- enable_auto_scale
- bool
Określa, czy rozmiar puli powinien być automatycznie dostosowywany w miarę upływu czasu. Jeśli wartość false, należy określić co najmniej jeden z elementów targetDedicatedNodes i targetLowPriorityNodes. Jeśli wartość true, wymagany jest element autoScaleFormula. Rozmiar puli jest automatycznie zmieniany zgodnie z formułą. Wartość domyślna to false.
- auto_scale_formula
- str
Nie można określić tej właściwości, jeśli właściwość enableAutoScale jest ustawiona na wartość false. Jest to wymagane, jeśli parametr enableAutoScale jest ustawiony na wartość true. Formuła jest sprawdzana pod kątem ważności przed utworzeniem puli. Jeśli formuła jest nieprawidłowa, usługa Batch odrzuca żądanie ze szczegółowymi informacjami o błędzie.
- auto_scale_evaluation_interval
- <xref:timedelta>
Wartość domyślna to 15 minut. Minimalna i maksymalna wartość to odpowiednio 5 minut i 168 godzin. Jeśli określisz wartość mniejszą niż 5 minut lub większą niż 168 godzin, usługa Batch odrzuci żądanie z nieprawidłowym błędem wartości właściwości; Jeśli bezpośrednio wywołujesz interfejs API REST, kod stanu HTTP to 400 (Nieprawidłowe żądanie).
- enable_inter_node_communication
- bool
Określa, czy pula zezwala na bezpośrednią komunikację między węzłami obliczeniowymi. Włączenie komunikacji między węzłami ogranicza maksymalny rozmiar puli z powodu ograniczeń wdrażania w węzłach obliczeniowych puli. Może to spowodować, że pula nie osiągnie żądanego rozmiaru. Wartość domyślna to false.
- start_task
- StartTask
Zadanie do uruchomienia w każdym węźle obliczeniowym podczas dołączania do puli. Zadanie jest uruchamiane po dodaniu węzła obliczeniowego do puli lub ponownym uruchomieniu węzła obliczeniowego.
- certificate_references
- list[CertificateReference]
W przypadku węzłów systemu Windows usługa Batch instaluje certyfikaty w określonym magazynie certyfikatów i lokalizacji. W przypadku węzłów obliczeniowych systemu Linux certyfikaty są przechowywane w katalogu roboczym Zadania, a zmienna środowiskowa AZ_BATCH_CERTIFICATES_DIR jest dostarczana do zadania w celu wykonania zapytania o tę lokalizację. W przypadku certyfikatów z widocznością "remoteUser" katalog "certs" jest tworzony w katalogu głównym użytkownika (np. /home/{user-name}/certs) i Certyfikaty są umieszczane w tym katalogu. Ostrzeżenie: Ta właściwość jest przestarzała i zostanie usunięta po lutym 2024 r. Zamiast tego użyj rozszerzenia Azure KeyVault .
- application_package_references
- list[ApplicationPackageReference]
Podczas tworzenia puli identyfikator aplikacji pakietu musi być w pełni kwalifikowany (/subscriptions/{subscriptionId}/resourceGroups/{resourceGroups}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}). Zmiany odwołań do pakietu mają wpływ na wszystkie nowe węzły łączące pulę, ale nie mają wpływu na węzły obliczeniowe, które znajdują się już w puli, dopóki nie zostaną ponownie uruchomione lub ponownie z obrazu. W dowolnej puli istnieje maksymalnie 10 odwołań do pakietu.
Lista licencji aplikacji musi być podzbiorem dostępnych licencji aplikacji usługi Batch. Jeśli zażądano licencji, która nie jest obsługiwana, tworzenie puli zakończy się niepowodzeniem. Dozwolone licencje dostępne na basenie to "maya", "vray", "3dsmax", "arnold". Dodatkowa opłata jest naliczana za każdą licencję aplikacji dodaną do puli.
- user_accounts
- list[UserAccount]
- metadata
- list[MetadataItem]
Usługa Batch nie przypisuje żadnego znaczenia do metadanych; jest on przeznaczony wyłącznie do korzystania z kodu użytkownika.
- mount_configuration
- list[MountConfiguration]
Obsługuje to Azure Files, NFS, CIFS/SMB i Blobfuse.
- target_node_communication_mode
- str lub NodeCommunicationMode
Żądany tryb komunikacji węzła dla puli. Jeśli pominięto, wartością domyślną jest Wartość domyślna. Możliwe wartości to: "default", "classic", "simplified"
Metody
as_dict |
Zwróć dykt, który może być JSONify przy użyciu pliku json.dump. Użycie zaawansowane może opcjonalnie używać wywołania zwrotnego jako parametru: Klucz to nazwa atrybutu używana w języku Python. Attr_desc to dykt metadanych. Obecnie zawiera ciąg "type" z typem msrest i kluczem zakodowanym za pomocą interfejsu RESTAPI. Wartość jest bieżącą wartością w tym obiekcie. Zwrócony ciąg będzie używany do serializacji klucza. Jeśli zwracany typ jest listą, jest to uznawane za hierarchiczny dykt wyniku. Zobacz trzy przykłady w tym pliku:
Jeśli chcesz serializacji XML, możesz przekazać kwargs is_xml=True. |
deserialize |
Analizowanie ciągu przy użyciu składni restAPI i zwracanie modelu. |
enable_additional_properties_sending | |
from_dict |
Przeanalizuj dykt przy użyciu danego modułu wyodrębniającego klucz, który zwraca model. Domyślnie należy rozważyć wyodrębnianie kluczy (rest_key_case_insensitive_extractor, attribute_key_case_insensitive_extractor i last_rest_key_case_insensitive_extractor) |
is_xml_model | |
serialize |
Zwróć kod JSON, który zostanie wysłany na platformę Azure z tego modelu. Jest to alias as_dict (full_restapi_key_transformer, keep_readonly=False). Jeśli chcesz serializacji XML, możesz przekazać kwargs is_xml=True. |
validate |
Zweryfikuj ten model cyklicznie i zwróć listę błędu ValidationError. |
as_dict
Zwróć dykt, który może być JSONify przy użyciu pliku json.dump.
Użycie zaawansowane może opcjonalnie używać wywołania zwrotnego jako parametru:
Klucz to nazwa atrybutu używana w języku Python. Attr_desc to dykt metadanych. Obecnie zawiera ciąg "type" z typem msrest i kluczem zakodowanym za pomocą interfejsu RESTAPI. Wartość jest bieżącą wartością w tym obiekcie.
Zwrócony ciąg będzie używany do serializacji klucza. Jeśli zwracany typ jest listą, jest to uznawane za hierarchiczny dykt wyniku.
Zobacz trzy przykłady w tym pliku:
attribute_transformer
full_restapi_key_transformer
last_restapi_key_transformer
Jeśli chcesz serializacji XML, możesz przekazać kwargs is_xml=True.
as_dict(keep_readonly=True, key_transformer=<function attribute_transformer>, **kwargs)
Parametry
- key_transformer
- <xref:function>
Funkcja transformatora klucza.
- keep_readonly
Zwraca
Obiekt zgodny z dyktacją JSON
Typ zwracany
deserialize
Analizowanie ciągu przy użyciu składni restAPI i zwracanie modelu.
deserialize(data, content_type=None)
Parametry
- content_type
- str
Domyślnie w formacie JSON ustaw wartość application/xml, jeśli plik XML.
Zwraca
Wystąpienie tego modelu
Wyjątki
enable_additional_properties_sending
enable_additional_properties_sending()
from_dict
Przeanalizuj dykt przy użyciu danego modułu wyodrębniającego klucz, który zwraca model.
Domyślnie należy rozważyć wyodrębnianie kluczy (rest_key_case_insensitive_extractor, attribute_key_case_insensitive_extractor i last_rest_key_case_insensitive_extractor)
from_dict(data, key_extractors=None, content_type=None)
Parametry
- content_type
- str
Domyślnie w formacie JSON ustaw wartość application/xml, jeśli plik XML.
- key_extractors
Zwraca
Wystąpienie tego modelu
Wyjątki
is_xml_model
is_xml_model()
serialize
Zwróć kod JSON, który zostanie wysłany na platformę Azure z tego modelu.
Jest to alias as_dict (full_restapi_key_transformer, keep_readonly=False).
Jeśli chcesz serializacji XML, możesz przekazać kwargs is_xml=True.
serialize(keep_readonly=False, **kwargs)
Parametry
Zwraca
Obiekt zgodny z dyktacją JSON
Typ zwracany
validate
Zweryfikuj ten model cyklicznie i zwróć listę błędu ValidationError.
validate()
Zwraca
Lista błędów walidacji
Typ zwracany
Azure SDK for Python