Pull to refresh

Comments 32

Спасибо вам за замечательную статью. Буквально несколько дней назад я сокрушался, что в репозитории gentoo самая свежая версия openVZ работает с ядром 2.6.27.
Теперь же, благодаря вашей подсказке, я смогу на свеженьком 2.6.31 запускать «виртуальные машины» =)

Конечно не все что вы объясняете было для меня прозрачно, но думаю, что это из-за отсутствия опыта и скоро мне все станет понятно.
Нет. Контейнер отличается большей степенью изоляции. К примеру ps внутри контейнера выводит только процессы контейнера, есть отдельная копия сетевого стека со своим роутингом, фаерволом и шейперами.
Блин да разве виртуализация должна быть такой длинной, слишком много настроек. дайте гуй, или просто утилитку попроще. Когда серверов 5 еще пойдёт а когда больше надо пилить много.
А когда 50-60 серверов?) И на каждом по паре контейнеров? Один раз разобравшись в CLI можно сильно упростить дальнейшее администрирование.
Значит должен быть один гуй на все ноды. Вон к ней даже есть либа libvirt + руби connector, надо конечно все эвенты обработать и завернуть в интерфейс, вышла бы конфетка.
use libvirt luke. Вообще это технология слишком свежая чтобы ее использовать в продакшене.
Бери и пиши, или бери и покупай. У тебя полная свобода, но тебе никто ничего не должен.
Vanilla kernel это здорово. Вот только дилемма: стабильность системы растет, т. к. нет левых патчей и одновременно падает, т. к. lxc еще не отточен :) По крайней мере наблюдается тенденция к улучшению.
вовремя вы статью написали — я думал что lxc это еще недоделка )
у меня как раз сейчас в проекте потребность в виртуализации.
подскажите, а lxc будет работать в openvz контейнере?
Разве что только в их devel ветке 2.6.27. В 2.6.18 нет namespaces.
слишком много телодвижений :)
В OpenVZ не меньше, если нет адаптированого профиля.
да как-то нифига, гораздо меньше
Хорошо возьмите stage3 от gentoo или установленный centos и адаптируйте их к OpenVZ. Потом поставьте OpenVZ из исходников.
а нафига? если есть готовое. в чем смысл данного мероприятия?
А lxc похоже на что-то готовое?
интересно нормально ли оно себя ведет на x86_64?
надо будет на досуге попробовать…
Вот что меня поражает. Это того что факт наличия в ядре это аргумент, то что оно «хорошое»…
Может расскажете где тут написано, что оно хорошее?
Мне показалось что Вы это подразумеваете исходя из того, что обратили внимания читателя об этом в первых строчках статьи. Кстати vserver разве не в ядре?
А что же тогда делает последний абзац? :)
ну как же… если оно есть в ядре, значит оно получило священное благословение линуса торвальдса, а благослование линупсного бога для линупсоедов всегда означает «что-то хорошее» :)
Понятие хорошее растяжимо причем очень сильно. Если он в ядре то оно основное, а не хорошее.
Так top внутри контейнера показывает все процессоры и всю память, mount выводит точки смонтированные вне контейнера, а вызов установки времени изменяет его вне контейнера. Кроме этого нет квотирования используемого диского пространства и жесткого ограничения по использованию процессора. Работа над квотированием на данный момент ведется так что буду надеяться, что в скором времени для создания контейнеров не надо будет патчить ядро.

  • 1. Точки монтирования находятся в /etc/mtab, этот файл можно модифицировать на своё усмотрение.
  • 2. Квоты на размер диска для ноды можно создать при помощи loop определённого размера с fs, который монтируется при старте ноды.
  • 3. Жесткое ограничение процессора даже в openvz не реализовано полноценно, подобие лимитирования процессора есть только в 2.6.18-el5 ядрах с патчами овз.
  • 4. Cgroup можно использовать совместно с openvz.


Интересно было бы увидеть бенчмарки произодительности lxc на многоядерных процессорах.
Точки монтирования находятся в /etc/mtab, этот файл можно модифицировать на своё усмотрение.

Ага щаз! cat /proc/mounts сделайте.

Квоты на размер диска для ноды можно создать при помощи loop определённого размера с fs, который монтируется при старте ноды.

Можно, но потом увеличивать уменьшать будет сложновато.

Жесткое ограничение процессора даже в openvz не реализовано полноценно, подобие лимитирования процессора есть только в 2.6.18-el5 ядрах с патчами овз.

Ну в cgroup жесткое ограничение процессора реализуется через указание сколько квантов может быть использовано (зависимость от таймера).

Cgroup можно использовать совместно с openvz.

В 2.6.27 версии?

Интересно было бы увидеть бенчмарки произодительности lxc на многоядерных процессорах.

А что именно? Контекст?
Cамый быстрый способ попробовать lxc:

1) конфигурим ядро как указано в самом начале поста

2) запускаем lxc-checkconfig, он должен показать что всё ОК, желательно чтобы все пункты были enabled, особенно «File capabilities», иначе будет ругаться на «failed to remove CAP_SYS_BOOT capability»

3) sudo mkdir -p /var/lxc/cgroup && sudo mount -t cgroup cgroup /var/lxc/cgroup

4) sudo brctl addbr br0
при желании добавляем сюда реальный интерфейс, как это сделать описано выше в оригинальном посте (посту? :)

5) sudo lxc-debian create
если «command not found: debootstrap» — то ставим пакет debootstrap, например «emerge debootstrap»
на этом шаге сначала скачаются ~50Mb необходимых пакетов, а потом создастся ~200Mb структура каталогов дебиана в ./rootfs.debian

6) sudo lxc-start debian

7) загрузится очень быстро, логин root, без пароля
очепятка:
6) sudo lxc-start -n debian
Sign up to leave a comment.

Articles

Change theme settings