GlusterFS + OpenVZ / KVM + Proxmox работает ли в продакшене, если ли проблемы, выбираю СХД?
Вопрос кратко:
Тупит ли GlusterFS если на ней крутятся машины под KVM и OpenVZ?
Какую ФС выбрать под размещение GlusterFS ext3,ext4,xfs,zfs ?
Proxmox, хороший выбор или стоит посмотреть другие варианты ?
Полная история:
Появилась задача развернуть трёх нодовый кластер для виртуальных машин.
Выбираю файловую систему для этой задачи.
Выделенного сервера под хранилище нет.
Хранить данные нужно на этих же трёх нодах.
Идеи пока что две это NFS кластер и GlusterFS.
Есть ли у кого либо опыт подобных решений ?
На англоязычных ресурсах читал что OpenVZ тормозит на GlusterFS (большие потери производительности) так ли это?
И какую лучше выбрать файловую систему под этим всем ext,xfs,zfs ?
Если какие либо другие решения подходят лучше буду рад услышать.
Просто не изучал вопросов кластеризации ovirt , lxcenter.
UPD:
Я остановился на proxmox из за поддержки KVM + OpenVZ , кластера и удобоного механизма бекапов (который я могу отдать в руки других пользователей/администраторов).
У ovirt судя по отзывам хромает часть с резервным копированием, lxcenter базируется больше на xen + kvm.
UPD2:
Основная проблема это хранилище. Многие решения стоятся на отдельной СХД или паре СХД, у меня таких просто нету. Есть 3 физических сервера и не сервером больше. Загружены будут на 40-50%, поэтому отдать один сервер под СХД я не могу :(
UPD3:
Дополню еще информацией по дисковой подсистеме.
Описание х-к серверов я опощу, т.к. это не относится к вопросу.
3 сервера. 2 диска в каждом.
Я обязан сделать из 2 дисков , что либо вида RAID1. Не важно какими средставами.
Иначе при вылете одного диска, мы теряем всю ноду.
Получается далее идет GlusterFS (либо что то другое). С конфигурацией копирования всего на все диски.
Почему так: Если VM1 сидит на node1, а её данные находятся на node2, то мы получаем чтение\запись через сеть.
Что при и так не мощной СХД явно поставит задачу в тупик.
Если будет реплика на все ноды, то я получаю локальную работу VM на СХД + копию этой VM на друх нодах.
Да мы теряем свободное пространство на HDD, но это обычные диски и все понимают что потери будут.
500 GB на все три ноды достаточно.
Да и локальная запись позволит мне использовать всего два сетевых интерфейса (по умолчанию в серверах их 2).
1. Общая сеть 2. Сеть для синхронизации GlusterFS.
Т.е. 3. сеть для записи на соседню ноду или лучше объединение интфейсов для GluserFS. не потребуется.
ну просто если у вас большие данные гоняются на диск и с него то все будет тормозно на сети 1 гигабит, если у вас две ноды проксмокса и одна нода нфс.
Если гластерфс то там будет все быстро, но три ноды не понятно зачем тут , логично иметь две, на одной все работает на вторую все синкается , первая упала на второй все поднялось.
О данных: объем не велик. 1 гигабитной сети хватит для всех. Три ноды потому что высокая загрузка других ресурсов CPU и RAM. Получается что каждая нода нагружена на 40-50%. Т.е. при падении одной я получу 75% загрузки двух оставшихся, без учета пиков. Я бы рад иметь две ноды:) Одна нода под NFS ну или же ZFS over iSCSI я думал об этом, но она единичная точка оказа. И диски в серверах простаивать будут. В сервере только 2 посадочных места под HDD. Каков сценарий в вашем варианте в случае падения NFS ноды?
Пума Тайланд: раздельные ноды тоже был такой вариант. Даже с бекапом на две остальные. Но все же не хочется если что вставать в 3 ночи и что то делать.. Мне под бекап дали отдельный стор , но он далеко. Ещё был вариант раздельные ноды с NFS хранилищем и бекап на эти же ноды. Одним словом бекап никто не отменял.
Vladimir Samoylov: ну с гластерфм тоже надо же вставать в три ночи и чинить если что пошло не так
вообще умирание ноды не такое уж частое явление при наличии мониторинга резко почти никогда не случается.
Пума Тайланд: да не такое частое. На ровном месте ничего не происходит. У вас есть опыт использования GlusterFS ? Меня волнует только производительность. Настройка и мониторинг проблем не вызывает.
И насколько я понимаю при использовании реплик все что может пойти не так - это сплит брейны из за одинаковых файлов , либо обращения клиента к ноде которая не доступна.
Vladimir Samoylov: в случае сплитбрейна вы получите лежащую систему, а вот разруливание сплитбрейнов в гластере просто чудо чудное.
С производительностью нет никаких проблем если вас вы говорите будет хватать одного гигабита на все.
Пума Тайланд: в случае сплит-брейнда, прав тот кто новее. Т.е. новый файл перетирает старый. На сколько я вычитал из документации. Я скорее думал о скорости чтения-записи. Если гластер например состоит из одной ноды, и мы положим на него OpenVZ контейнер, будет ли он терять в производительности до 15%-20% по сравнению с тем же самым контейнером но лежащим на ext4, zfs или нет ? (утверждение выше взято с западных форумов).
Пума Тайланд: Да верно. В этой ситуаци мне придется воспользоваться утилитами для разерешния этого конфликта. Это вообщем то проблемы всех подобных решений.
Если кратко, то я должен сказать какой файл новее. Если много мелких файлов, это большая проблема. Можно просто сказать какую реплику считать верной для какой директории. С версии 3.3 там многое изменилось. В моем случае нужно будет создать изначально не одну большую директорию и класть туда все VM а много директорий. Это позволит быстро и точно определять ситуации сплит брейнов. К сожалению в расплеределнных системах присутсвуют такие проблемы. Но другой вариант это отказ от кластеризации. И резервное копирование по расписанию на другие ноды. Но тогда потерь данных явно не избежать .Чуть позднее мои коллеги соберут тестовый стенд для этого дела. Я просто хотел определится использовать ли proxmox + glusterFS , либо что то другое..
Никаких плюсов это не дает (даже скорее наоборот т.к. zfs по тестам скорости уступает другим), но просто нравится zfs за счет удобства добавления дисков и томов и отказоустойчивости.
Непонятно, возможности zfs по дедупликации и архивации действуют на том глюстера или нет. В теории да, а на практике хз