Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
In dit artikel leert u hoe u gedistribueerde AI-workloads uitvoert op Azure Kubernetes Service (AKS) met behulp van Ray voor de rekenruntime en Kueue voor toegangsbeheer. Deze oplossing omvat de volledige levenscyclus, van infrastructuurprovisioning tot en met trainen, batchinferentie en online bediening.
Belangrijk
Opensource-software wordt vermeld in AKS-documentatie en -voorbeelden. Software die u implementeert, is uitgesloten van AKS-serviceovereenkomsten, beperkte garantie en ondersteuning voor Azure. Wanneer u opensource-technologie naast AKS gebruikt, raadpleegt u de beschikbare ondersteuningsopties van de respectieve community's en projectonderhouders om een plan te ontwikkelen.
Microsoft neemt de verantwoordelijkheid voor het bouwen van de opensource-pakketten die we implementeren op AKS. Deze verantwoordelijkheid omvat het volledige eigendom van het build-, scan-, teken-, validatie- en hotfixproces, samen met controle over de binaire bestanden in container-images. Zie Beveiligingsbeheer voor AKS- en AKS-ondersteuningsdekking voor meer informatie.
Wat is Ray?
Ray is een opensource-framework voor het schalen van AI en Python toepassingen. Het biedt een uniforme runtime voor gedistribueerde training, hyperparameterafstemming, batchdeductie en modelverwerking, zodat u workloads op meerdere knooppunten kunt schalen zonder toepassingslogica te herschrijven.
Ray vereenvoudigt gedistribueerde computing door planning, fouttolerantie en resourcebeheer te verwerken. Het framework ondersteunt machine learning-bibliotheken zoals PyTorch, TensorFlow en Hugging Face via integraties zoals Ray Train, Ray Data en Ray Serve. Zie de Ray GitHub-opslagplaats voor meer informatie.
Wat is KubeRay?
KubeRay is een Kubernetes-operator die de levenscyclus van Ray-clusters beheert. Het biedt aangepaste resources, RayJob voor batchworkloads en RayService voor permanente service-eindpunten, waarmee het maken, schalen en afbreken van clusters wordt geautomatiseerd. Zie de KubeRay GitHub-opslagplaats voor meer informatie.
Wat is Kueue?
Kueue is een controller voor taakwachtrijen in Kubernetes die de toelating van workloads beheert op basis van resourcequota's. In plaats van elke ingediende taak onmiddellijk resources te laten verbruiken, laat Kueue taken alleen toe binnen gedefinieerde quota: taken die passen, worden uitgevoerd; taken die niet passen, wachten in de rij. Zie het Kueue-overzicht op AKS voor een gedetailleerd overzicht van Kueue-concepten en -configuratie.
Oplossingsarchitectuur
Deze oplossing combineert Kueue voor toegangsbeheer met KubeRay voor Ray-clusterlevenscyclusbeheer op AKS. Terraform richt de infrastructuur in, Helm installeert de operators vanuit Microsoft Container Registry (MCR) en workloadidentiteit biedt veilige toegang tot Azure Blob Storage zonder opgeslagen aanmeldingsgegevens.
Het implementatieproces bestaat uit drie modules:
- Infrastructuur: Terraform richt het AKS-cluster in met GPU-knooppuntgroepen, installeert KubeRay- en Kueue-operators via Helm, maakt Azure Blob Storage en configureert de workloadidentiteit.
- Kueue-wachtrijen : Kubernetes-manifesten definiëren ResourceFlavors (CPU- en GPU-knooppunttypen), ClusterQueues (quota en toegangsbeleid) en LocalQueues (inzendpunten met naamruimtebereik).
- Workloads : RayJob- en RayService-manifesten verzenden AI-workloads die Kueue op basis van het beschikbare quotum toegeeft.
Ray-workloads beginnen met suspend: true. Kueue beoordeelt de beschikbaarheid van quota en heft de onderbreking van toegelaten werkbelastingen op, waarna KubeRay het Ray-cluster aanmaakt en de taak uitvoert.
Voorbeelden van werkbelasting
| Example | Typologie | GPUs | Description |
|---|---|---|---|
| Het weermodel van Aurora verfijnen | RayJob | 1×A100 | LoRA-fijntuning van het Microsoft Aurora-weerbasismodel |
| Een LLM trainen | RayJob | 4×A100 | Gedistribueerde Qwen2.5-7B LoRA nauwkeurig afstemmen met LLaMA-Factory |
| Batchinferentie uitvoeren | RayJob | 1×A100 | offline inferentie met vLLM met een getrainde LoRA-adapter |
| Een model online aanbieden | RayService | 1×GPU | Permanent HTTP-eindpunt met Ray Serve |