Eszközök

Mesterséges intelligenciával generált szöveg

NVIDIA DSX OS: nyílt forrású eszközök GPU-kli­szterek konfigurálására, tanúsítására és üzemeltetésére

A fő szereplő az NVIDIA DSX AI Factory Platform és annak nyílt forrású szoftverrétege, az NVIDIA DSX OS, amely három komponens révén ad eszközöket GPU-gyorsított Kubernetes klaszterekre: NVIDIA AI Cluster Runtime (AICR), NVIDIA Cluster Readiness Engine (NVCRE) és NVSentinel.

NVIDIA DSX OS: nyílt forrású eszközök GPU-kli­szterek konfigurálására, tanúsítására és üzemeltetésére

Az NVIDIA DSX OS az NVIDIA DSX AI Factory Platform nyílt forrású szoftverrétege, amely eszközöket ad a GPU-gyorsított Kubernetes infrastruktúra konfigurálásához, tanúsításához (certification) és üzemeltetéséhez. A csomag három fő nyílt forrású projektet tartalmaz: NVIDIA AI Cluster Runtime (AICR), NVIDIA Cluster Readiness Engine (NVCRE) és NVSentinel. Mindhárom projekt Apache 2.0 licenc alatt érhető el, és külső hozzájárulásokat fogadnak.

Miért fontos ez az üzemeltetőknek?

Egyetlen gyengébben teljesítő GPU jelentősen lassíthat egy többcsomós (distributed) tréningmunkát anélkül, hogy a hagyományos, egyszerű egészségellenőrzések riasztanának. A klaszter állapota változhat a csomópontok cseréje, driverek javítása vagy kapacitásbővítés során; ha ezek után nincs ismételt validáció, a korábbi minősítés már nem tükrözi a valós állapotot. Ez láthatatlan kapacitásveszteséget okozhat: rossz csomópontokon „pazarolt” számítási időt és bizonytalanul kihagyott, egészséges erőforrásokat egyaránt.

A DSX OS eszközei célja, hogy:

  • reprodukálható, verziózott szoftveralapot adjanak (AICR),
  • valódi munkaterhelés-alapú tanúsítást hajtsanak végre (NVCRE),
  • folyamatos megfigyelést, karanténkezelést és revalidálást biztosítsanak éles üzem alatt (NVSentinel).

Configure: AICR — reprodukálható baseline

Az NVIDIA AI Cluster Runtime (AICR) deklaratív receptfájlokban határozza meg a klaszter szoftveralapját, rögzíti a komponensek verzióit és függőségeit, majd ezeket artefaktumokká („bundle”) rendereli, amelyeket a meglévő telepítőeszközök alkalmaznak. AICR célja a konfigurációs drift felismerése, a node‑konfigurációk következetességének fenntartása és a hibák reprodukálhatóságának javítása.

Példa recept létrehozására (parancs):

aicr recipe --service eks --accelerator h100 --os ubuntu --intent inference --platform dynamo -o recipe.yaml

A recept minden komponensnél rögzíti a verziót és a függőségi gráfot, illetve egy healthCheckAsserts blokkot, amely telepítés után részletes egészségellenőrzéseket futtat. A renderelés után az AICR artefaktumokat olyan deployerekhez adja, mint helm, Argo CD, Flux vagy helmfile:

aicr bundle --recipe recipe.yaml --deployer argocd --output ./bundles

Ezek a fájlok verziókövethetők és CI/CD folyamatokba illeszthetők: például aicr validate és aicr diff --fail-on-drift parancsokkal a pipeline automatikusan észlelheti a driftet.

Certify: NVCRE — munkaterhelés-alapú validáció

Az NVIDIA Cluster Readiness Engine (NVCRE) valódi AI munkaterheléseket és diagnosztikai teszteket futtat (többek között NCCL teszteket és NeMo-alapú előtanulási munkákat), hogy meggyőződjön arról, hogy a klaszter multinode, nagy sávszélességű munkákat is képes futtatni. Ennek célja a „goodput” növelése: azaz az eredményesen végrehajtott munka mennyiségének biztosítása.

A tanúsítás definíciója megadja, mely node‑ok kerülnek tesztelésre, milyen kategóriákat (pl. kommunikáció vagy training) és milyen küszöböket kell teljesíteni. Példa Certification manifest részletre:

apiVersion: nvcre.nvidia.com/v1alpha1 kind: Certification spec: target: nodeSelector: nvidia.com/gpu.present: "true" categories: - domain: communication variant: nccl-all-reduce - domain: training variant: nemotron5-8b options: thresholds: busBandwidthGBps: "value >= 300"

A futtatás parancsai:

nvcrectl certification run --cert-file certification.yaml --wait nvcrectl certification report gpu-cluster-cert -n <namespace>

A riport részletezi a kategóriák státuszát, futási időt, mért sávszélességet és a hibás node‑ok okát. A küszöbök (thresholds) konfigurálhatók: alapértelmezésben nem állítanak be teljesítményküszöböket, ezért érdemes explicit teljesítménygate‑eket megadni a degradáció észleléséhez.

NVCRE képes bisect módszerrel szűkíteni a hibás csoportokat: ha például egy 64‑node‑os all‑reduce gyenge sávszélességet mutat, a rendszer iteratívan felosztja a csoportot és újrafuttatja a teszteket, amíg jelölni tudja a gyanús node‑okat és megadja a hibaindokot.

Ajánlott gyakorlat: futtassuk NVCRE‑t új kapacitás átadásakor, klaszter átadáskor, valamint javítás után, mielőtt a node visszatérne a szolgáltatásba.

Operate: NVSentinel — megfigyelés, karantén és revalidálás

Az éles munkaterhelés mellett az NVSentinel folyamatosan figyeli a klasztert. Nem futtat GPU‑munkákat, a meglévő metrikákat és eseményeket használja (DCGM health, Xid hibák, NIC állapotok, felhőkarbantartási események). Alapbeállításban monitoring módban települ: ekkor csupán riasztásokat és node‑állapotokat publikál, de nem karanténoz vagy evakuál.

A Fault Quarantine szabálykészletek Common Expression Language (CEL) kifejezésekkel írhatók le. Példa részlet:

fault-quarantine: ruleSets: - enabled: true name: "GPU fatal error ruleset" match: all: - kind: "HealthEvent" expression: "event.agent == 'gpu-health-monitor' && event.componentClass == 'GPU' && event.isFatal == true" cordon: shouldCordon: true taint: key: "nvidia.com/gpu-error" value: "fatal" effect: "NoSchedule"

A szabályok kordonálást (cordon), taint‑et és opcionális automatikus evakuálást (drain) és javítást indíthatnak. A konfiguráció tartalmaz ún. circuit breaker beállításokat is, amelyek korlátozzák, hány node lehet egyszerre karanténban egy csúszóablakban.

Nem minden hiba automatikusan javítandó: egyes eseményeknél a rendszer CONTACT_SUPPORT javasolt lépéssel jelzi, hogy manuális vizsgálat szükséges. A hibák történetét is elemzi az NVSentinel, így ismétlődő hibák alapján egy node jogosulttá válhat további vizsgálatra.

Az üzemkészség záróköre: folyamatos visszatanúsítás

A teljes folyamat záró eleme, hogy a javított node a szolgáltatásba való visszatérés előtt validáláson megy keresztül. NVSentinel lifecycle controller képes ValidationRequest erőforrást létrehozni, kordont alkalmazni, meghívni NVCRE‑t és a teszteredmények alapján eltávolítani a kordon‑zárat, ha a node átment a teszteken. Így elkerülhető, hogy hibás node „néma” módon visszakerüljön a poolba.

Egyéb eseményeknél (pl. driverek in‑place frissítése) a revalidálást manuálisan kell elindítani vagy CI/CD pipeline‑ból triggerelni, például aicr diff --fail-on-drift használatával.

Parancsok példák a státusz lekérdezésére:

kubectl get validationrequests kubectl get nodes -l nvsentinel.nvidia.com/validation-state=validation-failed

A node állapotát tisztító műveletek nem igényelnek kézi node‑szerkesztést: egy későbbi, sikeres ValidationRequest törli a korábbi hibát.

Mit változtat ez az üzemeltetők napi munkáján?

AICR, NVCRE és NVSentinel segítségével a konfiguráció, a validáció és a helyreállítás ismételhetővé válik. A rendszer automatikusan koordinálhatja a karantént, a javítást és a visszatanúsítást, csökkentve a kézi átadások számát. Az operátorok feladatai közé továbbra is a baseline‑változások jóváhagyása, a küszöbök és tesztek kiválasztása, a bonyolultabb hibák kézi kivizsgálása és az eljárások megalkotása tartozik.

Hol kezdjük?

A projekteket és telepítési útmutatókat a következő repositorykban találjuk:

  • NVIDIA AI Cluster Runtime (AICR)
  • NVIDIA Cluster Readiness Engine (NVCRE)
  • NVSentinel

Az NVIDIA DSX OS eszközeivel kapcsolatos gyakorlati workshopok és demók rendszeresen elérhetők konferenciákon és közösségi eseményeken; a fejlesztői közösség a DSX AI Factory GitHubon és Slack csatornán folytatja a párbeszédet.

A DSX OS három komponense – AICR, NVCRE és NVSentinel – együttesen segítik a klaszterek konfigurálhatóságát, a munkaterhelés-alapú bizonyíthatóságot és az automatizált üzemeltetést, csökkentve a rejtett teljesítmény‑ és rendelkezésreállási kockázatokat.