контейнерная виртуализация

Виртуализация — это технология, с помощью которой на одном физическом устройстве (компьютере или сервере) можно создать несколько виртуальных компьютеров. Иначе говоря, на компьютере с одной операционной системой можно запустить несколько других операционных систем или приложений. ОС запускаются в виртуальной среде, что позволяет им работать на одном устройстве изолированно друг от друга. Операционную систему компьютера, на котором работает виртуальная среда, называют хост-системой, а операционную систему, которая запускается в этой виртуальной среде — гостевой системой. Хостовая и гостевая ОС могут иметь взаимоисключающие компоненты, но виртуальная среда позволяет им жить «дружно».

Чтобы создать на компьютере или сервере виртуальную среду, можно установить специальную программу — виртуальную машину. Подробнее об этом читайте в статье Что такое виртуальная машина. Также для этих целей можно использовать контейнеры. Рассмотрим, чем отличается принцип виртуализации у машин и контейнеров. контейнерная виртуализация — это метод, при котором ядро операционной системы поддерживает несколько изолированных экземпляров пространства пользователя вместо одного. Эти экземпляры (контейнеры или зоны) с точки зрения выполняемых в них процессов идентичны отдельному экземпляру операционной системы.

В каждом контейнере можно запускать одно приложение, изолированное от остальной системы. Контейнер функционирует как экземпляр исполняемого ПО, где двоичный код приложения соседствует со всеми необходимыми для его запуска компонентами — от конфигурационных файлов до среды исполнения.

От аппаратной виртуализации контейнерная виртуализация отличается тем, что разделение ресурсов обеспечивается не на аппаратном уровне, а на базе ядра операционной системы. Контейнеры более легковесны, менее требовательны и полностью зависимы от «материнской» ОС.