Не вся виртуализация одинаково полезна, поэтому мы тестируем известные на рынке и появляющиеся решения на совместимость с нашим железом, а затем рассказываем вам о результатах. В прошлой статье из серии о тестировании мы мучили систему виртуализации «Рустэк». Теперь проверили «Росплатформу» на трёх наших серверах. В статье — пошаговое развёртывание ВМ нашим инженером Эриком Игнатовым и всякие ухищрения по ломанию нормального процесса с описанием результатов тестирования.

_______________________

Привет! Вначале расскажу о самих решениях, конкретных целях и условиях проведения этих испытаний, а затем опишу этапы тестирования, которые я пошагово проходил по методичке вендора.   

Какие решения вендора мы взяли

Объектами тестирования у меня были следующие продукты «Росплатформы»: в качестве системы виртуализации — «ПК Р-Виртуализация», в качестве сетевого хранилища данных — «ПК Р-Хранилище», а в качестве веб-панели управления виртуализацией — «ПК Р-Управление». Немного о том, что это такое. 

ПК Р-Виртуализация — это решение виртуализации, которое устанавливается на сервер, не имеющий операционной системы. Оно сотоит из контейнерной виртуализации и гипервизора для создания виртуальных машин на основе модифицированного «Росплатформой» 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 секунд. При первой попытке создания возникла следующая ошибка: система не смогла создать виртуальную машину.

Ошибка № 1
Ошибка № 1

(к сожалению, с тестов сохранились скриншоты только такого качества)При повторной попытке ошибок не возникло. При попытке изменить параметры ВМ при работающей виртуальной машине возникает такая ошибка: «Чтобы применить данные настройки к виртуальной машине, подтвердите рекомендуемые действия, установив подсвеченный флажок ниже».  

Ошибка № 2 (к сожалению, с тестов сохранились скриншоты только такого качества)
Ошибка № 2 (к сожалению, с тестов сохранились скриншоты только такого качества)

При активации чекбокса с перезапуском ВМ происходит перезапуск ВМ — на мой взгляд это плохо, потому что перезагрузка может вызвать паузу в работе критичного для инфраструктуры сервиса или базы данных, а для некоторых компаний это недопустимо. Удаляются виртуальные машины корректно.

Управление ресурсами ВМ. При попытке изменить параметры ВМ при работающей ВМ снова возникает ошибка № 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). 

Если появились вопросы, или вы заметили, что я что-то упустил, или считаете, что надо добавить более глубокое рассмотрение какой-то особенности — пишите в комментариях. А если вам надо сложное развёртывание виртуализации в гетерогенном окружении и зоопарке железа — всегда буду рад поучаствовать в таком проекте.

Комментарии (4)


  1. grumbler70
    23.07.2024 15:04

    Один простой вопрос можно? Trinity это до сих пор материнки SuperMicro или что-то ещё?

    PS Никаких вопросов к SuperMicro у меня нет, отличное решение для своей ниши.


  1. mrospax
    23.07.2024 15:04

    Спасибо авторам статьи! но Есть некоторые упущения:

    1.     В системных требованиях Росплатформы рекомендуется делать не менее двух физических сетей. Не менее двух отдельных портов для сети интерконекта не менее 2x10Гбит и не менее двух отдельных портов для сетей виртуализации, доступа, управления, не менее 2x1Гбит. Так как сеть интерконекта используется для синхронной репликации блоков, где она должна быть с MTU9000 и 802.3ad c xmit-hash-policy=layer3+4, а также L2 со статической IP адресацией без указания шлюза и совмещать ее с остальными сетями не очень хорошая идея. Возможно, у вас в конфигурации были 2x1Гбит, но вы не показали это в описании конфигурации, а если нет, то все задержки по времени работы не совсем корректны.

    2.     Ошибка при создании ВМ из шаблона может говорить, о некорректной конфигурации ВМ, далее в описании ошибки обычно показываются подробности. На скрине не показано описание ошибки, которое должно было быть чуть ниже. Как вариант в шаблоне ВМ могла остаться устаревшая ссылка на ISO образ, из-за которого могла быть ошибка. При повторном создании с шаблона ВМ была перезагружена, и система автоматический сняла галку с виртуального привода CDROM в котором была устаревшая ссылка на образ, поэтому ошибка пропала.

    3.     Перезагрузка ВМ предлагается только через веб панель при определенных изменениях конфигурации, но если необходим hot plug по добавлению памяти на горячую, то эту функцию необходимо предварительно разово включить после чего горячее добавление становится доступным и ВМ не требуется перезагружать чтобы добавить память.

    4.     В инструкции про развёртыванию кластера Росплатформы есть шаг по переносу управляющих контейнеров va-mn и vstorage-ui https://www.youtube.com/watch?v=jYRByNsKcW8 - это выполняется при настройке кластера, потому что при установке ОС или другими словами гипервизора управляющие контейнеры располагаются локально, а вот после выполнения шага по переносу в кластерное хранилище они становятся такими же отказоустойчивыми как и все виртуальные среды создаваемые в кластере после настройки общего датастора. Вы видимо пропустили этот шаг. Плюс у каждой виртуальной среды в конфигурации есть параметры HA, который при выполнении шага по переносу и последующего включения HA включается автоматический, но если не выполнить перенос управляющих контейнеров и оставить их в локальном расположении, то получится как у вас вышло. Чтобы это исправить вам необходимо выполнить шаг переноса через веб или через команду prlctl move далее убедится, что в конфиге ВМ параметр HA включён или выполнить команду shaman stat.


  1. shvedalexey
    23.07.2024 15:04

    Ну почему на процессор с шестиканальным контроллером памяти используется 4 модуля?


  1. RTPanda
    23.07.2024 15:04

    Немного занудства - KVM\QEMU работает на серверах Supermicro. И это отлично . Можно бы добавить стоимость решения Hard\Soft. Ну и например копии сертификатов совместимости, если такие существуют.