Eszközök

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

AICR v1.0: verziólezárt, ellenőrizhető GPU-klaszter konfigurációs receptek

A főszereplő az NVIDIA AI Cluster Runtime (AICR), amely a GPU-gyorsított Kubernetes klaszterek kompatibilitási problémáit célozza meg.

AICR v1.0: verziólezárt, ellenőrizhető GPU-klaszter konfigurációs receptek

Az NVIDIA kiadta az AI Cluster Runtime (AICR) v1.0 verzióját, amely stabil kompatibilitási szerződést vezet be a GPU-gyorsított Kubernetes klaszterek konfigurációjához használt, verziólezárt receptek köré. AICR receptek rögzítik a komponensek kombinációit, amelyek együtt működnek, le tudják gyártani a telepítési artefaktumokat különböző deployer eszközökhöz (Helm, Argo CD, Flux, Helmfile), és aláírt bizonyítékot csatolnak arról a hardverről, amelyen a validáció történt.

Miért volt szükség erre?

GPU-gyorsított Kubernetes klaszterek sok, egymástól független kiadási cikluson lévő komponens kompatibilitásától függenek: host kernel, GPU driverek, konténer runtime-ok, hálózat, tárhely, operátorok és munkafolyamat-keretrendszerek. Egy adott konfiguráció, amely működik egy szolgáltatásnál, GPU-generációnál vagy Kubernetes verziónál, más helyzetben tetszőleges módon sikertelen lehet. A telepítés utáni verzióütközések visszakövetése lassú és hibára hajlamos. Emellett az, hogy egy komponens telepítve van, még nem bizonyítja, hogy a klaszter egészséges, vagy hogy a recept által megkövetelt képességek (például gang scheduling vagy accelerator discovery) működnek, vagy hogy a teljesítmény megfelel a küszöbértékeknek.

AICR a fenti problémákat azzal kezeli, hogy:

  • verzióhoz rögzített recepteket ad, amelyek megmondják, milyen komponensek és beállítások működnek együtt;
  • élő klaszteren végzett validációt és aláírt bizonyítékokat (signed evidence) tesz közzé;
  • deployer-semleges kötegeket (bundle) állít elő, amelyeket különböző eszközökkel lehet alkalmazni.

Mire képes az AICR?

AICR négy alapvető képességet biztosít:

  1. Snapshot — rögzíti a megfigyelt klaszterállapotot, beleértve a Kubernetes, operációs rendszer, kernel, GPU és topológiai információkat.
  2. Recipe — leírja a kívánt, verziólezárt komponenskonfigurációt, valamint a hozzá tartozó korlátokat és validációs fázisokat.
  3. Bundle — a receptet artefaktumokra rendereli az operátor által preferált telepítő eszközökhöz.
  4. Validation — összeveti a receptet a megfigyelt állapottal, és ahol deklarált, telepítési, konformancia és teljesítmény-ellenőrzéseket futtat a klaszteren.

Ezek a képességek egymástól függetlenek: a snapshot nem kívánt konfiguráció, a recipe nem hajtja végre a reconciliációt. A régi, nyílt forráskódú CD-eszközök (Helm, Argo CD, Flux, Helmfile) alkalmazzák a bundle-t a klaszterben; az AICR ezután ellenőrizheti a futó klasztert a recepthez képest, és aláírt bizonyítékot készíthet az eredményről.

Mi újdonság v1.0-ban?

AICR v1.0 stabil kompatibilitási szabályokat határoz meg a projekt publikus felületeihez és artefaktumaihoz. Konkrétan a következőkre terjed ki:

  • aicr CLI publikus parancsai, flag-ek, kilépési szemantika és strukturált kimenet;
  • aicrd REST API és OpenAPI szerződés;
  • a github.com/NVIDIA/aicr/pkg/client/v1 csomag exportált API-ja;
  • generált bundle elrendezés és AICR artefakt sémák.

Minden publikus felülethez elkötelezett alapvonal (committed baseline) tartozik, amelyet ellenőriznek a változtatások beolvasztása (merge) előtt; a kiadási politika semantic breaking change-eket határoz meg: v1.0 után a stabil publikus felületek eltávolítása vagy inkompatibilis megváltoztatása új major kiadást igényel.

A Go integrátorok számára a pkg/client/v1 olyan használati munkafolyamatot tesz elérhetővé, amely nem igényel beágyazott, belső AICR csomagok importálását. A CLI és a REST szerver ugyanazt a felületet használja, csökkentve annak kockázatát, hogy két public entry point eltérően viselkedjen.

Validációs műszerfal és közösségi hozzájárulás

AICR-hez tartozó validációs műszerfal (validation dashboard) lehetővé teszi, hogy operátorok receptet találjanak szolgáltatás, GPU, operációs rendszer, munkafolyamat-szándék és opcionális platform szerint; megtekinthetik a recept státuszát és a publikált bizonyítékokat arról a hardverkonfigurációról, amelyen a validáció futott.

A receptmodell már az ökoszisztémában is használatra talált: Pulumi Labs AICR-t expozícionál egy infrastruktúra-kód provideren keresztül, Mirantis k0rdent integrációja pedig multi-klaszter menedzsmenthez csomagolja azt. AICR projekt ma több mint 100 különböző közreműködőt tart számon, és ezek közel fele a projekt határain kívülről, azaz nem az NVIDIA-tól érkezik.

A közreműködés lehetőségei közé tartozik: új funkciók, integrációk vagy dokumentáció hozzáadása; recept javaslata hardverre, operációs rendszerre vagy szolgáltatásra, amely még nincs lefedve; recept validálása saját klaszteren és aláírt bizonyíték benyújtása; valamint hibajelentés vagy funkciókérés a GitHub Issues-on keresztül. A projekt tájékoztató anyagai között megtalálható a projekt repository-ja, a contributing guide és az issue tracker.

Hogyan néz ki a gyakorlatban?

Egy operátor például kiválaszthatja az EKS-et, GB300-at, Ubuntu-t, training munkafolyamatot és Kubeflow-t; ezekre a kritériumokra feloldva egy rögzített receptet; azt Argo CD-nek renderelve bevezethetik a meglévő GitOps folyamaton keresztül; majd az AICR-ral validálhatják a futó klasztert ugyanahhoz a recepthez viszonyítva. Ugyanez a recept renderelhető Helm-re, Flux-ra vagy Helmfile-re anélkül, hogy a kívánt konfiguráció megváltozna.

Összefoglalva, az AICR v1.0 célja, hogy reprodukálható, ellenőrizhető szerződést biztosítson a GPU-gyorsított Kubernetes klaszterek konfigurációjához, és stabil felületet nyújtson operátoroknak, integrátoroknak és közreműködőknek a jövőbeni fejlesztésekhez és integrációkhoz.