Azure Machine Learning용 Kubernetes 클러스터 구성에 대한 참조

이 문서에는 Azure Machine Learning을 사용하여 Kubernetes를 구성하기 위한 참조 정보가 포함되어 있습니다.

지원되는 Kubernetes 버전 및 지역

  • Azure Machine Learning 확장을 설치하는 Kubernetes 클러스터에는 AKS(Azure Kubernetes Service) 버전 지원 정책과 일치하는 "N-2" 버전 지원 창이 있습니다. 여기서 'N'은 Azure Kubernetes Service의 최신 GA 부 버전입니다.

    • 예를 들어, AKS가 오늘 1.20.a를 도입하면 버전 1.20.a, 1.20.b, 1.19.c, 1.19.d, 1.18.e 및 1.18.f가 지원됩니다.

    • 고객이 지원되지 않는 Kubernetes 버전을 실행할 때 클러스터에 대한 지원을 요청하면 업그레이드하라는 메시지가 표시됩니다. 지원되지 않는 Kubernetes 릴리스를 실행하는 클러스터는 Azure Machine Learning 확장 지원 정책에서 다루지 않습니다.

  • Azure Machine Learning 확장 지역 가용성:

    • Azure Machine Learning 확장은 Azure Arc 지원 Kubernetes 지역 지원에 나열된 지원되는 지역의 AKS 또는 Azure Arc 지원 Kubernetes에 배포할 수 있습니다.

Azure Machine Learning 확장을 배포하면 일부 관련 서비스가 Azure Machine Learning용 Kubernetes 클러스터에 배포됩니다. 다음 표에서는 클러스터의 관련 서비스 및 해당 리소스 사용량을 나열합니다.

배포/디먼셋 복제본 # 학습 유추 CPU 요청(m) CPU 제한(m) 메모리 요청(Mi) 메모리 제한(Mi)
metrics-controller-manager 1 10 100 20 300
prometheus-operator 1 100 400 128 512
프로 메 테우 스 1 100 1000 512 4096
kube-state-metrics 1 10 100 32 256
gateway 1 50 500 256 2048
fluent-bit 노드당 1 10 200 100 300
inference-operator-controller-manager 1 해당 없음 100 1000 128 1024
amlarc-identity-controller 1 해당 없음 200 1000 200 1024
amlarc-identity-proxy 1 해당 없음 200 1000 200 1024
azureml-ingress-nginx-controller 1 해당 없음 100 1000 64 512
azureml-fe-v2 1 (테스트 용도)
또는
3 (프로덕션 용도)
해당 없음 900 2000 800 1200
온라인 배포 배포당 1 사용자가 만든 해당 없음 <사용자 정의> <사용자 정의> <사용자 정의> <사용자 정의>
online-deployment/identity-sidecar 배포당 1 해당 없음 10 50 100 100
aml-operator 1 해당 없음 20 1020 124 2168
volcano-admission 1 해당 없음 10 100 64 256
화산 컨트롤러 1 해당 없음 50 500 128 512
화산 스케줄러 1 해당 없음 50 500 128 512

사용자 고유의 배포/Pod를 제외하면 총 최소 시스템 리소스 요구 사항은 다음과 같습니다.

시나리오 유추 사용 사용 학습 CPU 요청(m) CPU 제한(m) 메모리 요청(Mi) 메모리 제한(Mi) 노드 수 권장되는 최소 VM 크기 해당 AKS VM SKU
테스트 해당 없음 1780 8300 2440 12296 노드 1 2개 vCPU, 7GiB 메모리, 6400 IOPS, 1500Mbps BW DS2v2
테스트 해당 없음 410 4420 1492 10960 노드 1 2개 vCPU, 7GiB 메모리, 6400 IOPS, 1500Mbps BW DS2v2
테스트 1910 10420 2884 15744 노드 1 4개 vCPU, 14GiB 메모리, 12800 IOPS, 1500Mbps BW DS3v2
프로덕션 해당 없음 3600 12700 4240 15296 3 노드 4개 vCPU, 14GiB 메모리, 12800 IOPS, 1500Mbps BW DS3v2
프로덕션 해당 없음 410 4420 1492 10960 노드 1개 8개 vCPU, 28GiB Memroy, 25600 IOP, 6000Mbps BW DS4v2
프로덕션 3730 14820 4684 18744 3 노드 4개 vCPU, 14GiB 메모리, 12800 IOPS, 1500Mbps BW DS4v2

참고 항목

  • 테스트 목적으로 리소스 요청을 tp 참조해야 합니다.
  • 프로덕션 목적을 위해 리소스 제한을 참조해야 합니다.

Important

참조에 대한 몇 가지 다른 고려 사항은 다음과 같습니다.

  • 더 높은 네트워크 대역폭 및 더 나은 디스크 I/O 성능을 위해 더 큰 SKU를 사용하는 것이 좋습니다.
    • 예를 들어 DV2/DSv2를 예로 들어 큰 SKU를 사용하면 네트워크/스토리지 성능 향상을 위해 이미지를 끌어당기는 시간을 줄일 수 있습니다.
    • AKS 예약에 대한 자세한 내용은 AKS 예약에서 찾을 수 있습니다.
  • AKS 클러스터를 사용하는 경우 AKS의 컨테이너 이미지 크기 제한을 고려해야 합니다. 자세한 내용은 AKS 컨테이너 이미지 크기 제한에서 찾을 수 있습니다.

ARO 또는 OCP 클러스터에 대한 필수 구성 요소

보안 강화 Linux 사용 안 함(SELinux)

Azure Machine Learning 데이터 세트 (Azure Machine Learning 학습 작업에 사용되는 SDK v1 기능)는 SELinux를 사용하도록 설정된 컴퓨터에서 지원되지 않습니다. 따라서 Azure Machine Learning 데이터 세트를 사용하려면 모든 작업자를 사용하지 않도록 설정 selinux 해야 합니다.

ARO 및 OCP에 대한 권한 있는 설정

ARO 또는 OCP 클러스터에서 Azure Machine Learning 확장 배포의 경우 Azure Machine Learning 서비스 계정에 대한 권한 있는 액세스 권한을 부여하고, 명령을 실행하고 oc edit scc privileged , "users:"에서 다음 서비스 계정을 추가합니다.

  • 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

참고 항목

  • {EXTENSION-NAME}: az k8s-extension create --name CLI 명령으로 지정된 확장 이름입니다.
  • {KUBERNETES-COMPUTE-NAMESPACE}: 컴퓨팅을 Azure Machine Learning 작업 영역에 연결할 때 지정된 Kubernetes 컴퓨팅의 네임스페이스입니다. KUBERNETES-COMPUTE-NAMESPACEdefault인 경우 system:serviceaccount:{KUBERNETES-COMPUTE-NAMESPACE}:default 구성을 건너뜁니다.

수집된 로그 세부 정보

클러스터의 Azure Machine Learning 워크로드에 대한 일부 로그는 확장 구성 요소(예: 상태, 메트릭, 수명 주기 등)를 통해 수집됩니다. 다음 목록에서는 수집된 로그의 유형과 로그가 전송되거나 저장된 위치를 포함하여 수집된 모든 로그 세부 정보를 보여 줍니다.

Pod 리소스 설명 세부 정보 로깅 정보
amlarc-identity-controller 관리 ID를 통해 Azure Blob/Azure Container Registry 토큰을 요청하고 갱신합니다. 확장을 설치할 때 enableInference=true 설정되는 경우에만 사용됩니다. 엔드포인트에서 Azure Machine Learning 서비스를 사용하여 인증할 ID를 가져오는 상태 대한 추적 로그가 있습니다.
amlarc-identity-proxy 관리 ID를 통해 Azure Blob/Azure Container Registry 토큰을 요청하고 갱신합니다. 확장을 설치할 때 enableInference=true 설정되는 경우에만 사용됩니다. Azure Machine Learning 서비스를 사용하여 인증할 클러스터의 ID를 가져오는 상태 대한 추적 로그가 있습니다.
aml-operator 학습 작업의 수명 주기를 관리합니다. 로그에는 클러스터에 상태 Azure Machine Learning 학습 작업 Pod가 포함됩니다.
azureml-fe-v2 들어오는 유추 요청을 배포된 서비스로 라우팅하는 프런트 엔드 구성 요소입니다. 요청 ID, 시작 시간, 응답 코드, 오류 세부 정보 및 요청 대기 시간 기간을 포함하여 요청 수준에서 로그에 액세스합니다. 디버깅을 위해 서비스 메타데이터 변경, 정상 상태 실행되는 서비스 등에 대한 추적 로그입니다.
gateway 게이트웨이는 통신하고 데이터를 보내고 받는 데 사용됩니다. Azure Machine Learning 서비스에서 클러스터로의 요청에 대한 로그를 추적합니다.
상태검사 -- 로그에는 확장이 작동하지 않는 원인을 진단하는 azureml 네임스페이스 리소스(Azure Machine Learning 확장) 상태가 포함됩니다.
inference-operator-controller-manager 유추 엔드포인트의 수명 주기를 관리합니다. 로그에는 클러스터의 Azure Machine Learning 유추 엔드포인트 및 배포 Pod 상태 포함됩니다.
metrics-controller-manager Prometheus에 대한 구성을 관리합니다. CPU 사용률 및 메모리 사용률에 대한 학습 작업 업로드 및 유추 배포 메트릭의 상태 대한 추적 로그입니다.
릴레이 서버 릴레이 서버는 arc 연결 클러스터에만 필요하며 AKS 클러스터에는 설치되지 않습니다. 릴레이 서버는 Azure Relay와 함께 작동하여 클라우드 서비스와 통신합니다. 로그에는 Azure Relay의 요청 수준 정보가 포함됩니다.

Azure Machine Learning 작업은 사용자 지정 데이터 스토리지와 연결됩니다.

PV(영구 볼륨) 및 PVC(영구 볼륨 클레임)는 Kubernetes 개념이므로 사용자가 다양한 스토리지 리소스를 제공하고 사용할 수 있습니다.

  1. PV를 만들고 NFS를 예로 들면,
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. ML 워크로드를 사용하여 동일한 Kubernetes 네임스페이스에 PVC를 만듭니다. 에서 Azure Machine Learning에서 metadata인식할 레이블 ml.azure.com/pvc: "true" 을 추가하고 주석 ml.azure.com/mountpath: <mount path> 을 추가하여 탑재 경로를 설정해야 합니다.
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

Important

  • 작업/구성 요소, 하이퍼드라이브 작업/구성 요소 및 일괄 처리 배포 명령만 PVC의 사용자 지정 데이터 스토리지를 지원합니다. > * 실시간 온라인 엔드포인트, AutoML 작업 및 PRS 작업은 PVC의 사용자 지정 데이터 스토리지를 지원하지 않습니다.
  • 또한 PVC와 동일한 Kubernetes 네임스페이스에 있는 Pod만 볼륨에 탑재됩니다. 데이터 과학자는 작업의 PVC 주석에 지정된 mount path에 액세스할 수 있습니다. AutoML 작업 및 Prs 작업은 PVC에 액세스할 수 없습니다.

지원되는 Azure Machine Learning 테인트 및 톨러레이션

테인트 및 톨러레이션은 Pod가 부적절한 노드에 예약되지 않도록 함께 작동하는 Kubernetes 개념입니다.

Azure Machine Learning(AKS 및 Arc Kubernetes 클러스터 포함)과 통합된 Kubernetes 클러스터는 이제 특정 Azure Machine Learning 테인트 및 허용을 지원하므로 사용자가 Azure Machine Learning 전용 노드에 특정 Azure Machine Learning taint를 추가하여 비 Azure Machine Learning 워크로드가 이러한 전용 노드에 예약되지 않도록 할 수 있습니다.

다음과 같이 정의된 노드에 amlarc 관련 taint를 배치하는 것만 지원합니다.

더러운 효과 설명
전체 amlarc ml.azure.com/amlarc true NoSchedule, NoExecute 또는 PreferNoSchedule 확장 시스템 서비스 Pod 및 Machine Learning 워크로드 Pod를 포함한 모든 Azure Machine Learning 워크로드는 이 amlarc overall 테인트를 허용합니다.
amlarc 시스템 ml.azure.com/amlarc-system true NoSchedule, NoExecute 또는 PreferNoSchedule Azure Machine Learning 확장 시스템 서비스 Pod만 이 amlarc system 테인트를 허용합니다.
amlarc 워크로드 ml.azure.com/amlarc-workload true NoSchedule, NoExecute 또는 PreferNoSchedule 기계 학습 워크로드 Pod만이 이 amlarc workload 오염을 용인합니다.
amlarc 리소스 그룹 ml.azure.com/resource-group <리소스 그룹 이름> NoSchedule, NoExecute 또는 PreferNoSchedule 특정 리소스 그룹에서 만든 기계 학습 워크로드 Pod만 이 amlarc resource group taint를 허용합니다.
amlarc 작업 영역 ml.azure.com/workspace <작업 영역 이름> NoSchedule, NoExecute 또는 PreferNoSchedule 특정 작업 영역에서 만든 기계 학습 워크로드 Pod만 이 amlarc workspace taint를 허용합니다.
amlarc 컴퓨팅 ml.azure.com/compute <컴퓨팅 이름> NoSchedule, NoExecute 또는 PreferNoSchedule 특정 컴퓨팅 대상으로 만든 기계 학습 워크로드 Pod만 이 amlarc compute taint를 허용합니다.

  1. AKS(Azure Kubernetes Service)의 경우 AKS(Azure Kubernetes Service)의 고급 스케줄러 기능에 대한 모범 사례의 예제를 따라 노드 풀에 taint를 적용할 수 있습니다.
  2. 온-프레미스 Kubernetes 클러스터와 같은 Arc Kubernetes 클러스터의 경우 명령을 사용하여 kubectl taint 노드에 taint를 추가할 수 있습니다. 자세한 예제는 Kubernetes 설명서를 참조 하세요.

모범 사례

Azure Machine Learning 전용 노드의 예약 요구 사항에 따라 여러 amlarc 관련 테인트를 추가하여 노드에서 실행할 수 있는 Azure Machine Learning 워크로드를 제한할 수 있습니다. amlarc taint 사용에 대한 모범 사례를 나열합니다.

  • Azure Machine Learning이 아닌 워크로드가 Azure Machine Learning 전용 노드/노드 풀에서 실행되지 않도록 하려면 이러한 노드에 aml overall 테인트를 추가하면 됩니다.
  • 비 시스템 Pod가 Azure Machine Learning 전용 노드/노드 풀에서 실행되지 않도록 하려면 다음 taint를 추가해야 합니다.
    • amlarc overall 더러운
    • amlarc system 더러운
  • 비ml 워크로드가 Azure Machine Learning 전용 노드/노드 풀에서 실행되지 않도록 하려면 다음 taint를 추가해야 합니다.
    • amlarc overall 더러운
    • amlarc workloads 더러운
  • 작업 영역 X에서 생성되지 않은 워크로드가 Azure Machine Learning 전용 노드/노드 풀에서 실행되지 않도록 하려면 다음 taint를 추가해야 합니다.
    • amlarc overall 더러운
    • amlarc resource group (has this <workspace X>) 더러운
    • amlarc <workspace X> 더러운
  • 컴퓨팅 대상 X에서 생성되지 않은 워크로드가 Azure Machine Learning 전용 노드/노드 풀에서 실행되지 않도록 하려면 다음 taint를 추가해야 합니다.
    • amlarc overall 더러운
    • amlarc resource group (has this <workspace X>) 더러운
    • amlarc workspace (has this <compute X>) 더러운
    • amlarc <compute X> 더러운

HTTP 또는 HTTPS를 통해 Azure Machine Learning 확장과 다른 수신 컨트롤러 통합

기본 Azure Machine Learning 유추 부하 분산 장치 azureml-fe 외에도 HTTP 또는 HTTPS를 통해 Azure Machine Learning 확장과 다른 부하 분산 장치를 통합할 수 있습니다.

이 자습서에서는 Nginx 수신 컨트롤러 또는 Azure 애플리케이션 게이트웨이를 통합하는 방법을 보여 줍니다.

필수 조건

HTTP를 통해 서비스 공개

azureml-fe를 노출하기 위해 다음 수신 리소스를 사용합니다.

# 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

이 수신은 azureml-fe 서비스와 선택된 배포를 Nginx 수신 컨트롤러의 기본 백 엔드로 노출합니다.

# 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

이 수신은 azureml-fe 서비스와 선택한 배포를 Application Gateway의 기본 백 엔드로 노출합니다.

위의 수신 리소스를 ing-azureml-fe.yaml로 저장합니다.

  1. 다음을 실행하여 배포 ing-azureml-fe.yaml 합니다.

    kubectl apply -f ing-azureml-fe.yaml
    
  2. 수신 컨트롤러 로그에서 배포 상태를 확인합니다.

  3. 이제 azureml-fe 애플리케이션을 사용할 수 있습니다. 다음을 방문하여 확인할 수 있습니다.

    • Nginx 수신 컨트롤러: Nginx 수신 컨트롤러의 공용 LoadBalancer 주소
    • Azure 애플리케이션 게이트웨이: Application Gateway의 공용 주소입니다.
  4. 유추 작업을 만들고 호출합니다.

    참고 항목

    scoring_uri ip를 호출하기 전에 Nginx 수신 컨트롤러의 공용 LoadBalancer 주소로 바꿉니다.

HTTPS를 통해 서비스 노출

  1. 수신을 배포하기 전에 인증서 및 프라이빗 키를 호스트하는 kubernetes 비밀을 만들어야 합니다. 실행하여 kubernetes 비밀을 만들 수 있습니다.

    kubectl create secret tls <ingress-secret-name> -n azureml --key <path-to-key> --cert <path-to-cert>
    
  2. 다음 수신을 정의합니다. 수신에서 secretName 섹션의 비밀 이름을 지정합니다.

    # 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
    

    참고 항목

    <ingress-secret-name> 위의 수신 리소스를 Nginx 수신 컨트롤러/Application GatewayLoadBalancer 및 비밀 이름을 가리키는 do기본로 바꿉 <domain> 니다. 위의 수신 리소스를 파일 이름 ing-azureml-fe-tls.yaml에 저장합니다.

  3. 실행하여 ing-azureml-fe-tls.yaml 배포

    kubectl apply -f ing-azureml-fe-tls.yaml
    
  4. 수신 컨트롤러 로그에서 배포 상태를 확인합니다.

  5. 이제 HTTPS에서 azureml-fe 애플리케이션을 사용할 수 있습니다. Nginx 수신 컨트롤러의 공용 LoadBalancer 주소를 방문하여 이를 검사 수 있습니다.

  6. 유추 작업을 만들고 호출합니다.

    참고 항목

    scoring_uri 프로토콜 및 IP를 https로 바꾸고기본 호출하기 전에 Nginx 수신 컨트롤러 또는 Application Gateway의 LoadBalancer를 가리킵니다.

ARM 템플릿을 사용하여 확장 배포

ARM 템플릿을 사용하여 관리형 클러스터의 확장을 배포할 수 있습니다. 데모 매개 변수 파일 deployextension.parameters.json을 사용하여 deployextension.json에서 샘플 템플릿을 찾을 수 있습니다.

샘플 배포 템플릿을 사용하려면 매개 변수 파일을 올바른 값으로 편집하고 다음 명령을 실행합니다.

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

ARM 템플릿을 사용하는 방법에 대한 자세한 내용은 ARM 템플릿 문서에서 찾을 수 있습니다.

AzuremML 확장 릴리스 정보

참고 항목

새 기능은 격주 일정에 릴리스됩니다.

Date Version 버전 설명
2023년 11월 21일 1.1.39 취약성이 수정되었습니다. 구체화된 오류 메시지입니다. relayserver API의 안정성이 향상되었습니다.
2023년 11월 1일 1.1.37 데이터 평면 envoy 버전을 업데이트합니다.
2023년 10월 11일 1.1.35 취약한 이미지를 수정합니다. 버그 수정.
2023년 8월 25일 1.1.34 취약한 이미지를 수정합니다. 더 자세한 ID 오류를 반환합니다. 버그 수정.
2023년 7월 18일 1.1.29 새로운 ID 연산자 오류를 추가합니다. 버그 수정.
2023년 6월 4일 1.1.28 여러 노드 풀을 처리하도록 자동 크기 조정 처리를 개선합니다. 버그 수정.
2023년 4월 18일 1.1.26 버그 수정 및 취약성이 수정되었습니다.
2023년 3월 27일 1.1.25 Azure Machine Learning 작업 제한을 추가합니다. SSH 설정이 실패하면 학습 작업이 빠르게 실패합니다. Prometheus 스크랩 간격을 30초로 줄입니다. 유추를 위한 오류 메시지를 개선합니다. 취약한 이미지를 수정합니다.
2023년 3월 7일 1.1.23 2Gi 메모리를 사용하도록 기본 인스턴스 형식을 변경합니다. 15초 scrape_interval을 추가하는 scoring-fe에 대한 메트릭 구성을 업데이트합니다. mdc 사이드카에 대한 리소스 사양을 추가합니다. 취약한 이미지를 수정합니다. 버그 수정.
2023년 2월 14일 1.1.21 버그 수정.
2023년 2월 7일 1.1.19 유추를 위해 오류 반환 메시지를 개선합니다. 2Gi 메모리 제한을 사용하도록 기본 인스턴스 유형을 업데이트합니다. Pod 상태, 리소스 할당량, Kubernetes 버전 및 확장 버전에 대한 클러스터 상태 검사 수행합니다. 버그 수정
2022년 12월 27일 1.1.17 Fluent-bit를 DaemonSet에서 사이드카로 이동합니다. MDC 지원을 추가합니다. 오류 메시지를 구체화합니다. 클러스터 모드(windows, Linux) 작업을 지원합니다. 버그 수정
2022년 11월 29일 1.1.16 새 CRD를 통해 인스턴스 형식 유효성 검사를 추가합니다. 허용 오차를 지원합니다. SVC 이름을 줄입니다. 워크로드 코어 시간. 여러 버그 수정 및 개선 사항.
2022년 9월 13일 1.1.10 버그 수정.
2022년 8월 29일 1.1.9 성능 검사 논리가 향상되었습니다. 버그 수정.
2022년 6월 23일 1.1.6 버그 수정.
2022년 6월 15일 1.1.5 새 공용 런타임을 사용하여 작업을 실행하도록 학습이 업데이트되었습니다. AKS 확장에 대한 Azure Relay 사용이 제거되었습니다. 확장에서 서비스 버스 사용량이 제거되었습니다. 보안 컨텍스트 사용이 업데이트되었습니다. 유추 azureml-fe를 v2로 업데이트했습니다. 화산을 학습 작업 스케줄러로 사용하도록 업데이트되었습니다. 버그 수정.
2021년 10월 14일 1.0.37 AMLArc 학습 작업에서 PV/PVC 볼륨 탑재 지원을 제공합니다.
2021년 9월 16일 1.0.29 사용 가능한 새 지역, WestUS, CentralUS, NorthCentralUS, KoreaCentral. 작업 큐 확장성. Azure Machine Learning Workspace Studio에서 작업 큐 세부 정보를 참조하세요. 자동 살인 정책. ScriptRunConfig에서 max_run_duration_seconds 지원합니다. 설정값보다 시간이 오래 걸릴 경우 시스템은 자동으로 실행을 취소하려고 시도합니다. 클러스터 자동 크기 조정 지원의 성능 향상 온-프레미스 컨테이너 레지스트리에서 Arc 에이전트 및 ML 확장 배포
2021년 8월 24일 1.0.28 컴퓨팅 인스턴스 유형은 작업 YAML에서 지원됩니다. AMLArc 컴퓨팅에 관리 ID를 할당합니다.
2021년 8월 10일 1.0.20 새로운 Kubernetes 배포 지원, K3S - 경량 Kubernetes. Azure Arc를 통해 연결하지 않고 AKS 클러스터에 Azure Machine Learning 확장을 배포합니다. Python SDK를 통한 AutoML(자동화된 Machine Learning). 2.0 CLI를 사용하여 Kubernetes 클러스터를 Azure Machine Learning 작업 영역에 연결합니다. Azure Machine Learning 확장 구성 요소 CPU/메모리 리소스 사용률을 최적화합니다.
2021년 7월 2일 1.0.13 새로운 Kubernetes 배포 지원, OpenShift Kubernetes 및 GKE(Google Kubernetes 엔진). 자동 크기 조정 지원. 사용자 관리되는 Kubernetes 클러스터가 자동 크기 조정을 사용하도록 설정하는 경우 클러스터는 활성 실행 및 배포의 볼륨에 따라 자동으로 크기 조정되거나 크기 조정됩니다. 작업 시작 관리자의 성능이 향상되어 작업 실행 시간이 크게 단축됩니다.