menu trigger
bg en
Help desk

Back
Linux Containers - Какво представлява?

Linux Containers - Какво представлява?

LXC (Linux Containers) е от типа OS level virtualization. Това е метод за стартиране на N наброй изолирани Linux "контейнери" под друга Linux машина използващи едно и също ядро.

 

Работата на LXC се базира на Linux cgroups функционалността, която е добавена в основния код на ядрото от версия 2.6.24.

 

Linux ядрото осигурява cgroups функционалността, която позволява лимитиране и приоритизация на ресурси (CPU, memory, block I/O, network) без нуждата от стартиране на каквито и да било виртуални машини. Namespace isolation функционалността позволява пълна изолация на ниво приложение от гледна точка на операционната система, включва дърво на процесите, мрежа, UID's и монтирани файлови системи.

 

Благодарение на cgroups и namespaces, LXC позволява създаването на изолирана среда за приложенията. Docker също може да бъде използван като допълнение като осигурява управление на образите и се грижи за по-лесно разгръщане на предварително конфигурирани приложения. Docker е широкоразпространен сред разработчици и тестери, които искат бързо да получат готова работеща машина с необходимия им софтуер.

 

Сигурност.

Първоначално LXC технологията не е толкова сигурна, колкото другите OS virtualization технологии като OpenVZ. Преди версия 3.8 на ядрото root потребителя в LXC контейнер можеше да стартира машинен като root потребител на host операционната система, нещо като chroot jails. С версия 1.0 на LXC вече е възможно да стартирате LXC контейнер като обикновен потребител. Това са така наречените unpriviliged containers. Те са допълнително лимитирани като функционалност, тъй като те не могат да достъпват директно хардуер закачен на физическата машина.

 

Алтернативи.

LXC е подобна на други OS Virtualization технологии като OpenVZ, Linux VServer, FreeBSD Jails, AIX Workload Partition, Solaris Containers. За разлика от OpenVZ, LXC работи без никакви допълнителни пачове и конфигурации на ядрото.

 

Версия 1 на LXC, която излезе 20/02/2014 е LTS (long term support) версия и ще бъде поддържана следващите 5 години.

 

Предимства на LXC пред стандартната виртуализация.

 

Бързина, производителността е 97+ процента в сравнение с тази на физическата машина. Т.е. по-малко от 3% забавяне.

  • Мениджмънт операциите като boot, start, stop, reboot стават за секунди.

 

Подвижност, LXC също може да бъде разглеждана като виртуализация.

  • Безпроблемнно преместване между виртуална и физическа дава гъвкавост на разработчиците и редуцира разходите.

 

Гъвкавост

  • Контейнер като системата (операционна система без ядро)
  • Контейнер като приложение (акцент върху приложението/ята)

 

Лекота

  • Just enough Operating System (JeOS), включва само това, което е нужно и редуцира големината на image/footprint.
  • Минимален overhead, позволяващ стартирането на пъти повече "виртуални машини" на една физическа.

 

Свобода

  • Софтуера е изцяло Open Source (Free).
  • Поддръжа се изцяло out-of-the-box от модерните Linux ядра.

 

Екосистема

  • Главоломно нарастваща популярност, Docker & LXC.
  • Голяма общост от ентусиасти и многобройни 3rd party приложения (1000+ предварително готови images в docker index и 100+ open source apps в github)

 

Cloud базирано

  • Различни Cloud management frameworks, позволяващи създаването и управлението на контейнери. Най-популярен е OpenStack.

Comments (0)

No comments found

Leave a comment
Security code