Не вся виртуализация одинаково полезна, поэтому мы тестируем известные на рынке и появляющиеся решения на совместимость с нашим железом, а затем рассказываем вам о результатах. В прошлой статье из серии о тестировании мы мучили систему виртуализации «Рустэк». Теперь проверили «Росплатформу» на трёх наших серверах. В статье — пошаговое развёртывание ВМ нашим инженером Эриком Игнатовым и всякие ухищрения по ломанию нормального процесса с описанием результатов тестирования.
_______________________
Привет! Вначале расскажу о самих решениях, конкретных целях и условиях проведения этих испытаний, а затем опишу этапы тестирования, которые я пошагово проходил по методичке вендора.
Какие решения вендора мы взяли
Объектами тестирования у меня были следующие продукты «Росплатформы»: в качестве системы виртуализации — «ПК Р-Виртуализация», в качестве сетевого хранилища данных — «ПК Р-Хранилище», а в качестве веб-панели управления виртуализацией — «ПК Р-Управление». Немного о том, что это такое.
ПК Р-Виртуализация — это решение виртуализации, которое устанавливается на сервер, не имеющий операционной системы. Оно сотоит из контейнерной виртуализации и гипервизора для создания виртуальных машин на основе модифицированного «Росплатформой» QEMU/KVM. Работает поверх дистрибутива Р-Линукс на основе модифицированного Росплатформой CentOS.
ПК Р-Хранилище — это программно-определяемое сетевое хранилище данных с многоуровневой системой защиты, функционирующее на недорогом и стандартном сетевом вычислительном оборудовании и оборудовании для хранения данных. ПК Р-Хранилище оптимизировано для хранения больших объемов данных, а также обеспечивает репликацию, высокую доступность и самовосстановление данных. ПК Р-Хранение дает возможность безопасного хранения и запуска виртуальных машин и контейнеров, их живую миграцию между физическими хостами, а также отказоустойчивость установок ПК Р-Виртуализация.
ПК Р-Управление — это веб-панель управления виртуализацией. Гибкий и лёгкий в использовании инструмент, который упрощает развёртывание и управление средой виртуализации, предоставляет контроль за виртуальными машинами на базах Linux и Windows и контейнерами, а также мониторинг ресурсов из единого центра.
С какой целью проводилось испытание
Мне предстояло проверить, выполняются ли следующие требования:
имеется ли совместимость с архитектурной платформой x86/x64;
возможно ли создание виртуальной инфраструктуры с заданными параметрами;
возможно ли создание телекоммуникационных, вычислительных ресурсов и ресурсов хранения данных;
обеспечивается ли сохранность и целостность данных;
обеспечивается ли отказоустойчивость для виртуальной инфраструктуры;
возможно ли масштабирование вычислительных мощностей по производительности и систем хранения данных по ёмкости;
возможно ли развертывание в виртуальных машинах ОС Microsoft Windows, а также различных дистрибутивов Linux (Red Hat Linux, CentOS, Ubuntu, Debian, openSUSE, Fedora).
На чём тестировал
Испытания проводились на трёх физических вычислительных системах с архитектурой x86-x64, оснащённых оборудованием для хранения данных и объединённых в общую вычислительную сеть.
Характеристики серверов:
Сервер Тринити ER215HR-M6 (2CPU, 1U, 82.5", 24DIMM, 4)
Платформа RP6108DSP-PB2 5-1200HS — платформа Тринити ER215HR-M6, 1U, 2LGA3647, 24DDR4 reg, 82.5", 41G, M.2, 21200Вт;
Два процессора Intel Xeon Silver 4210R, 10 cores 2.4GHz (13,75MB L3, DDR4-2400/1TB, HT, 100W, FCLGA3647);
Две системы охлаждения SNK-P0067PS, 1U Passive, Socket P (LGA 3647), for X11 Platform, Narrow;
Четыре модуля оперативной памяти 32GB Samsung DDR4 RDIMM (PC4-25600) 3200MHz ECC Reg 1.2V (M393A4K40EB3-CWE);
Сетевая карта Intel X520-DA2 E10G42BTDA Ethernet Server Adapter, 2x10Gb SFP+;
Твердотельный диск 240GB Micron 5300 Boot SSD, M.2, SATA 6 Gb/s, 50K/12K iops r/w [MTFDDAV240TDU-1AW1ZABYY];
Два твердотельных диска Samsung Enterprise SSD SATA2.5" 960GB PM893 TLC MZ7L3960HCJR-00A07 SAMSUNG.
Сервер Тринити М2335149
Серверная платформа Тринити ER220HR0-M6, 2U, 2LGA3647, 16DDR4 reg, 43.5" (2NVMe), 22.5", 41G, M.2, 2800W;
Два процессора Intel Xeon Silver 4210R, 10 cores 2.4GHz (13,75MB L3, DDR4-2400/1TB, HT, 100W, FCLGA3647);
Две системы охлаждения AS2UN-R83 LGA 3647, TDP 205W, 2U active Narrow;
Четыре модуля оперативной памяти 32GB Samsung DDR4 RDIMM (PC4-25600) 3200MHz ECC Reg 1.2V (M393A4K40EB3-CWE);
Сетевая карта Intel X520-DA2 E10G42BTDA Ethernet Server Adapter, 2x10Gb SFP+;
Твердотельный диск 240GB Micron 5300 Boot SSD, M.2, SATA 6 Gb/s, 50K/12K iops r/w [MTFDDAV240TDU-1AW1ZABYY];
Два твердотельных диска Samsung Enterprise SSD SATA2.5" 960GB PM893 TLC MZ7L3960HCJR-00A07 SAMSUNG.
Сервер Тринити ER220HDR-M6-1200W
Серверная платформа Тринити ER220DHR-M6, 2U, 2LGA3647, 24DDR4 reg, 123.5", 22.5", 21G, M.2, 2*1200W;
Два процессора Intel Xeon Silver 4210R, 10 cores 2.4GHz (13,75MB L3, DDR4-2400/1TB, HT, 100W, FCLGA3647);
Две системы охлаждения AS2UN-R83 LGA 3647, TDP 205W, 2U active Narrow;
Четыре модуля оперативной памяти 32GB Samsung DDR4 RDIMM (PC4-25600) 3200MHz ECC Reg 1.2V (M393A4K40EB3-CWE);
Сетевая карта Intel X520-DA2 E10G42BTDA Ethernet Server Adapter, 2x10Gb SFP+;
Твердотельный диск 240GB Micron 5300 Boot SSD, M.2, SATA 6 Gb/s, 50K/12K iops r/w [MTFDDAV240TDU-1AW1ZABYY];
Два твердотельных диска Samsung Enterprise SSD SATA2.5" 960GB PM893 TLC MZ7L3960HCJR-00A07 SAMSUNG;
Две Райзер-карты Райзер 2U PCIe x16x16x8, электрически х8х8х8;
Кабель HDmSAS-HDmSAS.
А теперь перейдём к самому тестированию.
Пошаговое описание тестирования
Регистрация новых серверов «Р-Виртуализация» в инфраструктуре производилась согласно предоставленной вендором инструкции по первоначальной установке и настройке. Ошибок или трудностей при этом не возникло.
Создание новой ВМ из ISO-образа и создание образа для библиотеки. Инсталляционные образы я загрузил в папку кластерного хранилища / mnt/vstorage/vols/ datastores/ds0/ISO. При создании и редактировании параметров виртуальных машин ошибок или трудностей не возникло. Гостевые агенты и драйверы устройств виртуальных машин установил согласно инструкции — ошибок или проблем не возникло. Для гостевых машин я использовал операционные системы MS Windows Server 2019 и RedOS 7.3.2.
Преобразование ВМ в шаблон. В нашем случае быстрее сделать несколько клонов виртуальной машины, мигрировать их на каждый узел и превратить в локальные шаблоны. Либо создавать ВМ из шаблонов на одном сервере и мигрировать их на другой узел ещё до запуска. Так как виртуальные машины все равно лежат на общем хранилище, миграция займет секунды, может быть настроен любой вариант. Я настроил общую сетевую папку для библиотеки шаблонов — на мой взгляд эта методика требует доработки, потому что возникает большая нагрузка на сетевую инфраструктуру. Логичнее реализовать возможность использования SDS для хранения шаблонов. Созданные виртуальные машины были мигрированы на каждый из хостов с последующим созданием локальных шаблонов путём клонирования в шаблон.
Проверка реализации функций серверной виртуализации с использованием Web интерфейса. Я создал одновременно две ВМ из шаблона. На создание двух машин одновременно из локального шаблона на нашей конфигурации серверов заняло 3 минуты 11 секунд. При первой попытке создания возникла следующая ошибка: система не смогла создать виртуальную машину.
(к сожалению, с тестов сохранились скриншоты только такого качества)При повторной попытке ошибок не возникло. При попытке изменить параметры ВМ при работающей виртуальной машине возникает такая ошибка: «Чтобы применить данные настройки к виртуальной машине, подтвердите рекомендуемые действия, установив подсвеченный флажок ниже».
При активации чекбокса с перезапуском ВМ происходит перезапуск ВМ — на мой взгляд это плохо, потому что перезагрузка может вызвать паузу в работе критичного для инфраструктуры сервиса или базы данных, а для некоторых компаний это недопустимо. Удаляются виртуальные машины корректно.
Управление ресурсами ВМ. При попытке изменить параметры ВМ при работающей ВМ снова возникает ошибка № 2. При активации чекбокса с перезапуском ВМ также происходит критичный перезапуск ВМ. После перезагрузки в системе видны добавленные или изменённые параметры оборудования.
Управление шаблонами и клонами. Я осуществил клонирование виртуальной машины в локальный шаблон и создал новую ВМ из шаблона — ошибок или проблем при этом не возникло.
Миграция виртуальных машин. Миграция занимает 40 секунд, при этом даунтайм — 20 секунд. Ошибок или проблем при миграции не возникло.
Управление резервными копиями. Создал резервную копию виртуальной машины — проблем или ошибок не возникло. Удалил ВМ. Восстановил ВМ сначала на ноду №3, затем на ноду №1. При восстановлении ошибок или проблем не возникло.
Проверка отказоустойчивости серверной виртуализации при условии, что виртуальные машины запущены на одном из серверов. Согласно инструкции выключил питание на хосте №3 — спустя 40 секунд кластер обнаружил «падение» хоста и начал миграцию ВМ. Через 2 минуты после отключения питания на хосте две виртуальные машины с него были полностью функциональны на двух оставшихся хостах. После восстановления работоспособности хоста №3 система выдала предупреждение о необходимости вмешательства администратора. Было произведено «перемещение» хоста в инфраструктуру через веб-консоль управления инфраструктурой. Управляющие контейнеры va-mn и vstorage-ui аварийно мигрируют только в том случае, когда на всех трёх нодах осуществляется локальное хранение созданных резервных копий. Оживают в течении трёх минут. Если сделать хранение резервных копий в общем датасторе, то миграция не происходит, а кластер теряет жизнеспособность.
Выводы по тестированию
имеется совместимость с архитектурной платформой x86/x64;
возможно создание виртуальной инфраструктуры с заданными параметрами;
возможно создание телекоммуникационных, вычислительных ресурсов и ресурсов хранения данных (особенно интересно для работающих с контейнеризацией);
обеспечивается сохранность и целостность данных с использованием внешних СРКиВД;
обеспечивается отказоустойчивость для виртуальной инфраструктуры;
есть возможность масштабирования производительности вычислительных мощностей;
есть возможность масштабирования ёмкости систем хранения данных;
возможно развёртывание в виртуальных машинах ОС Microsoft Windows, а также различных дистрибутивов Linux (Red Hat Linux, CentOS, Ubuntu, Debian, openSUSE, Fedora).
Если появились вопросы, или вы заметили, что я что-то упустил, или считаете, что надо добавить более глубокое рассмотрение какой-то особенности — пишите в комментариях. А если вам надо сложное развёртывание виртуализации в гетерогенном окружении и зоопарке железа — всегда буду рад поучаствовать в таком проекте.