PoolAddParameter Classe

Um pool no serviço Lote do Azure a ser adicionado.

Todos os parâmetros necessários devem ser preenchidos para enviar ao Azure.

Herança
PoolAddParameter

Construtor

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)

Parâmetros

id
str
Obrigatório

Obrigatórios. A ID pode conter qualquer combinação de caracteres alfanuméricos, incluindo hifens e sublinhados, e não pode conter mais de 64 caracteres. A ID não diferencia maiúsculas de minúsculas e diferencia maiúsculas de minúsculas (ou seja, você pode não ter duas IDs de pool em uma Conta que diferem apenas por caso).

display_name
str
Obrigatório

O nome de exibição não precisa ser exclusivo e pode conter caracteres Unicode até um comprimento máximo de 1024.

vm_size
str
Obrigatório

Obrigatórios. Para obter informações sobre os tamanhos disponíveis de máquinas virtuais para pools de Serviços de Nuvem (pools criados com cloudServiceConfiguration), consulte Tamanhos para Serviços de Nuvem (https://azure.microsoft.com/documentation/articles/cloud-services-sizes-specs/). O Lote dá suporte a todos os tamanhos de VM Serviços de Nuvem, exceto ExtraSmall, A1V2 e A2V2. Para obter informações sobre os tamanhos de VM disponíveis para Pools usando imagens do Máquinas Virtuais Marketplace (pools criados com virtualMachineConfiguration) consulte Tamanhos para Máquinas Virtuais (Linux) (https://azure.microsoft.com/documentation/articles/virtual-machines-linux-sizes/) ou Tamanhos para Máquinas Virtuais (Windows) (https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/). O Lote dá suporte a todos os tamanhos de VM do Azure, exceto STANDARD_A0 e aqueles com armazenamento premium (STANDARD_GS, STANDARD_DS e séries STANDARD_DSV2).

cloud_service_configuration
CloudServiceConfiguration
Obrigatório

A configuração do serviço de nuvem para o Pool. Essa propriedade e virtualMachineConfiguration são mutuamente exclusivas e uma das propriedades deve ser especificada. Essa propriedade não poderá ser especificada se a Conta do Lote foi criada com sua propriedade poolAllocationMode definida como 'UserSubscription'.

virtual_machine_configuration
VirtualMachineConfiguration
Obrigatório

A configuração da máquina virtual para o Pool. Essa propriedade e cloudServiceConfiguration são mutuamente exclusivas e uma das propriedades deve ser especificada.

resize_timeout
<xref:timedelta>
Obrigatório

Esse tempo limite se aplica apenas ao dimensionamento manual; ele não tem efeito quando enableAutoScale é definido como true. O valor padrão é 15 minutos. O valor mínimo é 5 minutos. Se você especificar um valor inferior a 5 minutos, o serviço do Lote retornará um erro; se você estiver chamando a API REST diretamente, o código http status será 400 (solicitação incorreta).

target_dedicated_nodes
int
Obrigatório

O número desejado de nós de computação dedicados no pool. Essa propriedade não deverá ser especificada se enableAutoScale estiver definido como true. Se enableAutoScale estiver definido como false, você deverá definir targetDedicatedNodes, targetLowPriorityNodes ou ambos.

target_low_priority_nodes
int
Obrigatório

O número desejado de nós de computação spot/de baixa prioridade no pool. Essa propriedade não deverá ser especificada se enableAutoScale estiver definido como true. Se enableAutoScale estiver definido como false, você deverá definir targetDedicatedNodes, targetLowPriorityNodes ou ambos.

enable_auto_scale
bool
Obrigatório

Se o tamanho do Pool deve ser ajustado automaticamente ao longo do tempo. Se false, pelo menos um dos targetDedicatedNodes e targetLowPriorityNodes devem ser especificados. Se for true, a propriedade autoScaleFormula será necessária e o Pool será redimensionado automaticamente de acordo com a fórmula. O valor padrão é false.

auto_scale_formula
str
Obrigatório

Essa propriedade não deve ser especificada se enableAutoScale estiver definido como false. Ele será necessário se enableAutoScale estiver definido como true. A fórmula é verificada quanto à validade antes da criação do Pool. Se a fórmula não for válida, o serviço do Lote rejeitará a solicitação com informações detalhadas de erro. Para obter mais informações sobre como especificar essa fórmula, consulte 'Dimensionar automaticamente nós de computação em um pool de Lote do Azure' (https://azure.microsoft.com/documentation/articles/batch-automatic-scaling/).

auto_scale_evaluation_interval
<xref:timedelta>
Obrigatório

O valor padrão é 15 minutos. O valor mínimo e máximo são 5 minutos e 168 horas, respectivamente. Se você especificar um valor menor que 5 minutos ou superior a 168 horas, o serviço do Lote retornará um erro; se você estiver chamando a API REST diretamente, o código http status será 400 (solicitação incorreta).

enable_inter_node_communication
bool
Obrigatório

Se o Pool permite comunicação direta entre nós de computação. Habilitar a comunicação entre nós limita o tamanho máximo do Pool devido a restrições de implantação nos Nós de Computação do Pool. Isso pode fazer com que o Pool não atinja o tamanho desejado. O valor padrão é false.

network_configuration
NetworkConfiguration
Obrigatório

A configuração de rede para o Pool.

start_task
StartTask
Obrigatório

Uma Tarefa especificada para ser executada em cada Nó de Computação à medida que ele ingressa no Pool. A Tarefa é executada quando o Nó de Computação é adicionado ao Pool ou quando o Nó de Computação é reiniciado.

certificate_references
list[CertificateReference]
Obrigatório

Para nós do Windows, o serviço lote instala os Certificados no repositório e local especificados do Certificado. Para nós de computação do Linux, os Certificados são armazenados em um diretório dentro do diretório de trabalho tarefa e uma variável de ambiente AZ_BATCH_CERTIFICATES_DIR é fornecida à Tarefa para consultar esse local. Para Certificados com visibilidade de 'remoteUser', um diretório 'certs' é criado no diretório base do usuário (por exemplo, /home/{user-name}/certs) e Certificados são colocados nesse diretório. Aviso: essa propriedade foi preterida e será removida após fevereiro de 2024. Em vez disso, use a Extensão do Azure KeyVault .

application_package_references
list[ApplicationPackageReference]
Obrigatório

Ao criar um pool, a ID do aplicativo do pacote deve ser totalmente qualificada (/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}). As alterações nas referências de pacote afetam todos os novos nós que ingressam no Pool, mas não afetam os Nós de Computação que já estão no Pool até que sejam reinicializados ou reimagem. Há no máximo 10 referências de pacote em qualquer pool especificado.

application_licenses
list[str]
Obrigatório

A lista de licenças de aplicativo deve ser um subconjunto de licenças de aplicativo de serviço do Lote disponíveis. Se uma licença for solicitada sem suporte, a criação do pool falhará.

task_slots_per_node
int
Obrigatório

O número de slots de tarefas que podem ser usados para executar tarefas simultâneas em um único nó de computação no pool. O valor padrão é 1. O valor máximo é o menor de 4 vezes o número de núcleos do vmSize do pool ou 256.

task_scheduling_policy
TaskSchedulingPolicy
Obrigatório

Como as tarefas são distribuídas entre nós de computação em um pool. Se não for especificado, o padrão será distribuído.

user_accounts
list[UserAccount]
Obrigatório
metadata
list[MetadataItem]
Obrigatório

O serviço do Lote não atribui nenhum significado aos metadados; ele é apenas para o uso do código do usuário.

mount_configuration
list[MountConfiguration]
Obrigatório

Monte o armazenamento usando o compartilhamento de arquivos do Azure, NFS, CIFS ou sistema de arquivos baseado em Blobfuse.

target_node_communication_mode
str ou NodeCommunicationMode
Obrigatório

O modo de comunicação de nó desejado para o pool. Se omitido, o valor padrão será Default. Os valores possíveis incluem: 'default', 'classic', 'simplificado'

Métodos

as_dict

Retornar um ditado que pode ser JSONify usando json.dump.

O uso avançado pode, opcionalmente, usar um retorno de chamada como parâmetro:

Key é o nome do atributo usado no Python. Attr_desc é um ditado de metadados. Atualmente, contém 'type' com o tipo msrest e 'key' com a chave codificada restAPI. Value é o valor atual neste objeto.

A cadeia de caracteres retornada será usada para serializar a chave. Se o tipo de retorno for uma lista, isso será considerado um dict de resultado hierárquico.

Confira os três exemplos neste arquivo:

  • attribute_transformer

  • full_restapi_key_transformer

  • last_restapi_key_transformer

Se você quiser serialização XML, poderá passar os kwargs is_xml=True.

deserialize

Analise um str usando a sintaxe RestAPI e retorne um modelo.

enable_additional_properties_sending
from_dict

Analisar um ditado usando determinado extrator de chave retorna um modelo.

Por padrão, considere extratores de chave (rest_key_case_insensitive_extractor, attribute_key_case_insensitive_extractor e last_rest_key_case_insensitive_extractor)

is_xml_model
serialize

Retorne o JSON que seria enviado para o azure desse modelo.

Esse é um alias para as_dict(full_restapi_key_transformer, keep_readonly=False).

Se você quiser serialização XML, poderá passar os kwargs is_xml=True.

validate

Valide esse modelo recursivamente e retorne uma lista de ValidationError.

as_dict

Retornar um ditado que pode ser JSONify usando json.dump.

O uso avançado pode, opcionalmente, usar um retorno de chamada como parâmetro:

Key é o nome do atributo usado no Python. Attr_desc é um ditado de metadados. Atualmente, contém 'type' com o tipo msrest e 'key' com a chave codificada restAPI. Value é o valor atual neste objeto.

A cadeia de caracteres retornada será usada para serializar a chave. Se o tipo de retorno for uma lista, isso será considerado um dict de resultado hierárquico.

Confira os três exemplos neste arquivo:

  • attribute_transformer

  • full_restapi_key_transformer

  • last_restapi_key_transformer

Se você quiser serialização XML, poderá passar os kwargs is_xml=True.

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

Parâmetros

key_transformer
<xref:function>

Uma função de transformador de chave.

keep_readonly
valor padrão: True

Retornos

Um objeto compatível com JSON de ditado

Tipo de retorno

deserialize

Analise um str usando a sintaxe RestAPI e retorne um modelo.

deserialize(data, content_type=None)

Parâmetros

data
str
Obrigatório

Um str usando a estrutura RestAPI. JSON por padrão.

content_type
str
valor padrão: None

JSON por padrão, defina application/xml se XML.

Retornos

Uma instância desse modelo

Exceções

DeserializationError if something went wrong

enable_additional_properties_sending

enable_additional_properties_sending()

from_dict

Analisar um ditado usando determinado extrator de chave retorna um modelo.

Por padrão, considere extratores de chave (rest_key_case_insensitive_extractor, attribute_key_case_insensitive_extractor e last_rest_key_case_insensitive_extractor)

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

Parâmetros

data
dict
Obrigatório

Um ditado usando a estrutura RestAPI

content_type
str
valor padrão: None

JSON por padrão, defina application/xml se XML.

key_extractors
valor padrão: None

Retornos

Uma instância desse modelo

Exceções

DeserializationError if something went wrong

is_xml_model

is_xml_model()

serialize

Retorne o JSON que seria enviado para o azure desse modelo.

Esse é um alias para as_dict(full_restapi_key_transformer, keep_readonly=False).

Se você quiser serialização XML, poderá passar os kwargs is_xml=True.

serialize(keep_readonly=False, **kwargs)

Parâmetros

keep_readonly
bool
valor padrão: False

Se você quiser serializar os atributos somente leitura

Retornos

Um objeto compatível com JSON de ditado

Tipo de retorno

validate

Valide esse modelo recursivamente e retorne uma lista de ValidationError.

validate()

Retornos

Uma lista de erros de validação

Tipo de retorno