•  ontereh-licht

Op containers

Containers gebruiken, wat en waarom

Wat zijn containers

[Containers] is een naam die wordt gegeven aan beperkte omgevingen, mogelijk gemaakt door een verzameling subsystemen binnen linux zoals [cgroups ] en [namespaces ]. Hoewel de wikipagina het woord virtualisatie ik denk dat het woord isolatie is meer geschikt, aangezien virtualisatie betekent dat er een vertaallaag tussen zit, terwijl cgroups en namespaces processen scheiden en contextualiseren.

C-groepen worden meestal gebruikt om toewijzingsbeleid voor resources te definiërenRAM enCPU , terwijl naamruimten de contexten besturen, zoals koppelpunten, netwerken en gebruikers. [Apparmor] biedt in plaats daarvan een manier om de mogelijkheden voor containeromgevingen als geheel te beperken, terwijl apparmor zonder containers, zoals geschreven in wikipedia, programmagebaseerd is.

Hulpmiddelen zoals flatpak en vuurgevangenisgebruik containers om het toegangsoppervlak van gebruikerstoepassingen te beperken. [Windows] containers implementeren gelijkwaardige systemen en bieden ook ondersteuning voor linux containers via [WSL].

Maar waarom?

Te veel?

Toen ik begon met bouwen pijnboom , heb ik een beetje geëxperimenteerd met het verzenden van mijn eigen containerafbeeldingen, gedistribueerd vanuit github-releases. Het hoofdscript (trees ) commando's waren

Usage: trees APP [FLAGS]...
'APP'               Install apps through ostree deltas checkouts.
    -b, --base      base image (alp,trub...)
    -n, --name      same as APP (etcd,hhvm...)
    -f, --force     clear before install
    -d, --delete    clear checkout and prune ostree repo
ck, check           make sure the apps repo is mounted
co, checkout        builds the trees of links for the specified APP
    -t 	            optional path where to build the tree

Het was vergelijkbaar met flatpak, omdat ik een ostree statische delta verscheepte op basis van de hoofdafbeelding van de pijnboom, en de nieuwe app-gebaseerde rootfs [uitcheckte] en vervolgens een containerinstantie er bovenop lanceerde. OpenVZ had vóór v7 veel problemen met het uitvoeren van containers (omdat je weet... genest container op een op containers gebaseerde [VPS], en de kernel was een vork vanv2.6 (!))...Het was een enorm tijdsverspilling.

Wanneer?

Mijn poging was om een ​​minimale containerruntime te krijgen zonder datdocker of meer krachtige software, aangezien docker waarschijnlijk de lichtste is, en havenarbeider zwerm , die is ingebouwd, deelt veel functionaliteit en biedt u de meest bruikbare functies voor orkestratie, waardoor het het meest leunen op hostsysteemvereisten in vergelijking met k8s of nomade.

Ondanks dat containers een functie zijn die u meestal wilt, is orkestratie dat niet. I denk losjes gericht reclamecampagnes trekken de onbedoeld doelgroep voor dergelijke software, waardoor men gelooft dat het nuttig kan zijn naar hen , zonder de premisse te benadrukken dat u Echt moeten veel (!) schalen om de complexiteitskosten van dergelijke opstellingen te rechtvaardigen. Het aantal gemakstooling gebouwd rond k8s om het bootstrapping-proces van een k8s-cluster te ondersteunen, zou voldoende bewijs moeten zijn ...

conclusies

Orkestratietools verdringen de plaats voor oplossingen om machines met meerdere hosten te beheren wanneer gebruikers het verschil tussen huisdieren- en veeservers niet kunnen zien. In veel gevallen kan software zoals ansible, pyinfra of zelfs cssh of ass is alles wat men ooit nodig heeft.

Berichttags: