Dokumentacja dotycząca konfigurowania klastra Kubernetes dla usługi Azure Machine Learning
Ten artykuł zawiera informacje referencyjne dotyczące konfigurowania platformy Kubernetes przy użyciu usługi Azure Machine Learning.
Obsługiwana wersja i region platformy Kubernetes
Klastry Kubernetes instalujące rozszerzenie usługi Azure Machine Learning mają okno obsługi wersji "N-2", które jest zgodne z zasadami obsługi wersji usługi Azure Kubernetes Service (AKS), gdzie "N" jest najnowszą wersją pomocniczą usługi Azure Kubernetes Service.
Jeśli na przykład usługa AKS wprowadza dzisiaj 1.20.a, wersje 1.20.a, 1.20.b, 1.19.c, 1.19.d, 1.18.e i 1.18.f są obsługiwane.
Jeśli klienci korzystają z nieobsługiwanej wersji rozwiązania Kubernetes, są proszeni o uaktualnienie podczas żądania pomocy technicznej dla klastra. Klastry z nieobsługiwaną wersją rozwiązania Kubernetes nie są objęte zasadami obsługi rozszerzeń usługi Azure Machine Learning.
Dostępność regionu rozszerzenia usługi Azure Machine Learning:
- Rozszerzenie Azure Machine Learning można wdrożyć w usłudze AKS lub na platformie Kubernetes z obsługą usługi Azure Arc w obsługiwanych regionach wymienionych w regionie kubernetes z obsługą usługi Azure Arc.
Zalecane planowanie zasobów
Podczas wdrażania rozszerzenia usługi Azure Machine Learning niektóre powiązane usługi są wdrażane w klastrze Kubernetes na potrzeby usługi Azure Machine Learning. W poniższej tabeli wymieniono powiązane usługi i ich użycie zasobów w klastrze:
Wdrażanie/daemonset | Replika # | Szkolenia | Wnioskowanie | Żądanie procesora CPU (m) | Limit procesora CPU (m) | Żądanie pamięci (Mi) | Limit pamięci (Mi) |
---|---|---|---|---|---|---|---|
metrics-controller-manager | 1 | ✓ | ✓ | 10 | 100 | 20 | 300 |
prometheus-operator | 1 | ✓ | ✓ | 100 | 400 | 128 | 512 |
Prometeusz | 1 | ✓ | ✓ | 100 | 1000 | 512 | 4096 |
kube-state-metrics | 1 | ✓ | ✓ | 10 | 100 | 32 | 256 |
brama | 1 | ✓ | ✓ | 50 | 500 | 256 | 2048 |
fluent-bit | 1 na węzeł | ✓ | ✓ | 10 | 200 | 100 | 300 |
inference-operator-controller-manager | 1 | ✓ | Nie dotyczy | 100 | 1000 | 128 | 1024 |
amlarc-identity-controller | 1 | ✓ | Nie dotyczy | 200 | 1000 | 200 | 1024 |
amlarc-identity-proxy | 1 | ✓ | Nie dotyczy | 200 | 1000 | 200 | 1024 |
azureml-ingress-nginx-controller | 1 | ✓ | Nie dotyczy | 100 | 1000 | 64 | 512 |
azureml-fe-v2 | 1 (do celów testowych) lub 3 (do celów produkcyjnych) |
✓ | Nie dotyczy | 900 | 2000 | 800 | 1200 |
wdrażanie w trybie online | 1 na wdrożenie | Utworzony przez użytkownika | Nie dotyczy | <definiowanie przez użytkownika> | <definiowanie przez użytkownika> | <definiowanie przez użytkownika> | <definiowanie przez użytkownika> |
online-deployment/identity-sidecar | 1 na wdrożenie | ✓ | Nie dotyczy | 10 | 50 | 100 | 100 |
aml-operator | 1 | Nie dotyczy | ✓ | 20 | 1020 | 124 | 2168 |
wstęp do wulkanu | 1 | Nie dotyczy | ✓ | 10 | 100 | 64 | 256 |
kontroler wulkanu | 1 | Nie dotyczy | ✓ | 50 | 500 | 128 | 512 |
wulkan-schedular | 1 | Nie dotyczy | ✓ | 50 | 500 | 128 | 512 |
Z wyłączeniem własnych wdrożeń/zasobników łączne minimalne wymagania dotyczące zasobów systemowych są następujące:
Scenariusz | Włączone wnioskowanie | Włączone szkolenie | Żądanie procesora CPU (m) | Limit procesora CPU (m) | Żądanie pamięci (Mi) | Limit pamięci (Mi) | Liczba węzłów | Zalecany minimalny rozmiar maszyny wirtualnej | Odpowiadająca jednostka SKU maszyny wirtualnej usługi AKS |
---|---|---|---|---|---|---|---|---|---|
Do testowania | ✓ | Nie dotyczy | 1780 | 8300 | 2440 | 12296 | 1 węzeł | 2 procesory wirtualne, 7 GiB pamięci, 6400 operacji we/wy na sekundę, 1500 Mb/s BW | DS2v2 |
Do testowania | Nie dotyczy | ✓ | 410 | 4420 | 1492 | 10960 | 1 węzeł | 2 procesory wirtualne, 7 GiB pamięci, 6400 operacji we/wy na sekundę, 1500 Mb/s BW | DS2v2 |
Do testowania | ✓ | ✓ | 1910 | 10420 | 2884 | 15744 | 1 węzeł | 4 procesory wirtualne, 14 GiB pamięci, 12800 operacji we/wy na sekundę, 1500 Mb/s BW | DS3v2 |
Dla środowiska produkcyjnego | ✓ | Nie dotyczy | 3600 | 12700 | 4240 | 15296 | 3 węzły | 4 procesory wirtualne, 14 GiB pamięci, 12800 operacji we/wy na sekundę, 1500 Mb/s BW | DS3v2 |
Dla środowiska produkcyjnego | Nie dotyczy | ✓ | 410 | 4420 | 1492 | 10960 | 1 węzły | 8 procesorów wirtualnych, 28GiB Memroy, 25600 operacji we/wy, 6000 Mb/s BW | DS4v2 |
Dla środowiska produkcyjnego | ✓ | ✓ | 3730 | 14820 | 4684 | 18744 | 3 węzły | 4 procesory wirtualne, 14 GiB pamięci, 12800 operacji we/wy na sekundę, 1500 Mb/s BW | DS4v2 |
Uwaga
- W celu testowania należy odwołać się do żądania zasobu.
- W celu produkcji należy odwołać się do limitu zasobów.
Ważne
Poniżej przedstawiono kilka innych zagadnień dotyczących dokumentacji:
- Aby uzyskać większą przepustowość sieci i lepszą wydajność operacji we/wy dysku, zalecamy użycie większej jednostki SKU.
- Weź na przykład dv2/DSv2 , używając dużej jednostki SKU, można skrócić czas ściągania obrazu, aby uzyskać lepszą wydajność sieci/magazynu.
- Więcej informacji na temat rezerwacji usługi AKS można znaleźć w rezerwacji usługi AKS.
- Jeśli używasz klastra usługi AKS, może być konieczne rozważenie limitu rozmiaru obrazu kontenera w usłudze AKS. Więcej informacji można znaleźć w artykule Limit rozmiaru obrazu kontenera usługi AKS.
Wymagania wstępne dotyczące klastrów ARO lub OCP
Wyłączanie zwiększonych zabezpieczeń systemu Linux (SELinux)
Zestaw danych usługi Azure Machine Learning (funkcja zestawu SDK w wersji 1 używana w zadaniach szkoleniowych usługi Azure Machine Learning) nie jest obsługiwana na maszynach z włączonym programem SELinux. W związku z tym należy wyłączyć selinux
dla wszystkich procesów roboczych, aby korzystać z zestawu danych usługi Azure Machine Learning.
Konfiguracja uprzywilejowana dla usług ARO i OCP
W przypadku wdrożenia rozszerzenia usługi Azure Machine Learning w klastrze ARO lub OCP przyznaj uprzywilejowany dostęp do kont usługi Azure Machine Learning, uruchom oc edit scc privileged
polecenie i dodaj następujące konta usług w obszarze "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
Uwaga
{EXTENSION-NAME}
: to nazwa rozszerzenia określona za pomocą polecenia interfejsuaz k8s-extension create --name
wiersza polecenia.{KUBERNETES-COMPUTE-NAMESPACE}
: to przestrzeń nazw obliczeniowych platformy Kubernetes określona podczas dołączania obliczeń do obszaru roboczego usługi Azure Machine Learning. Pomiń konfigurowaniesystem:serviceaccount:{KUBERNETES-COMPUTE-NAMESPACE}:default
, jeśliKUBERNETES-COMPUTE-NAMESPACE
ma wartośćdefault
.
Zebrane szczegóły dziennika
Niektóre dzienniki dotyczące obciążeń usługi Azure Machine Learning w klastrze będą zbierane za pośrednictwem składników rozszerzeń, takich jak stan, metryki, cykl życia itp. Na poniższej liście przedstawiono wszystkie zebrane szczegóły dziennika, w tym typ zebranych dzienników i miejsce ich wysłania do lub przechowywania.
Zasobnik | Opis zasobów | Szczegółowe informacje rejestrowania |
---|---|---|
amlarc-identity-controller | Zażądaj i odnów token usługi Azure Blob/Azure Container Registry za pomocą tożsamości zarządzanej. | Używane tylko w przypadku enableInference=true ustawienia podczas instalowania rozszerzenia. Zawiera dzienniki śledzenia stanu uzyskiwania tożsamości dla punktów końcowych do uwierzytelniania za pomocą usługi Azure Machine Learning Service. |
amlarc-identity-proxy | Zażądaj i odnów token usługi Azure Blob/Azure Container Registry za pomocą tożsamości zarządzanej. | Używane tylko w przypadku enableInference=true ustawienia podczas instalowania rozszerzenia. Zawiera on dzienniki śledzenia stanu uzyskiwania tożsamości dla klastra do uwierzytelniania za pomocą usługi Azure Machine Learning Service. |
aml-operator | Zarządzanie cyklem życia zadań szkoleniowych. | Dzienniki zawierają stan zasobnika zadania trenowania usługi Azure Machine Learning w klastrze. |
azureml-fe-v2 | Składnik frontonu, który kieruje przychodzące żądania wnioskowania do wdrożonych usług. | Dzienniki dostępu na poziomie żądania, w tym identyfikator żądania, czas rozpoczęcia, kod odpowiedzi, szczegóły błędu i czasy trwania dla opóźnienia żądania. Dzienniki śledzenia zmian metadanych usługi, stan dobrej kondycji usługi itp. na potrzeby debugowania. |
brama | Brama służy do komunikowania się i wysyłania danych tam i z powrotem. | Śledzenie dzienników żądań z usług Azure Machine Learning do klastrów. |
sprawdzanie kondycji | -- | Dzienniki zawierają azureml stan zasobu przestrzeni nazw (rozszerzenie usługi Azure Machine Learning), aby zdiagnozować, co sprawia, że rozszerzenie nie działa. |
inference-operator-controller-manager | Zarządzanie cyklem życia punktów końcowych wnioskowania. | Dzienniki zawierają punkt końcowy wnioskowania usługi Azure Machine Learning i stan zasobnika wdrożenia w klastrze. |
metrics-controller-manager | Zarządzanie konfiguracją rozwiązania Prometheus. | Śledzenie dzienników stanu przekazywania zadania trenowania i metryk wdrażania wnioskowania na temat wykorzystania procesora CPU i wykorzystania pamięci. |
serwer przekaźnika | Serwer przekaźnika jest wymagany tylko w klastrze połączonym z łukiem i nie zostanie zainstalowany w klastrze usługi AKS. | Serwer relay współpracuje z usługą Azure Relay w celu komunikowania się z usługami w chmurze. Dzienniki zawierają informacje o poziomie żądania z usługi Azure Relay. |
Zadania usługi Azure Machine Learning nawiązują połączenie z niestandardowym magazynem danych
Trwałe woluminy (PV) i trwałe oświadczenia woluminu (PVC) to koncepcja platformy Kubernetes, umożliwiając użytkownikowi udostępnianie i korzystanie z różnych zasobów magazynu.
- Utwórz pv, weź NFS na przykład
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
- Utwórz plik PVC w tej samej przestrzeni nazw platformy Kubernetes z obciążeniami uczenia maszynowego. W
metadata
programie należy dodać etykietęml.azure.com/pvc: "true"
do rozpoznawania przez usługę Azure Machine Learning i dodać adnotacjęml.azure.com/mountpath: <mount path>
, aby ustawić ścieżkę instalacji.
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
Ważne
- Tylko zadanie/składnik polecenia, zadanie/składnik funkcji hyperdrive i wdrożenie wsadowe obsługują niestandardowy magazyn danych z pvc(s). > * Punkt końcowy online w czasie rzeczywistym, zadanie rozwiązania AutoML i zadanie PRS nie obsługują niestandardowego magazynu danych z pvc(s).
- Ponadto tylko zasobniki w tej samej przestrzeni nazw Platformy Kubernetes z woluminami PVC zostaną zainstalowane. Analityk danych może uzyskać dostęp do określonego
mount path
w adnotacji PVC w zadaniu. Zadanie automatycznego uczenia maszynowego i zadanie prs nie będą miały dostępu do elementów PVC.
Obsługiwane defekty i tolerancje usługi Azure Machine Learning
Taint i Toleration to pojęcia związane z platformą Kubernetes, które współpracują ze sobą, aby upewnić się, że zasobniki nie są zaplanowane na nieodpowiednie węzły.
Klastry Kubernetes zintegrowane z usługą Azure Machine Learning (w tym klastrami AKS i Arc Kubernetes) obsługują teraz określone defekty i tolerancje usługi Azure Machine Learning, umożliwiając użytkownikom dodawanie określonych defektów usługi Azure Machine Learning w dedykowanych węzłach usługi Azure Machine Learning, aby zapobiec zaplanowaniu obciążeń spoza usługi Azure Machine Learning na tych dedykowanych węzłach.
Obsługujemy tylko umieszczanie defektów specyficznych dla amlarc w węzłach, które są zdefiniowane w następujący sposób:
Barwy | Key | Wartość | Efekt | opis |
---|---|---|---|---|
ogólne amlarc | ml.azure.com/amlarc | prawda | NoSchedule lub NoExecute PreferNoSchedule |
Wszystkie obciążenia usługi Azure Machine Learning, w tym zasobniki usługi systemu rozszerzeń i zasobniki obciążenia uczenia maszynowego, będą tolerować tę amlarc overall defekt. |
system amlarc | ml.azure.com/amlarc-system | prawda | NoSchedule lub NoExecute PreferNoSchedule |
Tylko zasobniki usług systemu rozszerzeń usługi Azure Machine Learning będą tolerować tę amlarc system defekt. |
obciążenie amlarc | ml.azure.com/amlarc-workload | prawda | NoSchedule lub NoExecute PreferNoSchedule |
Tylko zasobniki obciążeń uczenia maszynowego będą tolerować tę amlarc workload defekt. |
grupa zasobów amlarc | ml.azure.com/resource-group | <nazwa grupy zasobów> | NoSchedule lub NoExecute PreferNoSchedule |
Tylko zasobniki obciążeń uczenia maszynowego utworzone na podstawie określonej grupy zasobów będą tolerować tę amlarc resource group defekt. |
obszar roboczy amlarc | ml.azure.com/workspace | <nazwa obszaru roboczego> | NoSchedule lub NoExecute PreferNoSchedule |
Tylko zasobniki obciążeń uczenia maszynowego utworzone na podstawie określonego obszaru roboczego będą tolerować tę amlarc workspace defekt. |
obliczenia amlarc | ml.azure.com/compute | <nazwa obliczeniowa> | NoSchedule lub NoExecute PreferNoSchedule |
Tylko zasobniki obciążeń uczenia maszynowego utworzone przy użyciu określonego celu obliczeniowego będą tolerować tę amlarc compute defekt. |
Napiwek
- W przypadku usługi Azure Kubernetes Service (AKS) możesz postępować zgodnie z przykładem w artykule Najlepsze rozwiązania dotyczące zaawansowanych funkcji harmonogramu w usłudze Azure Kubernetes Service (AKS), aby zastosować defekty do pul węzłów.
- W przypadku klastrów Usługi Arc Kubernetes, takich jak lokalne klastry Kubernetes, można użyć
kubectl taint
polecenia , aby dodać defekty do węzłów. Aby uzyskać więcej przykładów, zobacz dokumentację platformy Kubernetes.
Najlepsze rozwiązania
Zgodnie z wymaganiami dotyczącymi planowania dedykowanych węzłów usługi Azure Machine Learning można dodać wiele ograniczeń specyficznych dla amlarc, aby ograniczyć obciążenia usługi Azure Machine Learning, które mogą być uruchamiane w węzłach. Wymieniono najlepsze rozwiązania dotyczące używania defektów amlarc:
- Aby zapobiec uruchamianiu obciążeń spoza usługi Azure Machine Learning w dedykowanych węzłach/pulach węzłów usługi Azure Machine Learning, wystarczy dodać
aml overall
te węzły do tych węzłów. - Aby zapobiec uruchamianiu zasobników niesystemowych w dedykowanych węzłach/pulach węzłów usługi Azure Machine Learning, należy dodać następujące właściwości:
amlarc overall
Barwyamlarc system
Barwy
- Aby zapobiec uruchamianiu obciążeń innych niż ml w dedykowanych węzłach/pulach węzłów usługi Azure Machine Learning, należy dodać następujące wartości:
amlarc overall
Barwyamlarc workloads
Barwy
- Aby zapobiec uruchamianiu obciążeń z obszaru roboczego X w dedykowanych węzłach/pulach węzłów usługi Azure Machine Learning, należy dodać następujące defekty:
amlarc overall
Barwyamlarc resource group (has this <workspace X>)
Barwyamlarc <workspace X>
Barwy
- Aby zapobiec uruchamianiu obciążeń przez docelowy obiekt obliczeniowy X w dedykowanych węzłach/pulach węzłów usługi Azure Machine Learning, należy dodać następujące wartości:
amlarc overall
Barwyamlarc resource group (has this <workspace X>)
Barwyamlarc workspace (has this <compute X>)
Barwyamlarc <compute X>
Barwy
Integrowanie innego kontrolera ruchu przychodzącego z rozszerzeniem usługi Azure Machine Learning za pośrednictwem protokołu HTTP lub HTTPS
Oprócz domyślnego modułu równoważenia obciążenia azureml-fe usługi Azure Machine Learning można również zintegrować inne moduły równoważenia obciążenia z rozszerzeniem Azure Machine Learning za pośrednictwem protokołu HTTP lub HTTPS.
W tym samouczku pokazano, jak zintegrować kontroler ruchu przychodzącego Nginx lub bramę aplikacja systemu Azure.
Wymagania wstępne
- Wdróż rozszerzenie usługi Azure Machine Learning za pomocą poleceń
inferenceRouterServiceType=ClusterIP
iallowInsecureConnections=True
, aby kontroler ruchu przychodzącego Nginx mógł obsługiwać kończenie żądań TLS zamiast przekazywania go do usługi azureml-fe , gdy usługa jest uwidoczniona za pośrednictwem protokołu HTTPS. - Do integracji z kontrolerem ruchu przychodzącego Nginx potrzebna jest konfiguracja klastra Kubernetes z kontrolerem ruchu przychodzącego Nginx.
- Utwórz podstawowy kontroler: jeśli zaczynasz od podstaw, zapoznaj się z tymi instrukcjami.
- Do integracji z usługą aplikacja systemu Azure Gateway potrzebna jest konfiguracja klastra Kubernetes z kontrolerem ruchu przychodzącego bramy aplikacja systemu Azure.
- Jeśli chcesz używać protokołu HTTPS w tej aplikacji, potrzebujesz certyfikatu x509 i jego klucza prywatnego.
Uwidacznianie usług za pośrednictwem protokołu HTTP
Aby uwidocznić plik azureml-fe, użyjemy następującego zasobu ruchu przychodzącego:
# 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
Ten ruch przychodzący uwidacznia usługę azureml-fe
i wybrane wdrożenie jako domyślne zaplecze kontrolera ruchu przychodzącego 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
Ten ruch przychodzący uwidacznia usługę azureml-fe
i wybrane wdrożenie jako domyślne zaplecze usługi Application Gateway.
Zapisz powyższy zasób ruchu przychodzącego jako ing-azureml-fe.yaml
.
Wdróż
ing-azureml-fe.yaml
, uruchamiając polecenie:kubectl apply -f ing-azureml-fe.yaml
Sprawdź dziennik kontrolera ruchu przychodzącego pod kątem stanu wdrożenia.
azureml-fe
Teraz aplikacja powinna być dostępna. Możesz to sprawdzić, odwiedzając:- Kontroler ruchu przychodzącego Nginx: publiczny adres modułu równoważenia obciążenia kontrolera ruchu przychodzącego Nginx
- aplikacja systemu Azure Gateway: publiczny adres usługi Application Gateway.
Utwórz zadanie wnioskowania i wywołaj.
Uwaga
Zastąp adres IP w scoring_uri publicznym adresem LoadBalancer kontrolera ruchu przychodzącego Nginx przed wywołaniem.
Uwidacznianie usług za pośrednictwem protokołu HTTPS
Przed wdrożeniem ruchu przychodzącego należy utworzyć wpis tajny kubernetes do hostowania certyfikatu i klucza prywatnego. Wpis tajny kubernetes można utworzyć, uruchamiając polecenie
kubectl create secret tls <ingress-secret-name> -n azureml --key <path-to-key> --cert <path-to-cert>
Zdefiniuj następujący ruch przychodzący. W ruchu przychodzącym określ nazwę wpisu tajnego
secretName
w sekcji .# 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
Uwaga
Zastąp
<domain>
wartości i<ingress-secret-name>
w powyższym zasobie ruchu przychodzącego domeną wskazującą moduł LoadBalancer kontrolera ruchu przychodzącego Nginx/application Gateway i nazwę wpisu tajnego. Zapisz powyższy zasób ruchu przychodzącego w nazwieing-azureml-fe-tls.yaml
pliku .Wdrażanie pliku ing-azureml-fe-tls.yaml przez uruchomienie polecenia
kubectl apply -f ing-azureml-fe-tls.yaml
Sprawdź dziennik kontrolera ruchu przychodzącego pod kątem stanu wdrożenia.
azureml-fe
Teraz aplikacja jest dostępna w protokole HTTPS. Możesz to sprawdzić, odwiedzając publiczny adres modułu LoadBalancer kontrolera ruchu przychodzącego Nginx.Utwórz zadanie wnioskowania i wywołaj.
Uwaga
Przed wywołaniem zastąp protokół i adres IP w scoring_uri ciągiem https i domeną wskazującą moduł LoadBalancer kontrolera ruchu przychodzącego Nginx lub bramę Application Gateway.
Wdrażanie rozszerzenia za pomocą szablonu usługi ARM
Rozszerzenie w klastrze zarządzanym można wdrożyć za pomocą szablonu usługi ARM. Przykładowy szablon można znaleźć w deployextension.json z plikiem demo parametrów deployextension.parameters.json
Aby użyć przykładowego szablonu wdrożenia, zmodyfikuj plik parametrów z poprawną wartością, a następnie uruchom następujące polecenie:
az deployment group create --name <ARM deployment name> --resource-group <resource group name> --template-file deployextension.json --parameters deployextension.parameters.json
Więcej informacji na temat korzystania z szablonu usługi ARM można znaleźć w dokumentacji szablonu usługi ARM
Informacje o wersji rozszerzenia AzuremML
Uwaga
Nowe funkcje są wydawane w dwutygowym kalendarzu.
Date | Wersja | Opis wersji |
---|---|---|
26 września 2024 r. | 1.1.64 | Naprawiono luki w zabezpieczeniach. |
21 listopada 2023 r. | 1.1.39 | Naprawiono luki w zabezpieczeniach. Ulepszony komunikat o błędzie. Zwiększona stabilność interfejsu API relayserver. |
1 listopada 2023 r. | 1.1.37 | Zaktualizuj wersję wysłaną płaszczyzny danych. |
11 października 2023 r. | 1.1.35 | Napraw obraz podatny na zagrożenia. Poprawki. |
25 sierpnia 2023 r. | 1.1.34 | Napraw obraz podatny na zagrożenia. Zwróć bardziej szczegółowy błąd tożsamości. Poprawki. |
18 lipca 2023 roku | 1.1.29 | Dodaj nowe błędy operatora tożsamości. Poprawki. |
4 czerwca 2023 r. | 1.1.28 | Ulepszanie automatycznego skalowania w celu obsługi wielu puli węzłów. Poprawki. |
18 kwietnia 2023 r. | 1.1.26 | Poprawki błędów i poprawki luk w zabezpieczeniach. |
27 marca 2023 r. | 1.1.25 | Dodaj ograniczenie zadania usługi Azure Machine Learning. Szybkie niepowodzenie zadania trenowania, gdy instalacja protokołu SSH nie powiodła się. Zmniejsz interwał złomowania Prometheus do 30s. Ulepszanie komunikatów o błędach na potrzeby wnioskowania. Napraw obraz podatny na zagrożenia. |
7 marca 2023 r. | 1.1.23 | Zmień domyślny typ wystąpienia, aby używać pamięci 2Gi. Zaktualizuj konfiguracje metryk dla funkcji scoring-fe, które dodają 15s scrape_interval. Dodaj specyfikację zasobu dla przyczepki mdc. Napraw obraz podatny na zagrożenia. Poprawki. |
14 lutego 2023 r. | 1.1.21 | Poprawki. |
7 lutego 2023 r. | 1.1.19 | Popraw komunikat zwracany o błędzie dla wnioskowania. Zaktualizuj domyślny typ wystąpienia, aby użyć limitu pamięci 2Gi. Sprawdź kondycję klastra pod healthiness, resource quota, Kubernetes version and extension version (Sprawdzanie kondycji klastra pod kątem kondycji zasobników, przydziału zasobów, wersji platformy Kubernetes i wersji rozszerzenia). Poprawki błędów |
27 grudnia 2022 r. | 1.1.17 | Przenieś element Fluent-bit z elementu DaemonSet do przyczepek. Dodaj obsługę rozwiązania MDC. Uściślij komunikaty o błędach. Obsługa zadań trybu klastra (windows, linux). Poprawki błędów |
29 listopada 2022 r. | 1.1.16 | Dodaj walidację typu wystąpienia przez nowy identyfikator CRD. Tolerancja obsługi. Skróć nazwę SVC. Godzina rdzenia obciążenia. Wiele poprawek błędów i ulepszeń. |
13 września 2022 r. | 1.1.10 | Poprawki. |
29 sierpnia 2022 r. | 1.1.9 | Ulepszona logika sprawdzania kondycji. Poprawki. |
23 czerwca 2022 r. | 1.1.6 | Poprawki. |
15 czerwca 2022 r. | 1.1.5 | Zaktualizowano szkolenie w celu używania nowego wspólnego środowiska uruchomieniowego do uruchamiania zadań. Usunięto użycie usługi Azure Relay dla rozszerzenia usługi AKS. Usunięto użycie usługi Service Bus z rozszerzenia. Zaktualizowano użycie kontekstu zabezpieczeń. Zaktualizowano wnioskowanie azureml-fe do wersji 2. Zaktualizowano, aby używać wulkanu jako harmonogramu zadań szkoleniowych. Poprawki. |
14 października 2021 r. | 1.0.37 | Obsługa instalacji woluminów PV/PVC w zadaniu trenowania AMLArc. |
16 września 2021 r. | 1.0.29 | Dostępne są nowe regiony, WestUS, CentralUS, NorthCentralUS, KoreaCentral. Możliwość rozszerzania kolejki zadań. Zobacz szczegóły kolejki zadań w usłudze Azure Machine Learning Workspace Studio. Zasady automatycznego zabijania. Obsługa max_run_duration_seconds w skrycie ScriptRunConfig. System próbuje automatycznie anulować przebieg, jeśli trwał dłużej niż wartość ustawienia. Poprawa wydajności obsługi automatycznego skalowania klastra. Wdrażanie agenta usługi Arc i rozszerzenia uczenia maszynowego z lokalnego rejestru kontenerów. |
24 sierpnia 2021 r. | 1.0.28 | Typ wystąpienia obliczeniowego jest obsługiwany w pliku YAML zadania. Przypisz tożsamość zarządzaną do zasobów obliczeniowych AMLArc. |
10 sierpnia 2021 r. | 1.0.20 | Nowa obsługa dystrybucji kubernetes, K3S — lightweight Kubernetes. Wdróż rozszerzenie usługi Azure Machine Learning w klastrze usługi AKS bez nawiązywania połączenia za pośrednictwem usługi Azure Arc. Zautomatyzowane uczenie maszynowe (AutoML) za pomocą zestawu SDK języka Python. Użyj interfejsu wiersza polecenia 2.0, aby dołączyć klaster Kubernetes do obszaru roboczego usługi Azure Machine Learning. Zoptymalizuj wykorzystanie zasobów procesora CPU/pamięci w usłudze Azure Machine Learning. |
2 lipca 2021 r. | 1.0.13 | Obsługa nowych dystrybucji Kubernetes, OpenShift Kubernetes i GKE (Google Kubernetes Engine). Obsługa automatycznego skalowania. Jeśli klaster Kubernetes zarządzany przez użytkownika umożliwia automatyczne skalowanie, klaster jest automatycznie skalowany w poziomie lub skalowany zgodnie z ilością aktywnych przebiegów i wdrożeń. Poprawa wydajności uruchamiania zadań, która skraca czas wykonywania zadania do dużej ilości. |