GNU/Linux >> Znalost Linux >  >> Linux

Proč všichni používají Docker?

Docker je v poslední době v centru pozornosti IT konverzací, protože zvyšuje počet aplikací, které můžete napájet se stejnými servery, a zjednodušuje balení a odesílání aplikací.

  • Proč Rush to Docker?
  • Vztah Dockera a LXC
  • Vhodné při balení a odeslání
  • Shrnutí a závěr

„Docker je doslova neuvěřitelný. Nikdy jsem nebyl schopen nastavit serverové sítě pro klienty tak rychle.“ – tweet z  Systémový správce Linuxu Oliver Dunk, 21. července 2015.

V loňském roce byl Docker jednou z technologií, které skutečně upoutaly pozornost každého, a jaksi explodovala na scéně s mnoha firmami, které ji začaly používat poprvé – včetně tří velkých finančních institucí, podle viceprezidenta Dockeru Jamese Turnbulla. Je úžasné si myslet, že banky, ze všech organizací, byly ochotny přijmout verzi 1.0 aplikace, protože bezpečnost je pro ně tak prvořadá.

No, je to trochu šokující a tak trochu ne, protože open-source Docker si rychle vytvořil některé důležité vztahy – s Redhat, Canonical a dokonce i Microsoftem (přesvědčivé zejména proto, že Microsoft je samozřejmě proprietární).

Proč ten Rush to Docker?

Co je to, co zásadně žene všechny k Dockeru a kontejnerům obecně? Šéf virtualizace Parallels James Bottomley říká, že důvod, proč lidé přecházejí na Docker, souvisí s povahou hypervizorů virtuálních strojů. Hypervizory jsou „založeny na emulaci virtuálního hardwaru, [což znamená], že jsou náročné z hlediska systémových požadavků,“ poznamenává.

S kontejnery jsou operační systémy sdíleny, což jim umožňuje efektivněji využívat zdroje. Spíše než cestou virtualizace používají kontejnery jako základ jednu instanci Linuxu. Díky této taktice jsou organizace schopny „zanechat zbytečných 99,9 % nevyžádaných virtuálních počítačů,“ vysvětluje Bottomley, „a ponechá vám malou, úhlednou kapsli obsahující vaši aplikaci.“

Dopad tohoto odlišného způsobu budování systémů je hluboký. Pokud máte prostředí kontejneru, které jste správně nakonfigurovali, můžete potenciálně zvýšit počet instancí serverových aplikací o 300–500 % oproti virtuálním serverům KVM nebo Xen.

Kontejnery mohou znít jako revoluční koncept, ale ve skutečnosti tomu tak není. Technologický přístup existuje přinejmenším od dob vězení FreeBSD, které se poprvé objevilo v roce 2000.

Ve skutečnosti  Steven J. Vaughan-Nichols z ZDNet poukazuje na to, že jste pravděpodobně již nějakou dobu uživatelem kontejnerových systémů, aniž byste o tom věděli. „Google má vlastní open-source kontejnerovou technologii lmctfy (Let Me Contain That For You),“ vysvětluje. „Kdykoli použijete některé funkce Google – Vyhledávání, Gmail, Dokumenty Google, cokoliv – vystaví se vám nový kontejner.“

Vztah Dockera a LXC

Docker byl ve skutečnosti vytvořen pomocí Linux Containers (LXC), virtualizace na úrovni OS, pomocí které můžete spouštět různé kontejnery prostřednictvím jednoho řídicího hostitele. Hlavním faktorem, který odděluje virtuální počítače od kontejnerů, je to, že úroveň abstrakce pro hypervizor je celý počítač, zatímco úroveň abstrakce pro kontejnerový systém je jádro operačního systému.

Hypervizory zde mají výraznou výhodu, jak jste si mohli všimnout. Nejste uvízli u jediného OS nebo jádra. Na druhou stranu vaše kontejnery Docker sdílejí stejný operační systém a stejné jádro.

Samozřejmě nepotřebujete více operačních systémů. Pokud chcete mít spoustu aplikací spuštěných na nejmenším počtu fyzických serverů, Docker dává smysl.

S Dockerem mohou poskytovatelé cloudového hostingu a datová centra snížit své náklady na služby a vybavení.

Dockeru se podařilo zpopularizovat kontejnerový přístup částečně proto, že zlepšil zabezpečení a jednoduchost prostředí kontejnerů. Navíc je interoperabilita vylepšena jeho spojením s velkými společnostmi – jako je Google, Canonical a Red Hat – na jeho open source elementu libcontainer.

Velmi vhodné pro balení a odeslání

Bottomley poznamenává, že Docker je také užitečný pro balení a přepravu aplikací. Svou aplikaci můžete okamžitě přesunout, kamkoli ji potřebujete.

Tímto způsobem Docker skutečně našel způsob, jak vyhovět potřebám typického podniku. Podniky chtějí, aby jejich aplikace byly přenosné, a chtějí je efektivně distribuovat, ale tento proces je často zdrojem nekonzistence, říká analytik 451 Research Jay Lyman. „Stejně jako GitHub stimuloval spolupráci a inovace tím, že umožnil sdílení zdrojového kódu,“ poznamenává, „Docker Hub, oficiální úložiště a komerční podpora pomáhají podnikům odpovědět na tuto výzvu zlepšením způsobu balení, nasazení a správy aplikací.“

Konečně je snadné nasadit kontejnery Docker v cloudovém scénáři. Můžete jej snadno bezproblémově integrovat s typickými prostředími DevOps (Ansible, Puppet atd.) nebo jej použít jako samostatný. Hlavním důvodem, proč je tak populární, je zjednodušení, říká Ben Lloyd Pearson prostřednictvím opensource.com. Můžete provádět místní vývoj v rámci systému, který je identický s živým serverem; nasadit různá vývojová prostředí z vašeho hostitele, z nichž každé používá svůj vlastní software, OS a nastavení; snadno spouštět testy na různých serverech; a vytvořit identickou sadu konfigurací, aby spolupráci nikdy nebránily parametry místního hostitele.

Shrnutí a závěr

Stručně řečeno, podle Vaughana-Nicholse existují tři základní důvody úspěchu Dockera. Za prvé, „[m]ožete spustit více aplikací na stejném hardwaru než jiné technologie. Zadruhé „vývojářům usnadňuje rychlé vytváření kontejnerových aplikací připravených ke spuštění.“ A konečně „to výrazně usnadňuje správu a nasazování aplikací.“

Každý se o Docker zajímá a je snadné pochopit proč. Jak tedy začít? S aplikací na jedno kliknutí můžete být vzhůru za 30 sekund. V Atlantic.Net nabízíme SSD VPS Hosting, který využívá mezinárodní datová centra a účty za sekundu, takže vám nikdy nebudou účtovány přeplatky.


Linux
  1. Jak odstranit všechny kontejnery Docker

  2. Docker:Jsou odkazy Docker zastaralé?

  3. Proč používáme základní obraz OS s Dockerem, když kontejnery nemají hostovaný OS?

  1. Úvod do Docker Containers

  2. Proč Deis a co to je?

  3. Docker kontejnery se nemohou připojit k internetu ve Fedoře 32?

  1. Proč by měl každý zkusit používat Linux

  2. Co je Docker?

  3. Proč používat innodb_file_per_table?