Заказчики: Абсолют Страхование (Евро-Полис ИСК) Продукт: Proxmox Virtual Environment (Proxmox VE) На базе: KVM (Kernel-based Virtual Machine) Второй продукт: Red Hat Inktank Ceph Enterprise Третий продукт: Red Hat Ceph Storage Дата проекта: 2015/03 — 2016/09
|
Технология: Виртуализация
Технология: Центры обработки данных - технологии для ЦОД
|
Содержание |
На конец 2014 года компания «Абсолют Страхование» имела около 12 физических серверов, на 4 из которых была установлена система виртуализации Oracle VM, позволившая разместить порядка 10-15 виртуальных серверов[1].
Oracle VM — система виртуализации от Oracle, построенная на базе Xen. В качестве операционной системы домена 0 могут использоваться Oracle Enterprise Linux или Red Hat Enterprise Linux. В гостевых системах могут работать те же системы, что и в обычном Xen. В состав Oracle VM входят: Oracle VM Manager и Oracle VM Server.
Xen — кроссплатформенный гипервизор, распространяемый на условиях лицензии GPL. Основные особенности: поддержка режима паравиртуализации (помимо аппаратной виртуализации), минимальность кода самого гипервизора за счёт выноса максимального количества компонентов за пределы гипервизора.
Паравиртуализация — техника виртуализации, при которой гостевые операционные системы подготавливаются для исполнения в виртуализированной среде, для чего их ядро незначительно модифицируется. Операционная система взаимодействует с программой гипервизора, который предоставляет ей гостевой API, вместо использования напрямую таких ресурсов, как таблица страниц памяти. Код, касающийся виртуализации, локализуется непосредственно в операционную систему. Паравиртуализация требует, чтобы гостевая операционная система была изменена для гипервизора, и это является недостатком этого метода, так как подобное изменение возможно лишь в случае, если гостевые ОС имеют открытые исходные коды, которые можно модифицировать согласно лицензии. В то же время паравиртуализация предлагает производительность почти как у реальной невиртуализированной системы, а также возможность одновременной поддержки различных операционных систем, как и при полной виртуализации.
Отказ от Oracle VM 2
Минусы Oracle VM:
- Обновление Oracle VM с версии 2 до версии 3 требовало переустановки всех серверов, так как в последней была значительно изменена архитектура системы;
- Политика компании Oracle «оставляла желать лучшего», система могла стать платной или перестать поддерживаться, что уже происходило с некоторыми продуктами компании;
- Редкие обновления системы;
- Избыточное потребление ресурсов гипервизором Xen, невозможность увеличения ресурсов виртуализированной системы «налету»;
- Наличие клиент-серверной архитектуры: так, при выходе из строя сервера Oracle VM Manager всю систему необходимо устанавливать практически с нуля.
Возможные варианты решений:
- Переход на Oracle VM 3 (не подходящий для нашей компании вариант, учитывая вышеописанные минусы);
- Переход в «облака»;
- Переход на более легковесное и менее ресурсоемкое решение, без клиент-серверной архитектуры.
Причины отказа от перехода в «облака»
1. Высокие ежемесячные затраты на размещение серверов в «облаках».
Оценка стоимости перехода в «облака» проводилась в конце 2014 года. В «облака» планировалось перенести основные сервера компании:
Изучив предложения известных компаний, предоставляющих услуги по размещению серверов в «облаках», мы выяснили, что средняя ежемесячная плата за размещение 3 серверов составляет порядка 120-160 тыс. рублей. Подобные затраты мы посчитали нецелесообразными. Станислав Обухов, Т1 Иннотех: Автоматизация меняет функцию закупок
Также для комфортной работы наших сотрудников (как головного офиса, так и филиалов) с размещенными в «облаках» серверами компания была бы вынуждена значительно увеличить пропускную способность канала Интернет, что является дорогим «удовольствием» для компании, расположенной в бизнес-центре с провайдером-монополистом.
2. Запрет на размещение серверов не на территории компании.
Таким образом, вариант перехода в «облака» оказался в нашем случае невозможным. Возникла необходимость поиска иного пути решения проблемы. Проведя анализ имеющихся систем виртуализации, мы пришли к выводу, что наиболее подходящим решением будет использование Proxmox Virtual Environment.
Переход на Proxmox VE 4.х + Ceph
Было решено перейти на связку Proxmox VE 4.х + Ceph, что позволило бы создать масштабируемое и отказоустойчивое собственное «облако».
Ceph — свободная программная объектная сеть хранения (англ. object storage), обеспечивающая как файловый, так и блочный интерфейсы доступа. Может использоваться на системах, состоящих как из нескольких Linux-машин, так и из тысяч узлов, известно об эксплуатации систем на Ceph размером в сотни петабайт (в Yahoo!); встроенные механизмы продублированной репликации данных обеспечивают высокую живучесть системы, при добавлении или удалении новых узлов массив данных автоматически перебалансируется с учётом изменений.
В отличие от таких распределённых файловых систем, как GFS, OCFS2 и GPFS, в Ceph обработка данных и метаданных разделена на различные группы узлов в кластере, примерно как это сделано в Lustre, с тем различием, что обработка производится на уровне пользователя, не требуя никакой особой поддержки от ядра операционных систем узлов. Ceph может работать поверх блочных устройств, внутри одного файла или используя существующую файловую систему узла (например, XFS).
В Proxmox VE 4.0 OpenVZ был заменен на LXC. При конвертации образов машин из OpenVZ в LXC наблюдали некоторые проблемы, например:
- Контейнер LXC работает в 2 - 3 раза медленнее OpenVZ;
- Контейнеры с Debian 6 и CentOS 5 не поддерживаются;
- В CentOS 6 не работала сеть из-за переименования сетевых интерфейсов с venet0 на eth0;
- Нельзя зайти в контейнер redhat based по ssh из за отсутствия tty;
В версии 4.3 все исправили.
На конец 2016 года идет создание тестового стенда для внедрения собственного «облака».
Примечания
- ↑ Из презентации "Роль облачных технологий в стратегии информатизации страхового бизнеса: опыт "Абсолют Страхование", CNews FORUM 2016