Inleiding tot Kubernetes-rekendoel in Azure Machine Learning

VAN TOEPASSING OP:Azure CLI ml extension v2 (current)Python SDK azure-ai-ml v2 (current)

Met Azure Machine Learning CLI/Python SDK v2 heeft Azure Machine Learning een nieuw rekendoel geïntroduceerd: Kubernetes-rekendoel. U kunt eenvoudig een bestaand AKS-cluster (Azure Kubernetes Service ) of Kubernetes-cluster met Azure Arc (Arc Kubernetes) inschakelen om een Kubernetes-rekendoel te worden in Azure Machine Learning en dit te gebruiken om modellen te trainen of te implementeren.

Diagram waarin wordt geïllustreerd hoe Azure Machine Learning verbinding maakt met Kubernetes.

In dit artikel krijgt u meer informatie over:

  • Uitleg
  • Gebruiksscenario's
  • Aanbevolen procedures
  • KubernetesCompute en verouderde AksCompute

Uitleg

Azure Machine Learning Kubernetes Compute ondersteunt twee soorten Kubernetes-clusters:

  • AKS-cluster in Azure. Met uw zelfbeheerde AKS-cluster in Azure kunt u beveiliging en controles verkrijgen om te voldoen aan nalevingsvereisten en flexibiliteit voor het beheren van de ML-workload van teams.
  • Arc Kubernetes-cluster buiten Azure. Met een Arc Kubernetes-cluster kunt u modellen trainen of implementeren in elke on-premises infrastructuur, in meerdere clouds of aan de rand.

Met een eenvoudige implementatie van clusteruitbreidingen in AKS- of Arc Kubernetes-cluster wordt Kubernetes-cluster naadloos ondersteund in Azure Machine Learning om training of deductieworkload uit te voeren. U kunt eenvoudig een bestaand Kubernetes-cluster inschakelen en gebruiken voor de Azure Machine Learning-workload met de volgende eenvoudige stappen:

  1. Bereid een Azure Kubernetes Service-cluster of Arc Kubernetes-cluster voor.
  2. Implementeer de Azure Machine Learning-extensie.
  3. Koppel een Kubernetes-cluster aan uw Azure Machine Learning-werkruimte.
  4. Gebruik het Kubernetes-rekendoel van CLI v2, SDK v2 en de gebruikersinterface van Studio.

IT-operation-team. Het IT-bewerkingsteam is verantwoordelijk voor de eerste drie stappen: een AKS- of Arc Kubernetes-cluster voorbereiden, Azure Machine Learning-clusterextensie implementeren en Kubernetes-cluster koppelen aan Azure Machine Learning-werkruimte. Naast deze essentiële stappen voor het instellen van rekenprocessen gebruikt het IT-operation-team ook vertrouwde hulpprogramma's zoals Azure CLI of kubectl om de volgende taken voor het data science-team uit te voeren:

  • Netwerk- en beveiligingsconfiguraties, zoals uitgaande proxyserververbinding of Azure Firewall-configuratie, deductierouter (azureml-fe), SSL/TLS-beëindiging en configuratie van virtuele netwerken.
  • Maak en beheer exemplaartypen voor verschillende ML-workloadscenario's en krijg efficiënt rekenresourcegebruik.
  • Problemen met het oplossen van workloadproblemen met betrekking tot Kubernetes-cluster.

Data science-team. Zodra het IT-operations-team klaar is met het instellen van reken- en rekendoelen, kan het data science-team een lijst met beschikbare rekendoelen en exemplaartypen in de Azure Machine Learning-werkruimte detecteren. Deze rekenresources kunnen worden gebruikt voor trainings- of deductieworkload. Data science specificeert de naam van het rekendoel en de naam van het exemplaartype met behulp van hun favoriete hulpprogramma's of API's. Deze namen kunnen bijvoorbeeld Azure Machine Learning CLI v2, Python SDK v2 of De gebruikersinterface van Studio zijn.

Kubernetes-gebruiksscenario's

Met een Arc Kubernetes-cluster kunt u modellen bouwen, trainen en implementeren in elke on-premises infrastructuur en in meerdere clouds met behulp van Kubernetes. Hiermee worden enkele nieuwe gebruikspatronen geopend die eerder niet mogelijk waren in de omgeving van de cloudinstelling. De volgende tabel bevat een overzicht van de nieuwe gebruikspatronen die zijn ingeschakeld door Azure Machine Learning Kubernetes Compute:

Gebruikspatroon Locatie van gegevens Motivatie Infrastructuur instellen en Azure Machine Learning-implementatie
Model trainen in de cloud, on-premises model implementeren Cloud Maak gebruik van cloud-rekenkracht. Vanwege elastische rekenbehoeften of speciale hardware zoals een GPU.
Het model moet on-premises worden geïmplementeerd vanwege vereisten voor beveiliging, naleving of latentie
1. Door Azure beheerde rekenkracht in de cloud.
2. Door de klant beheerde Kubernetes on-premises.
3. Volledig geautomatiseerde MLOps in de hybride modus, inclusief de stappen voor training en modelimplementatie die naadloos overstappen van cloud naar on-premises en omgekeerd.
4. Herhaalbaar, waarbij alle assets correct worden bijgehouden. Het model wordt zo nodig opnieuw getraind en de modelimplementatie wordt na het opnieuw trainen automatisch bijgewerkt.
Model on-premises en cloud trainen, implementeren in zowel de cloud als on-premises Cloud Organisaties die on-premises investeringen willen combineren met schaalbaarheid in de cloud. Breng cloud- en on-premises berekeningen onder één glasvenster. Eén bron van waarheid voor gegevens bevindt zich in de cloud, kan worden gerepliceerd naar on-premises (dat wil zeggen, lui bij gebruik of proactief). Primair gebruik van cloud compute is wanneer on-premises resources niet beschikbaar zijn (in gebruik, onderhoud) of geen specifieke hardwarevereisten (GPU) hebben. 1. Door Azure beheerde rekenkracht in de cloud.
2. Door de klant beheerde Kubernetes on-premises.
3. Volledig geautomatiseerde MLOps in de hybride modus, inclusief de stappen voor training en modelimplementatie die naadloos overstappen van cloud naar on-premises en omgekeerd.
4. Herhaalbaar, waarbij alle assets correct worden bijgehouden. Het model wordt zo nodig opnieuw getraind en de modelimplementatie wordt na het opnieuw trainen automatisch bijgewerkt.
Model on-premises trainen, model implementeren in de cloud On-premises Gegevens moeten on-premises blijven vanwege vereisten voor gegevenslocatie.
Implementeer het model in de cloud voor wereldwijde servicetoegang of voor reken elasticiteit voor schaal en doorvoer.
1. Door Azure beheerde rekenkracht in de cloud.
2. Door de klant beheerde Kubernetes on-premises.
3. Volledig geautomatiseerde MLOps in de hybride modus, inclusief de stappen voor training en modelimplementatie die naadloos overstappen van cloud naar on-premises en omgekeerd.
4. Herhaalbaar, waarbij alle assets correct worden bijgehouden. Het model wordt zo nodig opnieuw getraind en de modelimplementatie wordt na het opnieuw trainen automatisch bijgewerkt.
Bring your own AKS in Azure Cloud Meer beveiliging en controles.
Alle persoonlijke IP-machine learning om gegevensexfiltratie te voorkomen.
1. AKS-cluster achter een virtueel Azure-netwerk.
2. Maak privé-eindpunten in hetzelfde virtuele netwerk voor de Azure Machine Learning-werkruimte en de bijbehorende resources.
3. Volledig geautomatiseerde MLOps.
Volledige ML-levenscyclus on-premises On-premises Beveilig gevoelige gegevens of bedrijfseigen IP-adressen, zoals ML-modellen en code/scripts. 1. Uitgaande proxyserververbinding on-premises.
2. Azure ExpressRoute en Azure Arc private link naar Azure-resources.
3. Door de klant beheerde Kubernetes on-premises.
4. Volledig geautomatiseerde MLOps.

Beperkingen

KubernetesCompute het doel in Azure Machine Learning-workloads (training en modeldeductie) heeft de volgende beperkingen:

  • De beschikbaarheid van preview-functies in Azure Machine Learning is niet gegarandeerd.
    • Geïdentificeerde beperking: Modellen (inclusief het basismodel) uit de modelcatalogus en het register worden niet ondersteund op Online-eindpunten van Kubernetes.

Scheiding van verantwoordelijkheden tussen het IT-operations-team en het data science-team. Zoals we in de vorige sectie hebben genoemd, is het beheren van uw eigen reken- en infrastructuur voor ML-werkbelasting een complexe taak. U kunt het beste doen door het IT-operations-team, zodat het data science-team zich kan richten op ML-modellen voor de efficiëntie van de organisatie.

Instantietypen maken en beheren voor verschillende ML-workloadscenario's. Elke ML-workload maakt gebruik van verschillende hoeveelheden rekenresources, zoals CPU/GPU en geheugen. Azure Machine Learning implementeert het exemplaartype als aangepaste Kubernetes-resourcedefinitie (CRD) met eigenschappen van nodeSelector en resourceaanvraag/limiet. Met een zorgvuldig samengestelde lijst met exemplaartypen kunnen IT-bewerkingen ml-werkbelasting op specifieke knooppunten richten en het gebruik van rekenresources efficiënt beheren.

Meerdere Azure Machine Learning-werkruimten delen hetzelfde Kubernetes-cluster. U kunt Een Kubernetes-cluster meerdere keren koppelen aan dezelfde Azure Machine Learning-werkruimte of verschillende Azure Machine Learning-werkruimten, waarbij u meerdere rekendoelen maakt in één werkruimte of meerdere werkruimten. Omdat veel klanten data science-projecten organiseren rond de Azure Machine Learning-werkruimte, kunnen meerdere data science-projecten nu hetzelfde Kubernetes-cluster delen. Dit vermindert aanzienlijk de overhead van ML-infrastructuurbeheer en kostenbesparingen voor IT.

Isolatie van team-/projectworkloads met behulp van Kubernetes-naamruimte. Wanneer u een Kubernetes-cluster koppelt aan een Azure Machine Learning-werkruimte, kunt u een Kubernetes-naamruimte opgeven voor het rekendoel. Alle workloads die door het rekendoel worden uitgevoerd, worden onder de opgegeven naamruimte geplaatst.

KubernetesCompute en verouderde AksCompute

Met Azure Machine Learning CLI/Python SDK v1 kunt u modellen implementeren op AKS met behulp van het AksCompute-doel. Zowel het KubernetesCompute-doel als het AksCompute-doel ondersteunen AKS-integratie, maar ze ondersteunen het anders. In de volgende tabel ziet u de belangrijkste verschillen:

Functies AKS-integratie met AKSCompute (verouderd) AKS-integratie met KubernetesCompute
CLI/SDK v1 Ja Nee
CLI/SDK v2 Nee Ja
Training Nee Ja
Realtime deductie Ja Ja
Batchdeductie Nee Ja
Nieuwe functies voor realtime deductie Geen ontwikkeling van nieuwe functies Actieve roadmap

Met deze belangrijke verschillen en de algehele ontwikkeling van Azure Machine Learning voor het gebruik van SDK/CLI v2, raadt Azure Machine Learning u aan om Kubernetes-rekendoel te gebruiken om modellen te implementeren als u besluit AKS te gebruiken voor modelimplementatie.

Meer informatie

Voorbeelden

Alle Azure Machine Learning-voorbeelden vindt u in https://github.com/Azure/azureml-examples.git.

Voor elk Azure Machine Learning-voorbeeld hoeft u alleen de naam van het rekendoel bij te werken naar uw Kubernetes-rekendoel en bent u klaar.

Volgende stappen