Referência para configurar o cluster do Kubernetes para o Azure Machine Learning

Este artigo contém informações de referência para configurar o Kubernetes com o Azure Machine Learning.

Versão e região do Kubernetes suportadas

  • Os clusters Kubernetes que instalam a extensão do Azure Machine Learning têm uma janela de suporte de versão de "N-2", que está alinhada com a política de suporte de versão do Serviço Kubernetes do Azure (AKS), onde 'N' é a versão secundária mais recente do Serviço Kubernetes do Azure.

    • Por exemplo, se o AKS introduzir 1.20.a hoje, as versões 1.20.a, 1.20.b, 1.19.c, 1.19.d, 1.18.e e 1.18.f serão suportadas.

    • Se os clientes estiverem executando uma versão do Kubernetes sem suporte, eles serão solicitados a atualizar ao solicitar suporte para o cluster. Os clusters que executam versões do Kubernetes sem suporte não são cobertos pelas políticas de suporte da extensão do Azure Machine Learning.

  • Disponibilidade da região de extensão do Azure Machine Learning:

Quando você implanta a extensão do Azure Machine Learning, alguns serviços relacionados são implantados no cluster do Kubernetes para o Azure Machine Learning. A tabela a seguir lista os Serviços Relacionados e seu uso de recursos no cluster:

Implantação/Daemonset Réplica # Formação Inferência Pedido de CPU (m) Limite da CPU (m) Solicitação de memória (Mi) Limite de memória (Mi)
métricas-controlador-gerente 1 10 100 20 300
prometheus-operator 1 100 400 128 512
Prometeu 1 100 1000 512 4096
kube-estado-métricas 1 10 100 32 256
gateway 1 50 500 256 2048
fluente-bit 1 por nó 10 200 100 300
inferência-operador-controlador-gerente 1 N/A 100 1000 128 1024
amlarc-identidade-controlador 1 N/A 200 1000 200 1024
amlarc-identidade-proxy 1 N/A 200 1000 200 1024
azureml-ingress-nginx-controller 1 N/A 100 1000 64 512
AzureML-FE-V2 1 (para fins de teste)
ou
3 (para fins de produção)
N/A 900 2000 800 1200
Implantação on-line 1 por implantação Criado pelo usuário N/A <definição de usuário> <definição de usuário> <definição de usuário> <definição de usuário>
online-deployment/identidade-sidecar 1 por implantação N/A 10 50 100 100
Operador-AML 1 N/A 20 1020 124 2168
Vulcão-Admissão 1 N/A 10 100 64 256
Volcano-Controller 1 N/A 50 500 128 512
vulcão-cedular 1 N/A 50 500 128 512

Excluindo suas próprias implantações/pods, os requisitos mínimos totais de recursos do sistema são os seguintes:

Cenário Inferência ativada Treinamento habilitado Pedido de CPU (m) Limite da CPU (m) Solicitação de memória (Mi) Limite de memória (Mi) Contagens de nós Tamanho mínimo recomendado da VM Correspondente AKS VM SKU
Para o teste N/A 1780 8300 2440 12296 1 Nó 2 vCPU, 7 GiB de memória, 6400 IOPS, 1500Mbps BW DS2v2
Para o teste N/A 410 4420 1492 10960 1 Nó 2 vCPU, 7 GiB de memória, 6400 IOPS, 1500Mbps BW DS2v2
Para o teste 1910 10420 2884 15744 1 Nó 4 vCPU, memória de 14 GiB, 12800 IOPS, 1500Mbps BW DS3v2
Para Produção N/A 3600 12700 4240 15296 3 Nó(s) 4 vCPU, memória de 14 GiB, 12800 IOPS, 1500Mbps BW DS3v2
Para Produção N/A 410 4420 1492 10960 1 Nó(s) 8 vCPU, 28GiB Memroy, 25600 IOPs, 6000Mbps BW DS4v2
Para Produção 3730 14820 4684 18744 3 Nó(s) 4 vCPU, memória de 14 GiB, 12800 IOPS, 1500Mbps BW DS4v2

Nota

  • Para fins de teste, você deve consultar a solicitação de recurso.
  • Para fins de produção, você deve consultar o limite de recursos.

Importante

Aqui estão algumas outras considerações para referência:

  • Para maior largura de banda de rede e melhor desempenho de E/S de disco, recomendamos uma SKU maior.
    • Tome DV2/DSv2 como exemplo, usando o SKU grande pode reduzir o tempo de extração de imagem para um melhor desempenho de rede/armazenamento.
    • Mais informações sobre a reserva AKS podem ser encontradas em AKS reservation.
  • Se você estiver usando o cluster AKS, talvez seja necessário considerar sobre o limite de tamanho em uma imagem de contêiner no AKS, mais informações que você pode encontrar no limite de tamanho de imagem de contêiner AKS.

Pré-requisitos para clusters ARO ou OCP

Desativar o Security Enhanced Linux (SELinux)

O conjunto de dados do Azure Machine Learning (um recurso do SDK v1 usado em trabalhos de treinamento do Azure Machine Learning) não é suportado em máquinas com o SELinux habilitado. Portanto, você precisa desabilitar selinux todos os trabalhadores para usar o conjunto de dados do Azure Machine Learning.

Configuração privilegiada para ARO e OCP

Para a implantação da extensão do Azure Machine Learning em cluster ARO ou OCP, conceda acesso privilegiado às contas de serviço do Azure Machine Learning, execute oc edit scc privileged o comando e adicione as seguintes contas de serviço em "usuários:":

  • system:serviceaccount:azure-arc:azure-arc-kube-aad-proxy-sa
  • system:serviceaccount:azureml:{EXTENSION-NAME}-kube-state-metrics
  • system:serviceaccount:azureml:prom-admission
  • system:serviceaccount:azureml:default
  • system:serviceaccount:azureml:prom-operator
  • system:serviceaccount:azureml:load-amlarc-selinux-policy-sa
  • system:serviceaccount:azureml:azureml-fe-v2
  • system:serviceaccount:azureml:prom-prometheus
  • system:serviceaccount:{KUBERNETES-COMPUTE-NAMESPACE}:default
  • system:serviceaccount:azureml:azureml-ingress-nginx
  • system:serviceaccount:azureml:azureml-ingress-nginx-admission

Nota

  • {EXTENSION-NAME}: é o nome da extensão especificado com o az k8s-extension create --name comando CLI.
  • {KUBERNETES-COMPUTE-NAMESPACE}: é o namespace da computação do Kubernetes especificado ao anexar a computação ao espaço de trabalho do Azure Machine Learning. Ignore a configuração system:serviceaccount:{KUBERNETES-COMPUTE-NAMESPACE}:default se KUBERNETES-COMPUTE-NAMESPACE for default.

Detalhes de registo recolhidos

Alguns logs sobre cargas de trabalho do Azure Machine Learning no cluster serão coletados por meio de componentes de extensão, como status, métricas, ciclo de vida, etc. A lista a seguir mostra todos os detalhes de log coletados, incluindo o tipo de logs coletados e para onde foram enviados ou armazenados.

Pod Descrição de recursos Informações detalhadas de registro
amlarc-identidade-controlador Solicite e renove o token do Registro de Contêiner do Azure/Azure por meio da identidade gerenciada. Usado apenas quando enableInference=true é definido ao instalar a extensão. Ele tem logs de rastreamento para status na obtenção de identidade para pontos de extremidade para autenticação com o serviço Azure Machine Learning.
amlarc-identidade-proxy Solicite e renove o token do Registro de Contêiner do Azure/Azure por meio da identidade gerenciada. Usado apenas quando enableInference=true é definido ao instalar a extensão. Ele tem logs de rastreamento para status na obtenção de identidade para o cluster se autenticar com o serviço Azure Machine Learning.
Operador-AML Gerencie o ciclo de vida dos trabalhos de treinamento. Os logs contêm o status do pod de trabalho de treinamento do Azure Machine Learning no cluster.
AzureML-FE-V2 O componente front-end que roteia solicitações de inferência de entrada para serviços implantados. Logs de acesso no nível da solicitação, incluindo ID da solicitação, hora de início, código de resposta, detalhes do erro e durações para latência da solicitação. Logs de rastreamento para alterações de metadados de serviço, status de integridade do serviço em execução, etc. para fins de depuração.
gateway O gateway é usado para comunicar e enviar dados de um lado para o outro. Rastreie logs em solicitações dos serviços do Azure Machine Learning para os clusters.
exame de saúde -- Os logs contêm azureml o status do recurso de namespace (extensão do Azure Machine Learning) para diagnosticar o que torna a extensão não funcional.
inferência-operador-controlador-gerente Gerencie o ciclo de vida dos pontos de extremidade de inferência. Os logs contêm o ponto de extremidade de inferência do Azure Machine Learning e o status do pod de implantação no cluster.
métricas-controlador-gerente Gerencie a configuração do Prometheus. Rastreie logs para o status do carregamento de tarefas de treinamento e métricas de implantação de inferência sobre a utilização da CPU e a utilização da memória.
servidor de retransmissão O servidor de retransmissão só é necessário no cluster conectado ao arco e não será instalado no cluster AKS. O servidor de retransmissão funciona com o Azure Relay para se comunicar com os serviços de nuvem. Os logs contêm informações de nível de solicitação da retransmissão do Azure.

Os trabalhos do Azure Machine Learning conectam-se ao armazenamento de dados personalizado

Volume Persistente (PV) e Declaração de Volume Persistente (PVC) são conceitos do Kubernetes, permitindo que o usuário forneça e consuma vários recursos de armazenamento.

  1. Crie PV, tome NFS como exemplo,
apiVersion: v1
kind: PersistentVolume
metadata:
  name: nfs-pv 
spec:
  capacity:
    storage: 1Gi 
  accessModes:
    - ReadWriteMany 
  persistentVolumeReclaimPolicy: Retain
  storageClassName: ""
  nfs: 
    path: /share/nfs
    server: 20.98.110.84 
    readOnly: false
  1. Crie PVC no mesmo namespace do Kubernetes com cargas de trabalho de ML. No metadata, você deve adicionar rótulo ml.azure.com/pvc: "true" para ser reconhecido pelo Aprendizado de Máquina do Azure e adicionar anotação ml.azure.com/mountpath: <mount path> para definir o caminho de montagem.
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: nfs-pvc  
  namespace: default
  labels:
    ml.azure.com/pvc: "true"
  annotations:
    ml.azure.com/mountpath: "/mnt/nfs"
spec:
  storageClassName: ""
  accessModes:
  - ReadWriteMany      
  resources:
     requests:
       storage: 1Gi

Importante

  • Somente o comando: trabalho/componente, trabalho/componente de hiperdrive e implantação em lote suportam armazenamento de dados personalizado de PVC(s). > * O ponto de extremidade on-line em tempo real, o trabalho AutoML e o trabalho PRS não suportam armazenamento de dados personalizado de PVC(s).
  • Além disso, apenas os pods no mesmo namespace do Kubernetes com o(s) PVC(s) serão montados no volume. O cientista de dados é capaz de acessar o mount path especificado na anotação de PVC no trabalho. O trabalho AutoML e o trabalho Prs não terão acesso ao(s) PVC(s).

Rejeições e tolerâncias do Azure Machine Learning suportadas

Taint e Toleration são conceitos do Kubernetes que trabalham juntos para garantir que os pods não sejam programados em nós inadequados.

Os clusters Kubernetes integrados com o Azure Machine Learning (incluindo clusters AKS e Arc Kubernetes) agora suportam manchas e tolerâncias específicas do Azure Machine Learning, permitindo que os usuários adicionem manchas específicas do Azure Machine Learning nos nós dedicados ao Azure Machine Learning, para evitar que cargas de trabalho que não sejam do Azure Machine Learning sejam agendadas nesses nós dedicados.

Suportamos apenas a colocação das manchas específicas do amlarc nos seus nós, que são definidos da seguinte forma:

Mancha Key valor Efeito Description
Amlarc global ml.azure.com/amlarc verdadeiro NoSchedule, NoExecute ou PreferNoSchedule Todas as cargas de trabalho do Azure Machine Learning, incluindo pods de serviço do sistema de extensão e pods de carga de trabalho de aprendizado de máquina, tolerariam essa amlarc overall mancha.
Sistema AMLARC ml.azure.com/amlarc-system verdadeiro NoSchedule, NoExecute ou PreferNoSchedule Apenas os pods de serviços do sistema de extensão do Azure Machine Learning tolerariam essa amlarc system mancha.
Carga de trabalho AMLARC ml.azure.com/amlarc-workload verdadeiro NoSchedule, NoExecute ou PreferNoSchedule Apenas pods de carga de trabalho de aprendizado de máquina tolerariam essa amlarc workload mancha.
Grupo de Recursos AMLARC ml.azure.com/resource-group <Nome do grupo de recursos> NoSchedule, NoExecute ou PreferNoSchedule Apenas pods de carga de trabalho de aprendizado de máquina criados a partir do grupo de recursos específico tolerariam essa amlarc resource group mancha.
Espaço de trabalho AMLARC ml.azure.com/workspace <nome do espaço de trabalho> NoSchedule, NoExecute ou PreferNoSchedule Apenas pods de carga de trabalho de aprendizado de máquina criados a partir do espaço de trabalho específico tolerariam essa amlarc workspace mancha.
Computação AMLARC ml.azure.com/compute <nome de computação> NoSchedule, NoExecute ou PreferNoSchedule Apenas pods de carga de trabalho de aprendizado de máquina criados com o destino de computação específico tolerariam essa amlarc compute mancha.

Gorjeta

  1. Para o Serviço Kubernetes do Azure (AKS), você pode seguir o exemplo em Práticas recomendadas para recursos avançados do agendador no Serviço Kubernetes do Azure (AKS) para aplicar manchas a pools de nós.
  2. Para clusters do Arc Kubernetes, como clusters Kubernetes locais, você pode usar kubectl taint o comando para adicionar manchas aos nós. Para obter mais exemplos, consulte a documentação do Kubernetes.

Melhores práticas

De acordo com seus requisitos de agendamento dos nós dedicados ao Azure Machine Learning, você pode adicionar várias manchas específicas do amlarc para restringir quais cargas de trabalho do Azure Machine Learning podem ser executadas em nós. Listamos as melhores práticas para o uso de manchas de amlarc:

  • Para evitar que cargas de trabalho que não sejam do Aprendizado de Máquina do Azure sejam executadas em nós/pools de nós dedicados ao Aprendizado de Máquina do Azure, basta adicionar a aml overall mancha a esses nós.
  • Para evitar que pods que não sejam do sistema sejam executados em nós/pools de nós dedicados ao Aprendizado de Máquina do Azure, você precisa adicionar as seguintes manchas:
    • amlarc overall Mancha
    • amlarc system Mancha
  • Para evitar que cargas de trabalho que não sejam de ml sejam executadas em nós/pools de nós dedicados ao Aprendizado de Máquina do Azure, você precisa adicionar as seguintes manchas:
    • amlarc overall Mancha
    • amlarc workloads Mancha
  • Para evitar que cargas de trabalho não criadas a partir do espaço de trabalho X sejam executadas em nós/pools de nós dedicados ao Aprendizado de Máquina do Azure, você precisa adicionar as seguintes manchas:
    • amlarc overall Mancha
    • amlarc resource group (has this <workspace X>) Mancha
    • amlarc <workspace X> Mancha
  • Para evitar que cargas de trabalho não criadas pelo destino de computação X sejam executadas em nós/pools de nós dedicados ao Aprendizado de Máquina do Azure, você precisa adicionar as seguintes manchas:
    • amlarc overall Mancha
    • amlarc resource group (has this <workspace X>) Mancha
    • amlarc workspace (has this <compute X>) Mancha
    • amlarc <compute X> Mancha

Integrar outro controlador de entrada com a extensão do Azure Machine Learning sobre HTTP ou HTTPS

Além do balanceador de carga de inferência padrão do Azure Machine Learning azureml-fe, você também pode integrar outros balanceadores de carga com a extensão do Azure Machine Learning por HTTP ou HTTPS.

Este tutorial ajuda a ilustrar como integrar o Nginx Ingress Controller ou o Azure Application Gateway.

Pré-requisitos

  • Implante a extensão do Azure Machine Learning com e allowInsecureConnections=True, para que o Nginx Ingress Controller possa lidar com inferenceRouterServiceType=ClusterIP a terminação TLS sozinha, em vez de entregá-la ao azureml-fe quando o serviço for exposto por HTTPS.
  • Para integrar com o Nginx Ingress Controller, você precisa de uma configuração de cluster Kubernetes com o Nginx Ingress Controller.
    • Crie um controlador básico: se você estiver começando do zero, consulte estas instruções.
  • Para integrar com o Gateway de Aplicativo do Azure, você precisa de uma configuração de cluster do Kubernetes com o Controlador de Ingresso do Gateway de Aplicativo do Azure.
    • Implantação Greenfield: Se você estiver começando do zero, consulte estas instruções.
    • Implantação de Brownfield: Se você tiver um cluster AKS e um Application Gateway existentes, consulte estas instruções.
  • Se você quiser usar HTTPS neste aplicativo, você precisa de um certificado x509 e sua chave privada.

Expor serviços por HTTP

Para expor o azureml-fe, usaremos o seguinte recurso de entrada:

# Nginx Ingress Controller example
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: azureml-fe
  namespace: azureml
spec:
  ingressClassName: nginx
  rules:
  - http:
      paths:
      - path: /
        backend:
          service:
            name: azureml-fe
            port:
              number: 80
        pathType: Prefix

Essa entrada expõe o azureml-fe serviço e a implantação selecionada como um back-end padrão do Nginx Ingress Controller.

# Azure Application Gateway example
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: azureml-fe
  namespace: azureml
spec:
  ingressClassName: azure-application-gateway
  rules:
  - http:
      paths:
      - path: /
        backend:
          service:
            name: azureml-fe
            port:
              number: 80
        pathType: Prefix

Essa entrada expõe o azureml-fe serviço e a implantação selecionada como um back-end padrão do Application Gateway.

Salve o recurso de entrada acima como ing-azureml-fe.yaml.

  1. Implante ing-azureml-fe.yaml executando:

    kubectl apply -f ing-azureml-fe.yaml
    
  2. Verifique o log do controlador de entrada para obter o status da implantação.

  3. Agora o azureml-fe aplicativo deve estar disponível. Você pode verificar visitando:

    • Nginx Ingress Controller: o endereço público LoadBalancer do Nginx Ingress Controller
    • Azure Application Gateway: o endereço público do Application Gateway.
  4. Crie um trabalho de inferência e invoque.

    Nota

    Substitua o ip no scoring_uri pelo endereço público LoadBalancer do Nginx Ingress Controller antes de invocar.

Expor serviços por HTTPS

  1. Antes de implantar a entrada, você precisa criar um segredo do kubernetes para hospedar o certificado e a chave privada. Você pode criar um segredo de kubernetes executando

    kubectl create secret tls <ingress-secret-name> -n azureml --key <path-to-key> --cert <path-to-cert>
    
  2. Defina a seguinte entrada. Na entrada, especifique o nome do segredo na secretName seção.

    # Nginx Ingress Controller example
    apiVersion: networking.k8s.io/v1
    kind: Ingress
    metadata:
      name: azureml-fe
      namespace: azureml
    spec:
      ingressClassName: nginx
      tls:
      - hosts:
        - <domain>
        secretName: <ingress-secret-name>
      rules:
      - host: <domain>
        http:
          paths:
          - path: /
            backend:
              service:
                name: azureml-fe
                port:
                  number: 80
            pathType: Prefix
    
    # Azure Application Gateway example
    apiVersion: networking.k8s.io/v1
    kind: Ingress
    metadata:
      name: azureml-fe
      namespace: azureml
    spec:
      ingressClassName: azure-application-gateway
      tls:
      - hosts:
        - <domain>
        secretName: <ingress-secret-name>
      rules:
      - host: <domain>
        http:
          paths:
          - path: /
            backend:
              service:
                name: azureml-fe
                port:
                  number: 80
            pathType: Prefix
    

    Nota

    Substitua <domain> e <ingress-secret-name> no Ingress Resource acima pelo domínio apontando para LoadBalancer do controlador de ingresso Nginx/Application Gateway e nome do seu segredo. Armazene o recurso de ingresso acima em um nome ing-azureml-fe-tls.yamlde arquivo .

  3. Implante ing-azureml-fe-tls.yaml executando

    kubectl apply -f ing-azureml-fe-tls.yaml
    
  4. Verifique o log do controlador de entrada para obter o status da implantação.

  5. Agora o azureml-fe aplicativo está disponível em HTTPS. Você pode verificar isso visitando o endereço público LoadBalancer do Nginx Ingress Controller.

  6. Crie um trabalho de inferência e invoque.

    Nota

    Substitua o protocolo e o IP em scoring_uri por https e domínio apontando para LoadBalancer do Nginx Ingress Controller ou o Application Gateway antes de invocar.

Utilizar o Modelo do ARM para Implementar a Extensão

A extensão no cluster gerenciado pode ser implantada com o modelo ARM. Um modelo de exemplo pode ser encontrado no deployextension.json, com um arquivo de parâmetro de demonstração deployextension.parameters.json

Para usar o modelo de implantação de exemplo, edite o arquivo de parâmetro com o valor correto e execute o seguinte comando:

az deployment group create --name <ARM deployment name> --resource-group <resource group name> --template-file deployextension.json --parameters deployextension.parameters.json

Mais informações sobre como usar o modelo ARM podem ser encontradas no documento de modelo ARM

Nota de versão da extensão AzuremML

Nota

Novos recursos são lançados em um calendário quinzenal.

Date Versão Descrição da versão
26 de setembro, 2024 1.1.64 Vulnerabilidades corrigidas.
21 de novembro de 2023 1.1.39 Vulnerabilidades corrigidas. Mensagem de erro refinada. Maior estabilidade para a API do servidor de retransmissão.
1 de novembro de 2023 1.1.37 Atualize a versão do enviado do plano de dados.
11 de outubro de 2023 1.1.35 Corrija a imagem vulnerável. Correções de bugs.
25 de agosto de 2023 1.1.34 Corrija a imagem vulnerável. Retornar erro de identidade mais detalhado. Correções de bugs.
18 de julho de 2023 1.1.29 Adicione novos erros de operador de identidade. Correções de bugs.
4 de junho de 2023 1.1.28 Melhore o dimensionador automático para lidar com o pool de vários nós. Correções de bugs.
Abr 18 , 2023 1.1.26 Correções de bugs e vulnerabilidades.
27 de março de 2023 1.1.25 Adicione o acelerador de tarefas do Azure Machine Learning. Falha rápida para o trabalho de treinamento quando a configuração do SSH falhou. Reduza o intervalo de raspagem de Prometheus para 30s. Melhore as mensagens de erro para inferência. Corrija a imagem vulnerável.
7 de março de 2023 1.1.23 Altere o tipo de instância padrão para usar a memória 2Gi. Atualize as configurações de métricas para scoring-fe que adicionam 15s scrape_interval. Adicione a especificação de recursos para o sidecar mdc. Corrija a imagem vulnerável. Correções de bugs.
Fev 14, 2023 1.1.21 Correções de bugs.
Fev 7, 2023 1.1.19 Melhore a mensagem de retorno de erro para inferência. Atualize o tipo de instância padrão para usar o limite de memória 2Gi. Faça a verificação da integridade do cluster quanto à integridade do pod, cota de recursos, versão do Kubernetes e versão da extensão. Correções de erros
Dez 27, 2022 1.1.17 Mova o Fluent-bit do DaemonSet para sidecars. Adicione suporte ao MDC. Refine as mensagens de erro. Suporta trabalhos no modo cluster (windows, linux). Correções de erros
29 de novembro de 2022 1.1.16 Adicione a validação do tipo de instância pelo novo CRD. Tolerância de suporte. Encurte o nome do SVC. Carga de trabalho Hora principal. Várias correções de bugs e melhorias.
13 de setembro, 2022 1.1.10 Correções de bugs.
29 de agosto de 2022 1.1.9 Lógica de verificação de integridade melhorada. Correções de bugs.
jun 23, 2022 1.1.6 Correções de bugs.
jun 15, 2022 1.1.5 Treinamento atualizado para usar o novo tempo de execução comum para executar trabalhos. Removido o uso do Azure Relay para a extensão AKS. Removido o uso do barramento de serviço da extensão. Uso atualizado do contexto de segurança. Inferência azureml-fe atualizada para v2. Atualizado para usar o Volcano como agendador de trabalho de treinamento. Correções de bugs.
14 de outubro de 2021 1.0.37 Suporte de montagem em volume PV/PVC no trabalho de treinamento AMLArc.
16 de setembro de 2021 1.0.29 Novas regiões disponíveis, WestUS, CentralUS, NorthCentralUS, KoreaCentral. Capacidade de expansão da fila de trabalhos. Consulte os detalhes da fila de trabalhos no Azure Machine Learning Workspace Studio. Política de morte automática. Suporte max_run_duration_seconds em ScriptRunConfig. O sistema tenta cancelar automaticamente a execução se ela demorar mais do que o valor da configuração. Melhoria de desempenho no suporte ao dimensionamento automático de cluster. Implantação do agente Arc e da extensão de ML a partir do registro de contêiner local.
24 de agosto de 2021 1.0.28 O tipo de instância de computação é suportado no trabalho YAML. Atribua a identidade gerenciada à computação AMLArc.
10 de agosto de 2021 1.0.20 Novo suporte de distribuição Kubernetes, K3S - Kubernetes leves. Implante a extensão do Azure Machine Learning em seu cluster AKS sem se conectar via Azure Arc. Automated Machine Learning (AutoML) via Python SDK. Use a CLI 2.0 para anexar o cluster do Kubernetes ao Espaço de Trabalho do Azure Machine Learning. Otimize a utilização de recursos de CPU/memória de componentes de extensão do Azure Machine Learning.
2 de julho de 2021 1.0.13 Suporte a novas distribuições Kubernetes, OpenShift Kubernetes e GKE (Google Kubernetes Engine). Suporte de dimensionamento automático. Se o cluster Kubernetes gerenciado pelo usuário habilitar o dimensionamento automático, o cluster será automaticamente dimensionado ou dimensionado de acordo com o volume de execuções e implantações ativas. Melhoria de desempenho no lançador de tarefas, o que reduz muito o tempo de execução do trabalho.