Runj – OCI-kompatibilis eszköztár a FreeBSD jail alapú konténerek kezelésére

Samuel Karp, az Amazon mérnöke, aki a Bottlerocket Linux disztribúciós és konténerleválasztó technológiát fejleszti az AWS-hez, egy új futtatókörnyezetet fejleszt, amely FreeBSD jail környezeteken alapul, hogy az OCI (Open Container) specifikációs kezdeményezésnek megfelelően tervezett konténerek izolált elindítását biztosítsa. . A projekt kísérleti jellegű, a fő munkától szabadidőben fejlődött, és még mindig a prototípus stádiumában van. A kód Go nyelven íródott, és a BSD licenc alatt kerül terjesztésre.

A fejlesztés megfelelő szintre emelése után a projekt potenciálisan olyan szintre nőhet, amely lehetővé teszi a runj használatával a szokásos futási környezet helyettesítését Docker és Kubernetes rendszerekben, a FreeBSD használatával a Linux helyett a konténerek futtatásához. Az OCI futtatókörnyezetéből a parancsok jelenleg a tárolók létrehozására, törlésére, indítására, kényszerített leállítására és állapotának kiértékelésére vannak implementálva. A konténerkitöltés a szabványos vagy lecsupaszított FreeBSD környezet alapján jön létre.

Mivel az OCI specifikáció még nem támogatja a FreeBSD-t, a projekt számos további paramétert fejlesztett ki a jail és a FreeBSD konfigurálásával kapcsolatban, amelyeket a tervek szerint be kell terjeszteni a fő OCI specifikációba. A jail kezeléséhez a FreeBSD jail, jls, jexec, kill és ps segédprogramjait használják, anélkül, hogy közvetlenül hozzáférnének a rendszerhívásokhoz. A jövőbeli tervek között szerepel az erőforrás-korlátozások kezelésének támogatása a kernel RCTL felületén keresztül.

A saját futtatókörnyezetén kívül egy kísérleti réteget is fejlesztenek a projekttárban a futásidejű konténerrel (Dockerben használatos), a FreeBSD támogatására módosítva. Egy speciális segédprogram kínálja a FreeBSD rootfs fájljait OCI-kompatibilis konténer képpé konvertálására. A létrehozott kép később importálható konténerbe.

Forrás: opennet.ru

Hozzászólás