Runj - OCI-kompatibilná súprava nástrojov na správu kontajnerov založená na väzení FreeBSD

Samuel Karp, inžinier v Amazone, ktorý vyvíja distribúciu Bottlerocket Linux a technológie izolácie kontajnerov pre AWS, vyvíja nový runtime runj založený na väzenských prostrediach FreeBSD, ktorý poskytuje izolované spustenie kontajnerov navrhnutých v súlade s iniciatívou špecifikácie OCI (Open Container) . Projekt je umiestnený ako experimentálny, vyvinutý vo voľnom čase od hlavnej práce a je stále v štádiu prototypu. Kód je napísaný v Go a distribuovaný pod licenciou BSD.

Po uvedení vývoja na správnu úroveň môže projekt potenciálne rásť na úroveň, ktorá vám umožní použiť runj na nahradenie bežného runtime v systémoch Docker a Kubernetes, pričom na spúšťanie kontajnerov sa použije FreeBSD namiesto Linuxu. Z OCI runtime sú v súčasnosti implementované príkazy na vytvorenie, odstránenie, spustenie, vynútenie ukončenia a vyhodnotenie stavu kontajnerov. Náplň kontajnera je vytvorená na základe štandardného alebo obmedzeného prostredia FreeBSD.

Keďže špecifikácia OCI zatiaľ nepodporuje FreeBSD, projekt vyvinul množstvo dodatočných parametrov súvisiacich s konfiguráciou väzenia a FreeBSD, ktoré sa plánujú predložiť na zahrnutie do hlavnej špecifikácie OCI. Na správu väzenia sa používajú nástroje väzenia, jls, jexec, kill a ps z FreeBSD bez priameho prístupu k systémovým volaniam. Plány do budúcnosti zahŕňajú pridanie podpory pre správu obmedzení zdrojov prostredníctvom rozhrania RCTL jadra.

Okrem vlastného runtime sa v úložisku projektu vyvíja aj experimentálna vrstva na použitie s runtime containered (používa sa v Dockeri), upravená na podporu FreeBSD. Špeciálny nástroj je ponúkaný na konverziu FreeBSD rootfs na OCI-kompatibilný obraz kontajnera. Vytvorený obrázok je možné neskôr importovať do kontajnera.

Zdroj: opennet.ru

Pridať komentár