Как установить много Linux в одном дистрибутиве с помощью LXC

LXC (Linux Containers) — легкая и простая в использовании система виртуализации, позволяющая одновременно использовать несколько изолированных друг от друга операционных систем на одном компьютере.

Отличается LXC от других систем виртуализации (VirtualBox, KVM, Vmware) тем, что гостевые операционные системы работают на том же ядре, что и основная система (host), виртуальная машина при этом не используется, что позволяет существенно экономить ресурсы и получить полностью изолированные экземпляры операционных систем.

Как установить LXC

Откройте терминал и впишите следующие команды:

sudo apt-get install lxc lxctl lxc-templates
sudo lxc-checkconfig

Первая команда установит LXC, программы управления контейнерами и готовые шаблоны, которые облегчают установку гостевой операционной системы. Вторая команда проверит конфигурацию вашей основной системы на соответствие требованиям LXC.

Создание контейнера с операционной системой в LXC

Проще всего воспользоваться готовыми шаблонами lxc-templates, которые содержат все необходимые сведения для установки Ubuntu, Debian, Fedora, openSUSE, Gentoo и других дистрибутивов. Полный список поддерживаемых систем можно посмотреть следующей командой в терминале:

ls /usr/share/lxc/templates/

Создается контейнер всего одной командой. Например, установка Ubuntu в LXC выполняется так:

lxc-create -n ubuntu01 -t ubuntu

Где опция -n отвечает за имя контейнера, а -t — за используемый шаблон. Далее LXC скачает и установит нужные ISO и пакеты. Вмешательство пользователя не требуется. В заключении пользователю будет сообщен пароль для входа в установленную систему (в данном случае: ubuntu/ubuntu).

Запуск LXC-контейнеров

Когда контейнер с системой готов, можно перейти к его запуску. Для этого введите следующие команды:

lxc-start -n ubuntu01 -d
lxc-console -n ubuntu01

Легко догадаться, что lxc-star запускает контейнер, а lxc-console открывает консоль управления к нему. Останавливаются контейнеры командой lxc-stop:

lxc-stop -n ubuntu01

Установить можно любое количество операционных систем. Сколько из них сможет работать одновременно зависит только от количества свободных ресурсов компьютера.

Преимущества использования LXC

Помимо основного предназначения — создания изолированных сред — LXC позволяет использовать все преимущества виртуализации. А именно:

Клонирование операционных систем

lxc-stop -n ubuntu01
lxc-clone ubuntu01 ubuntu02

Создание снэпшотов (снимков)

Снэпшот позволяет зафиксировать текущее состояние операционной системы в контейнере и легко к нему вернуться, если что-то пойдет не так:

lxc-stop -n ubuntu01
lxc-snapshot -n ubuntu01

Управление контейнерами дистанционно, через web-интерфейс

Для этого потребуется установить lxc-webpanel:

wget http://lxc-webpanel.github.io/tools/install.sh -O - | bash

После этого становится доступным управление прямо из браузера:
Управление контейнерами LXC

Ваша оценка: Нет Средняя оценка: 5 (3 votes)
11
pomodor

Может оказаться очень неплохой штукой. Например, можно поставить глючную Убуку, но все важные сервисы держать в контейнере под Debian. Или в Debian можно запилить контейнер с Kali на тот случай, когда требуется пошалить.

Да и вообще, изоляция — это прекрасно. По идее, любую сетевую службу нужно изолировать. Даже если каккер своим эксплоитом замогилит, например, Apache или Postfix, поиметь основную систему он все равно не сможет.

Ваша оценка: Нет Средняя оценка: 4 (4 votes)
6

Тут интересны несколько моментов:
1. Замогилили модули ядра базовой системы, и что будет с контейнерами?????
2. Как с реальной, не сферовакуумной:(, производительностью при таком подходе, ведь может быть и ситуация, что даже многими не любимая Бунта и «святой и быстрый":)... Дебиан, будут тупо тормозить и с полным отсутствием профита в реальных задачах...????:(
P.S. В Европе сейчас пилять системы с экзоядрами, полной изоляцией от слоя приложений, думаю что — это на данный момент более реальный вариант, к примеру — arrakis-release-2014-05-14!?

Ваша оценка: Нет
11
pomodor

Атаки на ядро будут иметь последствия. Но дырки в сервисах находят значительно чаще, чем в ядре.

Как с реальной производительностью

Мне тоже это интересно. Если буду использовать LXC, проведу замеры. Но интуиция подсказывает, что с производительностью все в порядке. Во-первых, LXC работает поверх cgroups, а к этой технологии претензий по производительности нет. Во-вторых, неслучайно же контейнеры LXC называются легковесными.

Ваша оценка: Нет
Отправить комментарий
КАПЧА
Вы человек? Подсказка: зарегистрируйтесь, чтобы этот вопрос больше никогда не возникал. Кстати, анонимные ссылки запрещены.
CAPTCHA на основе изображений
Enter the characters shown in the image.
Linux I класса
Linux II класса
Linux III класса
Счетчики
  • Самый популярный сайт о Linux и Windows 10
О Либератуме

Liberatum — это новости мира дистрибутивов Linux, обзоры, сборки, блоги, а также лучший сайт об Ubuntu*.