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ó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
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ó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
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
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>
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
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
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
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
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>
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
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.
- start_task
- StartTask
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]
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]
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.
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
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
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]
- metadata
- list[MetadataItem]
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]
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
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:
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
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
Retornos
Uma instância desse modelo
Exceções
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
- key_extractors
Retornos
Uma instância desse modelo
Exceções
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
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
Azure SDK for Python