•  niereh-światło

Na kontenerach

Korzystanie z kontenerów, co i dlaczego

Czym są pojemniki

[Kontenery] to nazwa nadana środowiskom z ograniczeniami, możliwa dzięki kolekcji podsystemów w systemie Linux, takich jak [cgroups ] oraz [namespaces ]. Chociaż strona wiki używa słowa wirtualizacja Myślę, że słowo izolacja jest bardziej odpowiednie, ponieważ wirtualizacja oznacza, że ​​istnieje warstwa translacji pomiędzy nimi, podczas gdy cgroups i przestrzenie nazw służą do oddzielania i kontekstualizowania procesów.

Cgroups służą do definiowania zasad alokacji zasobów, zwykleRAM orazCPU , podczas gdy przestrzenie nazw kontrolują konteksty, takie jak punkty montowania, sieci i użytkownicy. [Apparmor] zamiast tego zapewnia sposób na ograniczenie możliwości dla środowisk kontenerów jako całości, podczas gdy apparmor bez kontenerów jest, jak napisano w wikipedii, oparty na programach.

Narzędzia takie jak flatpak oraz straż pożarnaużywać kontenerów, aby ograniczyć powierzchnię dostępu aplikacji użytkownika. Kontenery [Windows] implementują równoważne systemy, a także oferują wsparcie dla kontenerów linuksowych za pośrednictwem [WSL].

Ale dlaczego?

Zbyt wiele?

Kiedy zacząłem budować sosna , trochę poeksperymentowałem z wysyłaniem własnych obrazów kontenerów, dystrybuowanych z wydań github. Skrypt główny (trees ) polecenia były

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

Przypominało to flatpak, ponieważ wysyłałem statyczną deltę ostree opartą na głównym obrazie sosny i [sprawdzałem] nowy rootfs oparty na aplikacji, a następnie uruchamiałem na nim instancję kontenera. OpenVZ miał wiele problemów z uruchomieniem kontenera przed v7 (skoro wiesz...uruchamiałeś zagnieżdżone kontener na kontenerowym [VPS], a jądro było rozwidleniemv2.6 (!))...to było ogromny strata czasu.

Gdy?

Moją próbą było uzyskanie minimalnego czasu wykonywania kontenera bez koniecznościdocker lub bardziej wydajne oprogramowanie, ponieważ docker jest prawdopodobnie najlżejszy i rój doków , ponieważ jest wbudowana, udostępnia wiele funkcji i zapewnia najbardziej przydatne funkcje do aranżacji, co sprawia, że ​​jest najbardziej oszczędny w stosunku do wymagań systemu hosta k8s lub koczownik.

Pomimo tego, że kontenery są funkcją, której możesz potrzebować w większości przypadków, aranżacja nie jest. Myślę luźno ukierunkowany kampanie reklamowe przyciągają niezamierzony docelową grupę docelową takiego oprogramowania, dającą wiarę, że może się przydać do nich , nie podkreślając założenia, że ​​ty naprawdę trzeba dużo skalować (!), aby uzasadnić złożoność kosztów takich konfiguracji. Liczba wygodne oprzyrządowanie zbudowany wokół k8s, aby wspomóc proces ładowania początkowego klastra k8s, powinien być wystarczającym dowodem ...

Wnioski

Narzędzia do orkiestracji zapełniają miejsce w poszukiwaniu rozwiązań do zarządzania maszynami z wieloma hostami, gdy użytkownicy nie są w stanie odróżnić serwerów dla zwierząt domowych i dla bydła. W wielu przypadkach oprogramowanie takie jak ansible, pyinfra, a nawet cssh lub assz jest wszystkim, czego kiedykolwiek potrzeba.

Tagi postów: