Az Azure Machine Learningben elérhető Kubernetes-számítási cél ismertetése
ÉRVÉNYES:Azure CLI ml-bővítmény v2 (aktuális)Python SDK azure-ai-ml v2 (aktuális)
Az Azure Machine Learning CLI és a Python SDK v2 támogatja a Kubernetes számítási célokat. Egy meglévő Azure Kubernetes Service- (AKS-) fürt vagy Azure Arc-kompatibilis Kubernetes-fürt (Arc Kubernetes) is engedélyezhető Kubernetes számítási célként. Modellek betanítása vagy üzembe helyezése a Machine Learningben a számítás használatával.
Ez a cikk bemutatja, hogyan használható a Kubernetes számítási cél a Machine Learningben, beleértve a használati forgatókönyveket, az ajánlott ajánlott eljárásokat, valamint a régi és az KubernetesCompute
örökölt AksCompute
célok összehasonlítását.
A Kubernetes számítási céljának működése
Az Azure Machine Learning Kubernetes Compute kétféle Kubernetes-fürtöt támogat.
Compute | Hely | Leírás |
---|---|---|
AKS-fürt | Az Azure-on belül | Az Ön által felügyelt AKS-fürttel az Azure-ban biztonságra és vezérlőkre tehet szert, hogy megfeleljen a megfelelőségi követelményeknek, és rugalmasan felügyelhesse a csapat gépi tanulási számítási feladatait. |
Arc Kubernetes-fürt | Az Azure-on kívül | Az Arc Kubernetes-fürttel modelleket taníthat be vagy helyezhet üzembe bármely helyszíni vagy többfelhős infrastruktúrában vagy a peremhálózaton. |
Az AKS- vagy Arc Kubernetes-fürtön egyszerű fürtbővítmény üzembe helyezésével a Kubernetes-fürt zökkenőmentesen támogatott a Machine Learningben a betanítási vagy következtetési számítási feladatok futtatásához. A Machine Learning számítási feladataihoz egyszerűen engedélyezheti és használhatja a meglévő Kubernetes-fürtöt a következő eljárással:
1. lépés: Azure Kubernetes Service-fürt vagy Arc Kubernetes-fürt előkészítése.
2. lépés: Az Azure Machine Learning-fürtbővítmény üzembe helyezése.
3. lépés: A Kubernetes-fürt csatolása az Azure Machine Learning-munkaterülethez.
4. lépés: A Kubernetes számítási céljának használata a CLI v2, az SDK v2 vagy az Azure Machine Learning Studio felhasználói felületén.
A folyamat elsődleges feladatai a következők:
Az informatikai üzemeltetési csapat felelős az 1., 2. és 3. lépésért. Ez a csapat előkészít egy AKS- vagy Arc Kubernetes-fürtöt, telepíti a Machine Learning-fürtbővítményt, és csatolja a Kubernetes-fürtöt a Machine Learning-munkaterülethez. Ezen alapvető számítási lépések mellett az informatikai üzemeltetési csapat olyan ismerős eszközöket is használ, mint az Azure CLI vagy a kubectl, hogy elvégezze a következő feladatokat az adatelemzési csapat számára:
Konfigurálja a hálózati és biztonsági beállításokat, például a kimenő proxykiszolgáló-kapcsolatot vagy az Azure-tűzfalat, a következtetési útválasztó (azureml-fe) beállítását, az SSL/TLS-megszakítást és a virtuális hálózat beállítását.
Példánytípusokat hozhat létre és kezelhet különböző gépi tanulási számítási feladatokhoz, és hatékony számítási erőforrás-kihasználtságot érhet el.
A Kubernetes-fürttel kapcsolatos számítási feladatok hibáinak elhárítása.
Az adatelemzési csapat azután kezdi meg a feladatait, hogy az informatikai üzemeltetési csapat befejezte a számítási célok beállítását és létrehozását. Ez a csapat felderíti a Machine Learning-munkaterületen elérhető számítási célok és példánytípusok listáját. A számítási erőforrások felhasználhatók betanítási vagy következtetési számítási feladatokhoz. Az adatelemzési csapat az előnyben részesített eszközök vagy API-k használatával határozza meg a számítási cél nevét és a példánytípus nevét. Használhatják az Azure Machine Learning CLI v2-t, a Python SDK v2-t vagy a Machine Learning Studio felhasználói felületét.
A Kubernetes használati forgatókönyvei
Az Arc Kubernetes-fürttel modelleket hozhat létre, taníthat be és helyezhet üzembe bármely helyszíni és többfelhős infrastruktúrában a Kubernetes használatával. Ez a stratégia olyan új használati mintákat nyit meg, amely korábban nem lehetséges felhőbeállítási környezetben. Az alábbi táblázat az Azure Machine Learning Kubernetes-számítás használatakor engedélyezett új használati minták összegzését tartalmazza:
Használati minta | Az adatok helye | Célok és követelmények | Forgatókönyv konfigurációja |
---|---|---|---|
Modell betanítása a felhőben, modell helyszíni üzembe helyezése | Felhőbeli | A felhőalapú számítással rugalmas számítási igényeket vagy speciális hardvereket, például GPU-t támogathat. A modell üzembe helyezésének helyszíninek kell lennie a biztonsági, megfelelőségi vagy késési követelmények szempontjából. |
– Azure által felügyelt számítási feladatok a felhőben - Ügyfél által felügyelt Kubernetes helyszíni - Teljesen automatizált gépi tanulási műveletek hibrid módban, beleértve a betanítási és modelltelepítési lépéseket, amelyek zökkenőmentesen áttérnek a felhő és a helyszíni környezet között - Ismételhető, minden eszköz megfelelően nyomon követhető, szükség szerint újratanított modell, az újratanítás után az üzembe helyezés automatikusan frissül |
Modell betanítása a helyszínen és a felhőben, üzembe helyezés a felhőben és a helyszínen | Felhőbeli | A helyszíni beruházások kombinálása a felhő méretezhetőségével. Felhőbeli és helyszíni számításokat hozhat egyetlen üvegpanel alatt. Egyetlen igazságforrás elérése a felhőbeli adatokhoz, és helyszíni replikálás (lazilyan a használaton vagy proaktív módon). Engedélyezze a felhőalapú számítási elsődleges használatot, ha a helyszíni erőforrások nem érhetők el (használatban vagy karbantartás alatt), vagy nem felelnek meg bizonyos hardverkövetelményeknek (GPU). |
- Azure által felügyelt számítási feladatok a felhőben. Ügyfél által felügyelt Kubernetes helyszíni - Teljesen automatizált gépi tanulási műveletek hibrid módban, beleértve a betanítási és modelltelepítési lépéseket, amelyek zökkenőmentesen áttérnek a felhő és a helyszíni környezet között - Ismételhető, minden eszköz megfelelően nyomon követhető, szükség szerint újratanított modell, az újratanítás után az üzembe helyezés automatikusan frissül |
Modell betanítása a helyszínen, modell üzembe helyezése a felhőben | Helyszíni | A helyszíni adatok tárolása az adattárolási követelményeknek való megfelelés érdekében. Modell üzembe helyezése a felhőben a globális szolgáltatáshoz való hozzáféréshez, vagy a számítási rugalmasság engedélyezése a skálázáshoz és az átviteli sebességhez. |
– Azure által felügyelt számítási feladatok a felhőben - Ügyfél által felügyelt Kubernetes helyszíni - Teljesen automatizált gépi tanulási műveletek hibrid módban, beleértve a betanítási és modelltelepítési lépéseket, amelyek zökkenőmentesen áttérnek a felhő és a helyszíni környezet között - Ismételhető, minden eszköz megfelelően nyomon követhető, szükség szerint újratanított modell, az újratanítás után az üzembe helyezés automatikusan frissül |
Saját AKS használata az Azure-ban | Felhőbeli | Nagyobb biztonság és vezérlők. Hozzon létre minden privát IP-alapú gépi tanulást az adatszivárgás megakadályozása érdekében. |
– Azure-beli virtuális hálózat mögötti AKS-fürt - Privát végpontok ugyanabban a virtuális hálózatban az Azure Machine Learning-munkaterülethez és a kapcsolódó erőforrásokhoz Teljesen automatizált gépi tanulási műveletek |
Teljes gépi tanulási életciklus a helyszínen | Helyszíni | Bizalmas adatok vagy védett IP-címek, például gépi tanulási modellek, kód és szkriptek védelme. | - Kimenő proxykiszolgáló-kapcsolat a helyszínen - Azure ExpressRoute és Azure Arc privát kapcsolat azure-erőforrásokhoz - Ügyfél által felügyelt Kubernetes helyszíni - Teljesen automatizált gépi tanulási műveletek |
A Kubernetes számítási célra vonatkozó korlátozások
Az KubernetesCompute
Azure Machine Learning számítási feladatainak (betanítási és modellkövetkeztetés) egyik célja a következő korlátozásokkal rendelkezik:
- Az Előzetes verziójú funkciók elérhetősége az Azure Machine Learningben nem garantált.
- A modellkatalógusból és a beállításjegyzékből származó modellek (beleértve az alapmodellt is) nem támogatottak a Kubernetes online végpontjaiban.
- A modellkövető üzembe helyezés fürtben történő létrehozásának folyamata 20 perces időtúllépési korlátot szab meg. Ez magában foglalja a kép letöltését, a modell letöltését és a felhasználói szkriptek inicializálását.
Ajánlott eljárások
Ez a szakasz a Kubernetes-számításokkal kapcsolatos ajánlott eljárásokat foglalja össze.
A felelősségek elkülönítése az informatikai üzemeltetési csapat és az adatelemzési csapat között. A korábban ismertetett módon a gépi tanulási számítási feladatokhoz szükséges saját számítási és infrastruktúra kezelése összetett feladat. A legjobb módszer az, ha az informatikai üzemeltetési csapat kezeli a feladatot, így az adatelemzési csapat a gépi tanulási modellekre összpontosíthat a szervezeti hatékonyság érdekében.
Példánytípusok létrehozása és kezelése különböző gépi tanulási számítási feladatokhoz. Minden gépi tanulási számítási feladat különböző mennyiségű számítási erőforrást használ, például CPU-t/GPU-t és memóriát. Az Azure Machine Learning a példánytípust Kubernetes egyéni erőforrásdefinícióként (CRD) implementálja, amelynek tulajdonságai és resource request/limit
tulajdonságainodeSelector
. A példánytípusok gondosan összeállított listájával az informatikai műveletek megcélzhatják a gépi tanulási számítási feladatokat adott csomópontokon, és hatékonyan kezelhetik a számítási erőforrások kihasználtságát.
Több Azure Machine Learning-munkaterület ugyanazt a Kubernetes-fürtöt használja. Egy Kubernetes-fürtöt többször is csatolhat ugyanahhoz a Machine Learning-munkaterülethez vagy különböző munkaterületekhez. Ez a folyamat több számítási célt hoz létre egyetlen munkaterületen vagy több munkaterületen. Mivel sok ügyfél adatelemzési projekteket szervez a Machine Learning-munkaterület köré, több adatelemzési projekt is megoszthatja ugyanazt a Kubernetes-fürtöt. Ez a megközelítés jelentősen csökkenti a gépi tanulási infrastruktúra felügyeleti terhelését, és javítja az informatikai költségek megtakarítását.
Csapat/projekt számítási feladat elkülönítése a Kubernetes-névtér használatával. Amikor Kubernetes-fürtöt csatol egy Machine Learning-munkaterülethez, megadhat egy Kubernetes-névteret a számítási célhoz. A számítási cél által futtatott összes számítási feladat a megadott névtér alá kerül.
A KubernetesCompute és az örökölt AksCompute-célok összehasonlítása
Az Azure Machine Learning CLI/Python SDK 1-ben az örökölt AksCompute
cél használatával telepíthet modelleket az AKS-en. Mind a célok támogatják az KubernetesCompute
AksCompute
AKS-integrációt, de a támogatási megközelítés eltérő. Az alábbi táblázat összefoglalja a főbb különbségeket:
Funkció | AksCompute (örökölt) | KubernetesCompute |
---|---|---|
A CLI/SDK v1 használata | Igen | Nem |
A CLI/SDK v2 használata | Nem | Igen |
Betanítás beállítása | Nem | Igen |
Valós idejű következtetés alkalmazása | Igen | Igen |
Kötegkövetkeztetés alkalmazása | Nem | Igen |
Új funkciók elérése valós idejű következtetéshez | Nincs új funkciófejlesztés | Aktív ütemterv érhető el |
E különbségek és a CLI/SDK v2 használatához szükséges általános Machine Learning-fejlődés figyelembevételével az ajánlott megközelítés a Kubernetes számítási cél (KubernetesCompute
) használata az AKS-modell üzembe helyezéséhez.
További információkért tekintse meg a következő cikkeket:
- A Kubernetes támogatott verzióinak és régióinak áttekintése
- Machine Learning-feladatok csatlakoztatása egyéni adattárolással
Gépi tanulási példák
A gépi tanulási példák a GitHub Azure Machine Learning-adattárában (azureml-examples) érhetők el. Minden példában cserélje le a számítási cél nevét a Kubernetes számítási célra, és futtassa a mintát.
Az alábbiakban több lehetőség közül választhat:
- Betanítási feladatminták a CLI 2-vel
- Betanítási feladatminták az SDK v2-vel
- Modell üzembe helyezése online végpontmintákkal és a CLI 2-vel
- Modell üzembe helyezése online végpontmintákkal és az SDK 2-vel
- Batch-végpontminták a CLI 2-vel