Выделили мне довольно большой сервер, на нем необходимо развернуть высоконагруженный сайт.
А по задачам - back и db виртуалки должны быть полностью изолированы от мира.
Виртуалки должны быть быть гибкими (в смысле ресурсов).
Хотелось бы наверно использовать контейрную виртуализацию, в web ui.
Ранее работал только с kvm, openvz. Позже встретился с proxmox (очень понравился). С docker только игрался на desktop машине.
Собственно в чем вопрос - что выбрать? Proxmox был бы отличным вариантом, но на debian 8 и proxmox 4.* - вместо openvz lxc, на который многие ругаются.
Есть вариант ставить debian 7 и на него proxmox, но там довольно старое ядро (2.6), зато стабильный openvz.
Возможно лучше будет использовать kvm? Но у контейнеров более гибкий функционал.
Или вообще попробовать docker? Но с ним я к сожалению почти не имел дела, и многофункциональных web ui не видел.
Прежде чем рассуждать, вы бы разобрались, на что именно ругаются про LXC. =)
Вы уверены, что вам необходима именно контейнеризация, а не виртуальные машины?
landergate: я видел на счет чего ругаются о LXC.
Думал на счет kvm, но контейнеры мне показались более гибкими. Да и как читал проблем с memory leak как бы нет уже.
landergate: столкнулся я только с 1 проблемой - неудобной консолью управления(хотя наверно привычка). Слышал о том, что lxc имеет проблемы с ограничиванием по CPU, о том что openvz все-равно быстрее работает чем lxc.
landergate: ок, инсталю debian 8 и впихну туда proxmox с lxc и kvm. Буду пробовать.
А по задачам - back и db виртуалки должны быть полностью изолированы от мира(vpn позже прикручу).
Виртуалки должны быть быть гибкими (в смысле ресурсов).
Пока дали только 1 public ip, думаю нужно ли мне еще или проксировать через nginx (в будущем надо будет прикрутить haproxy).
landergate: нагрузка на web скорее всего будет расти со временем, надо будет или с минимальным downtime или в livetime добавлять ресурсов (или забирать у кого-то).
Использую Proxmox 4 в продакшн, очень понравились LXC вместо openvz. Для некоторых задач использую полноценные VM на базе KVM.
LXC быстро и легко развертывается, полноценный CLI
Sanes: Puxta4ok:
KVM использую для полной изоляции web серверов. Т.е есть VM с 2cpu,4096ram + nginx, ставлю полноценную ОС (deb8).
Делается типичная настройка безопасности как на обычно физической машине. На выходе получаю qcow или raw файл как шаблон.
Дальше создается нужное число пустых машин у которых подменяем файл диска и получаем полностью настроенную машину которая сидит на своем VLAN и не знает ничего о соседях. В случае ее взлома до гипервизора добраться крайне проблематично.
С LXC все просто и сложно одновременно. По факту это просто шаблон с уже настроенным root доступом и интегрированным ключом от гипервизора.
Для входа в контейнер надо в консоли вызвать pct enter 'vm_id'. А дальше делайте что хотите, можете разрешить SSH от рута, добавлять/удалять пользователей. Изначально все от root
Sanes: Он отлично подходит для закрытых архитектур. Для сервисов аренды LXC плохо подходит.
Но если нужно поднять сложный бэкенд с учетом дальнейшего расширения, он подходит идеально. Виртуализировать redis-cluster займет несколько минут
Fixid: В итоге получается localhost. Ни о какой многопользовательской модели говорить не приходится. Сильно кастрированные права, и если выпускать наружу, то одним глазком(портом).
viiy: ну есть минимум проблемы с памятью , медленная работа если фс если образ в файле, зависания контейнера во время суспенда, вообще большая часть багов слава богу поправили в недавнем релизе lxc 2.0 если совсем интересно то прочитайте багтрекер ихний.