Share via


Inleiding tot Kubernetes-rekendoel in Azure Machine Learning

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

De Azure Machine Learning CLI en Python SDK v2 bieden ondersteuning voor een Kubernetes-rekendoel. U kunt een bestaand AKS-cluster (Azure Kubernetes Service) of Kubernetes-cluster met Azure Arc (Arc Kubernetes) inschakelen als een Kubernetes-rekendoel. Gebruik de rekenkracht in Machine Learning om modellen te trainen of te implementeren.

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

In dit artikel wordt beschreven hoe u het Kubernetes-rekendoel in Machine Learning kunt gebruiken, inclusief gebruiksscenario's, aanbevolen aanbevolen procedures en een vergelijking van de KubernetesCompute en verouderde AksCompute doelen.

Hoe het Kubernetes-rekendoel werkt

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

Compute Locatie Beschrijving
AKS-cluster Binnen Azure Met uw zelfbeheerde AKS-cluster in Azure kunt u beveiliging en controles verkrijgen om te voldoen aan nalevingsvereisten en flexibiliteit om de machine learning-workload van uw team te beheren.
Arc Kubernetes-cluster Buiten Azure Met een Arc Kubernetes-cluster kunt u modellen trainen of implementeren in een on-premises infrastructuur of 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 Machine Learning om trainings- of deductieworkloads uit te voeren. Het is eenvoudig om een bestaand Kubernetes-cluster in te schakelen en te gebruiken voor machine learning-werkbelasting met het volgende proces:

Dit zijn de belangrijkste verantwoordelijkheden in dit proces:

  • Het IT-operationele team is verantwoordelijk voor stap 1, 2 en 3. Dit team bereidt een AKS- of Arc Kubernetes-cluster voor, implementeert de Machine Learning-clusterextensie en koppelt het Kubernetes-cluster aan de Machine Learning-werkruimte. Naast deze essentiële stappen voor het instellen van rekenprocessen gebruikt het IT-operation-team ook vertrouwde hulpprogramma's, zoals de Azure CLI of kubectl, om de volgende taken voor het Data science-team uit te voeren:

    • Configureer netwerk- en beveiligingsopties, zoals uitgaande proxyserververbinding of Azure Firewall, deductierouter (azureml-fe), SSL/TLS-beëindiging en het instellen van virtuele netwerken.

    • Instantietypen maken en beheren voor verschillende machine learning-workloadscenario's en efficiënt rekenresourcegebruik krijgen.

    • Problemen met workloads met betrekking tot Kubernetes-cluster oplossen.

  • Het Data Science-team begint hun taken nadat het IT-operations-team klaar is met het instellen van de rekenprocessen en het maken van de rekendoelen. Dit team detecteert een lijst met beschikbare rekendoelen en exemplaartypen in de Machine Learning-werkruimte. De rekenresources kunnen worden gebruikt voor trainings- of deductieworkload. Het Data Science-team geeft de naam van het rekendoel en de naam van het exemplaartype op met behulp van hun favoriete hulpprogramma's of API's. Ze kunnen gebruikmaken van de Azure Machine Learning CLI v2, Python SDK v2 of de gebruikersinterface van Machine Learning Studio.

Kubernetes-gebruiksscenario's

Met een Arc Kubernetes-cluster kunt u modellen bouwen, trainen en implementeren in elke on-premises en multicloud-infrastructuur met behulp van Kubernetes. Met deze strategie worden enkele nieuwe gebruikspatronen geopend die eerder niet mogelijk waren in een omgeving met cloudinstellingen. De volgende tabel bevat een overzicht van de nieuwe gebruikspatronen die zijn ingeschakeld wanneer u met Azure Machine Learning Kubernetes compute werkt:

Gebruikspatroon Locatie van gegevens Doelstellingen en vereisten Scenarioconfiguratie
Model trainen in de cloud, on-premises model implementeren Cloud Gebruik cloud-compute ter ondersteuning van elastische rekenbehoeften of speciale hardware zoals een GPU.

Modelimplementatie moet on-premises zijn voor vereisten voor beveiliging, naleving of latentie.
- Door Azure beheerde compute in de cloud
- Door de klant beheerde Kubernetes on-premises
- Volledig geautomatiseerde machine learning-bewerkingen in hybride modus, inclusief stappen voor training en modelimplementatie die naadloos worden overgestapt tussen cloud en on-premises
- Herhaalbaar, alle assets correct bijgehouden, model opnieuw getraind indien nodig, implementatie automatisch bijgewerkt na opnieuw trainen
Model on-premises en cloud trainen, implementeren in zowel de cloud als on-premises Cloud Combineer on-premises investeringen met schaalbaarheid in de cloud.

Breng cloud- en on-premises berekeningen onder één glasvenster.

Toegang krijgen tot één bron van waarheid voor gegevens in de cloud en on-premises repliceren (lui op gebruik of proactief).

Schakel primair gebruik van cloudresources in wanneer on-premises resources niet beschikbaar zijn (in gebruik of in onderhoud) of niet voldoen aan specifieke hardwarevereisten (GPU).
- Door Azure beheerde berekeningen in de cloud.
Door de klant beheerde Kubernetes on-premises
- Volledig geautomatiseerde machine learning-bewerkingen in hybride modus, inclusief stappen voor training en modelimplementatie die naadloos worden overgestapt tussen cloud en on-premises
- Herhaalbaar, alle assets correct bijgehouden, model opnieuw getraind indien nodig, implementatie automatisch bijgewerkt na opnieuw trainen
Model on-premises trainen, model implementeren in de cloud On-premises Sla gegevens on-premises op om te voldoen aan vereisten voor gegevenslocatie.

Implementeer het model in de cloud voor toegang tot globale services of om de elasticiteit van rekenkracht voor schaal en doorvoer in te schakelen.
- Door Azure beheerde compute in de cloud
- Door de klant beheerde Kubernetes on-premises
- Volledig geautomatiseerde machine learning-bewerkingen in hybride modus, inclusief stappen voor training en modelimplementatie die naadloos worden overgestapt tussen cloud en on-premises
- Herhaalbaar, alle assets correct bijgehouden, model opnieuw getraind indien nodig, implementatie automatisch bijgewerkt na opnieuw trainen
Bring your own AKS in Azure Cloud Krijg meer beveiliging en controles.

Stel alle persoonlijke IP-machine learning in om gegevensexfiltratie te voorkomen.
- AKS-cluster achter een virtueel Azure-netwerk
- Privé-eindpunten in hetzelfde virtuele netwerk voor Azure Machine Learning-werkruimte en bijbehorende resources
Volledig geautomatiseerde machine learning-bewerkingen
Volledige levenscyclus van machine learning on-premises On-premises Beveilig gevoelige gegevens of eigen IP-adressen, zoals machine learning-modellen, code en scripts. - Uitgaande proxyserververbinding on-premises
- Privékoppeling van Azure ExpressRoute en Azure Arc naar Azure-resources
- Door de klant beheerde Kubernetes on-premises
- Volledig geautomatiseerde machine learning-bewerkingen

Beperkingen voor Kubernetes-rekendoel

Een KubernetesCompute 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.
  • Modellen (inclusief het basismodel) uit de modelcatalogus en het register worden niet ondersteund op Online-eindpunten van Kubernetes.

In deze sectie vindt u een overzicht van aanbevolen procedures voor het werken met een Kubernetes-rekenproces.

Scheiding van verantwoordelijkheden tussen het IT-operations-team en het data science-team. Zoals eerder beschreven, is het beheren van uw eigen reken- en infrastructuur voor machine learning-werkbelasting een complexe taak. De beste aanpak is om het IT-operations-team de taak te laten afhandelen, zodat het data science-team zich kan richten op machine learning-modellen voor de efficiëntie van de organisatie.

Instantietypen maken en beheren voor verschillende machine learning-workloadscenario's. Elke machine learning-workload maakt gebruik van verschillende hoeveelheden rekenresources, zoals CPU/GPU en geheugen. Azure Machine Learning implementeert het exemplaartype als een aangepaste Kubernetes-resourcedefinitie (CRD) met eigenschappen van nodeSelector en resource request/limit. Met een zorgvuldig samengestelde lijst met exemplaartypen kunnen IT-bewerkingen zich richten op machine learning-workload op specifieke knooppunten 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 Machine Learning-werkruimte of verschillende werkruimten. Met dit proces worden meerdere rekendoelen gemaakt in één werkruimte of meerdere werkruimten. Omdat veel klanten data science-projecten organiseren rond de Machine Learning-werkruimte, kunnen meerdere data science-projecten nu hetzelfde Kubernetes-cluster delen. Deze aanpak vermindert de overhead voor machine learning-infrastructuurbeheer aanzienlijk en verbetert de IT-kostenbesparing.

Isolatie van team-/projectworkloads met behulp van Kubernetes-naamruimte. Wanneer u een Kubernetes-cluster koppelt aan een 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.

Vergelijking van KubernetesCompute- en verouderde AksCompute-doelen

Met de Azure Machine Learning CLI/Python SDK v1 kunt u modellen implementeren op AKS met behulp van het verouderde AksCompute doel. Zowel de als AksCompute de KubernetesCompute doelen ondersteunen AKS-integratie, maar de ondersteuningsbenadering verschilt. De volgende tabel bevat een overzicht van de belangrijkste verschillen:

Mogelijkheid AksCompute (verouderd) KubernetesCompute
De CLI/SDK v1 gebruiken Ja Nr.
De CLI/SDK v2 gebruiken Nr. Ja
Training instellen Nr. Ja
Realtime deductie toepassen Ja Ja
Batchdeductie toepassen Nr. Ja
Toegang tot nieuwe functies voor realtime deductie Geen ontwikkeling van nieuwe functies Actieve roadmap beschikbaar

In overweging van deze verschillen en de algehele ontwikkeling van Machine Learning voor het gebruik van de CLI/SDK v2, is de aanbevolen benadering om Kubernetes-rekendoel (KubernetesCompute) te gebruiken voor de implementatie van AKS-modellen.

Bekijk de volgende artikelen voor meer informatie:

Voorbeelden van machine learning

Machine learning-voorbeelden zijn beschikbaar in de opslagplaats azure Machine Learning (azureml-examples) op GitHub. Vervang in elk voorbeeld de naam van het rekendoel door uw Kubernetes-rekendoel en voer het voorbeeld uit.

Hier volgen verschillende opties: