Как стать автором
Обновить

Комментарии 21

В Proxmox 4 в комплекте есть поддержка LXC. Нет ли у вас опыта с ней? Как приличный GUI для управления контейнерами, хранением, резервным копированием это явно удобный вариант, но там все же Debian 8 в основе лежит.
Пока все очень грустно с LXC, смотрите тему
С момента написания той статьи прошло пол года, на текущий момент ничего не изменилось? =(
Ну я каждую неделю в песочнице не тыкаю, но два месяца назад все еще было печально, в багтреккере висит просто уйма критичных багов, для продакшина LXC пока не готов. Поставить потыкать можно, но он сильно отстает даже от OpenVZ прошлого поколения на ядрах 2.6.
Читал, иначе бы не спрашивал.

В том и дело, что в PVE вроде как все грустно (но о грусти рассказали некоторое время назад), в то время как LCX с LCD вот в статье хвалят.

Получается, LXC вполне работает, и только «злой и страшный» Proxmox в составе себя мешает ему работать как надо, или все же виной тому в первую очередь LXC?

Пока остается только верить слухам (потому что переводить рабочие машины на LXC, «чтобы посмотреть» — не самое быстрое и надежное решение для оценки). Очень рассчитывал получить комментарий от Selectel — все же компания уважаемая, и материалы пишет толковые.
Нет ничего грустного. Грустно только в проксмоксе. Там — да, баги и боль.
Использую в продакшене порядка полутора лет с btrfs. Ничего ещё не падало и не ломалось.
Всё работает из коробки.
Честно, не вижу смысла в lxd. Есть же lxc и его команды.
Всё бы ничего. Но как в этом хозяйстве предоставить полноценные права root для контейнера? Я так понял, что это до сих пор остаётся для собственных нужд и никак не подходит для шареда.
Так в контейнере имеется свой собственный локальный root, каких именно прав не хватает?
Вы уверены, что у него полноценные права?
Раскройте мысль каких именно прав не хватает, права полноценные но в рамках контейнера, естественно вырубить гипервизор или отключить глобально оборудование из контейнера не выйдет.
Буквально сегодня попробовал.
lxc exec ct-name bash
passwd root
exit
ssh root@10.0.4.100
Пароль неверный!

В LXD специально запускают контейнеры и не предоставляют полноценный рут, чтобы программы в контейнере не могли хаком через /proc получить root доступ к хост машине.
Можно запустить контейнер в привелигированном режиме и тогда будет такой же рут как и на хосте. Делается это командой:


lxc config set container_name security.privileged true

Только так не рекомендуют делать.

В том-то и дело, что это дыра.
Давно хотел узнать. А зачем может быть нужно такое повышение прав в контейнере? Больше 2 лет держу все сервисы на продакшене в lxc-кантейнерах и никогда не было такой надобности.
Уважаемый Селектел! Вопрос не по теме.

Вы закрыли услугу «Облачный сервер». На данный момент мы уже 10 дней пытаемся забрать образ диска от облачного сервера, т.к. самостоятельно создать сервер, подмонтировать к нему диск и снять образ не можем — услуга закрыта, новый сервер мы самостоятельно создать не можем.

Поспособствуйте решению проблемы, пожалуйста. Тикет #386040
Проблема решена, благодарю.
А как у lxd с репозиторием образов дела обстоят? Насколько сложно свой поднять?

Вот тут (перевод) сказано что самый простой способ — расшарить public-образы (соответствующий флаг образа) на одном из lxd-серверов:


lxc config set core.https_address "[::]:8443"

И затем на другом хосте добавить его как публичный источник образов:


lxc remote add <some name> <IP or DNS> --public

Однако аутентификации в этом случае не предусмотрено. Также можно поднять особым образом настроенный веб-сервер (заголовки и т.п.) с сертификатами. Ещё есть вариант с некими simplestrams, но для них сходу документации не нашёл. Буду рад если кто-нибудь дополнит.

Короче, как создать свой образ системы с нуля? Ибо в их перечне нет, например, Archlinux.

Коротко: создаёте файловую систему, добавляете метаинформацию, пакуете в тарбол и импортируете в LXD


На https://images.linuxcontainers.org/ пишут следующее:
"All images available on this server are generated using community supported, upstream LXC image templates available here." И далее по тексту идут ссылки на CI-скрипты сборки образов.


Так что можно посмотреть имена шаблонов lxc-контейнеров и использовать их для создания образов LXD с помощью представленных ci-скриптов.


Отдельная документация про формат образов:
https://github.com/lxc/lxd/blob/master/doc/image-handling.md#image-format


Про процедуру создания и импорта образа описано в "LXD 2.0: Image management" (перевод)

Ещё вопрос. А как там организован сам образ системы? Почему нельзя через lxd запустить какое-то приложение, которое можно запустить в докере?
Зарегистрируйтесь на Хабре, чтобы оставить комментарий