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:
- A extensão do Azure Machine Learning pode ser implantada no AKS ou no Kubernetes habilitado para Azure Arc em regiões com suporte listadas no suporte à região do Kubernetes habilitado para Azure Arc.
Planeamento de recursos recomendado
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 oaz 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çãosystem:serviceaccount:{KUBERNETES-COMPUTE-NAMESPACE}:default
seKUBERNETES-COMPUTE-NAMESPACE
fordefault
.
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.
- 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
- Crie PVC no mesmo namespace do Kubernetes com cargas de trabalho de ML. No
metadata
, você deve adicionar rótuloml.azure.com/pvc: "true"
para ser reconhecido pelo Aprendizado de Máquina do Azure e adicionar anotaçãoml.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
- 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.
- 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
Manchaamlarc 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
Manchaamlarc 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
Manchaamlarc resource group (has this <workspace X>)
Manchaamlarc <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
Manchaamlarc resource group (has this <workspace X>)
Manchaamlarc workspace (has this <compute X>)
Manchaamlarc <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 cominferenceRouterServiceType=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
.
Implante
ing-azureml-fe.yaml
executando:kubectl apply -f ing-azureml-fe.yaml
Verifique o log do controlador de entrada para obter o status da implantação.
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.
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
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>
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 nomeing-azureml-fe-tls.yaml
de arquivo .Implante ing-azureml-fe-tls.yaml executando
kubectl apply -f ing-azureml-fe-tls.yaml
Verifique o log do controlador de entrada para obter o status da implantação.
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.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. |