Виртуализация на сетевых накопителях Synology: пакет Virtual Machine Manager

Технологии виртуализации уже давно получили распространение не только в датацентрах, но и в малом бизнесе и даже у домашних пользователей. Они позволяют эффективно решать многие задачи ИТ-инфраструктуры и существенно экономить ресурсы. На рынке сегодня представлено множество программных решений виртуализации, включая как крупных игроков с коммерческими продуктами, так и гипервизоры и системы виртуализации с открытым кодом. Так что пользователь может подобрать подходящий вариант по своим требованиям, возможностям и стоимости.

Компания Synology тоже решила поучаствовать в этой гонке и создала специальный пакет Virtual Machine Manager для решения данной задачи. Заметим, что в каталоге дополнительных пакетов есть и модуль легкой виртуализации Docker. Он способен работать на большем числе моделей (хотя и некоторые с поддержкой VMM в списке отсутствуют) и имеет возможность быстрого развертывания контейнеров из каталога готовых проектов. Для некоторых сценариев он может быть более удобным.

Формально пакет Virtual Machine Manager доступен для многих моделей уровня Plus и серии RS с платформой x86 начиная с 11-й линейки. Из актуальных устройств минимальным является DS218+, который оборудован двухъядерным Intel Celeron J3355 и имеет в базе 2 ГБ оперативной памяти. В любом случае, можно уточнить текущие совместимые модели можно на сайте производителя. Кроме того, некоторые ограничения встречаются и для отдельных функций. Например, при работе в кластере необходимо иметь на узле не менее 4 ГБ оперативной памяти для запуска виртуальных машин, иначе этот узел может работать только как хранилище образов дисков.

Если реально оценивать платформы, то конечно многое будет зависеть от того, что вы планируете запускать в виртуальных машинах. Для несложных сервисов с Linux может быть достаточно и одного ядра и 256 МБ оперативной памяти, но в общем случае, на наш взгляд, если хочется чувствовать себя относительно свободно — хорошо бы иметь в устройстве от четырех ядер и от 6 ГБ оперативной памяти. Заметим, что самая мощная на момент подготовки статьи модель сетевого накопителя от Synology оборудована двумя Intel Xeon Silver 4110 (8С/16T, 2,⅓,0 (Turbo Boost) ГГц) и поддерживает установку до 512 ГБ (в базе — 32 ГБ) оперативной памяти. Производитель рекомендует запускать на ней не более 32-х виртуальных машин. Так что даже она не конкурент специализированным серверам виртуализации, если вопрос в аппаратных характеристиках и большой, в том числе вычислительной, нагрузке, не говоря уже о таких сценариях, как VDI или использование GPU.

Учитывая, что данный сервис сложно назвать широко востребованным, компания решила часть функций и возможностей предлагать с дополнительно приобретаемой лицензией Virtual Machine Manager Pro. Лицензии покупаются на сервер (кластер) с привязкой к аккаунту Synology и на определенный срок (от $149,99 на кластер из трех узлов на один год). Подробный список отличий от базовой версии представлен на сайте производителя. На наш взгляд, этот вариант может быть востребован в крупных инсталляциях с повышенными требованиями к отказоустойчивости. Описание далее относится к базовой (бесплатной) версии, а некоторые из этих дополнительных функций будут описаны отдельно.

Установка программы не вызывает сложностей — открываете «Центр пакетов» и выбираете VMM для инсталляции. Напомним, что пакеты в DSM устанавливаются на существующий том, а штатной функции переноса пакетов на другой том в настоящий момент нет. Далее не забываем в панели управления выдать права на доступ к пакету для нужных пользователей.

Настройка системы

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

Подобных хранилищ на одном сервере может быть несколько, но только по одному на том. Сами папки, где хранятся образы, недоступны стандартными средствами сетевого доступа DSM и реализованы, вероятно, аналогичным thin iSCSI LUN образом.

Удобных средств работы с содержимом хранилищ в текущей версии VMM не предусмотрено. Только предоставляется информация о размещенных виртуальных машинах. Обратите внимание, что каждая машина может быть целиком записана только на одно хранилище. Так что сделать, скажем, большой виртуальный диск на HDD и быстрый на SSD в рамках одной машины не получится. Еще один не очень удобный момент — отсутствие информации о занимаемом именно образами дисков пространстве на томе.

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

Для создания виртуальных машин обычно требуются образы загрузочных установочных дисков. Они размещаются в рамках созданных ранее хранилищ системы виртуализации путем загрузки с компьютера или из папки сетевого накопителя. В отличие от актуальных дисков самих машин, загрузочные образы можно штатными средствами копировать на все доступные хранилища. Загружать можно не только ISO, но и образы винчестеров в популярных для систем виртуализации форматах. Последние далее можно использовать при создании новых виртуальных машин (но не подключать к существующим). В этом же разделе загружаются из интернета образ для работы VirtualDSM и образ с драйверами виртуальных устройств для гостевых операционных систем. Заметим, что нельзя загрузить обратно с сетевого накопителя эти образы штатными средствами.

Отдельно стоит рассказать о работе в режиме кластера. Данная функция позволяет объединить до семи сетевых накопителей в систему с общим управлением, а также консолидировать вычислительные ресурсы, хранилища и сетевые интерфейсы. Кроме того, для кластера работает общая система уведомлений (только по электронной почте), независимая от настроек самих сетевых накопителей. Производитель рекомендует создать для обмена данным между участниками кластера отдельную сеть на выделенных сетевых интерфейсах. В любом случае, обязательно иметь статические IP-адреса на контроллерах участников кластера.

Создание виртуальных машин

Официально поддерживается установка в гостевых машинах операционных систем семейства Windows (от 7 до Server 2016) и множества вариантов Linux (включая CentOS, Fedora, Red Hat и Ubuntu). Но конечно никто не мешает попробовать и другие, в частности не было замечаний к работе Debian. Учитывая, что решение основано на известной связке QEMU и KVM, особых проблем быть не должно. Единственное, что стоит учитывать — производитель реализовал вариант работы с сервисом через веб-интерфейс. Что-то подправить в файлах конфигурации через командную строку, скорее всего, не получится.

Мастер создания виртуальной машины состоит из нескольких шагов для выбора параметров: типа гостевой ОС, места размещения виртуальной машины, имени и описания, процессора/оперативной памяти/видеокарты, накопителей (до восьми на одну виртуальную машину) и их интерфейсов, сетевых интерфейсов (включая тип контроллера и MAC-адрес), образов ISO для загрузки/инсталляции (одного или двух).

Кроме того, есть опции автоматического включения при загрузке сетевого накопителя, выбора типа BIOS (обычный или UEFI), трансляции USB-устройств в виртуальную машину. При настройке ресурсов процессора можно выбрать режим совместимости для возможности миграции на хосты с другими физическими процессорами, а также зарезервировать потоки и/или установить приоритет, если есть требования к производительности или отзывчивости. На последнем шаге можно выбрать пользователей и группы, которым будет разрешено работать с данной виртуальной машиной.

В целом можно говорить о том, что здесь представлено большинство востребованных параметров. Но конечно по сравнению с традиционными решениями гибкости меньше. Теоретически можно менять нужные опции через прямое редактирование файлов конфигурации в консоли, но работоспособность такой схемы не гарантируется. Еще одно немного необычное ограничение, с которым можно столкнуться, — минимальный объем виртуального диска в 10 ГБ. Учитывая выделение пространства по требованию это не очень существенно, но все-таки странно, на наш взгляд.

Кроме создания «с нуля» предусмотрены операции импорта из файлов формата OVA и запуск с ранее загруженных образов жестких дисков. Во втором случае всю остальную конфигурацию (процессор, память, сеть) нужно будет задать самостоятельно.

Управление виртуальными машинами

Быстро оценить текущее состояние сервера виртуализации можно на странице «Обзор».

Здесь приводится информация о хостах (кластере) и нагрузке на них, виртуальных машинах и потреблении ими ресурсов (включая процессор, память, диск и сеть), а также доступных хранилищах и свободном месте на них.

Основная страница управления гостевыми системами так и называется — «Виртуальная машина». Из операций управления питанием здесь предусмотрены знакомые варианты: включение, выключение, принудительное выключение, перезагрузка, приостановка, восстановление. Для записи образа оперативной памяти в режиме приостановки используется предварительно выбранное хранилище.

Непосредственно взаимодействие с консолью или рабочим столом виртуальной машины возможно прямо в браузере. Кроме того, предусмотрены варианты создания «общих ссылок» на доступ к виртуальным машинам, что существенно упрощает реализацию удаленного доступа. Достаточно будет отправить пользователю эту ссылку и, имея браузер, он сможет работать в виртуальной машине. В настройках ссылок можно установить ограничения — пароль, срок действия, число сеансов. Заметим правда что в базовой версии VMM можно иметь только одну ссылку на весь кластер, что конечно совсем не интересно. Но можно настроить портал VMM и раздать права пользователям NAS на доступ к конкретным машинам.

В зависимости от текущего состояния виртуальной машины для нее доступны следующие операции:

  • редактирование конфигурации и параметров (например, можно «на лету» увеличить объем диска или добавить новый);
  • клонирование (только в выключенном состоянии, только на то же хранилище);
  • экспорт в формат OVA (только в выключенном состоянии, запись осуществляется в выбранную общую папку NAS);
  • миграция для базовой версии VMM предусмотрена только в виде изменения хранилища в рамках одного хоста.

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

Для начала вам нужно определить политики расписания. Минимальный интервал при этом составляет 5 минут. Дополнительно можно указать дни недели и время начала и конца повторения. Далее создается политика хранения (чистки). Как и для снимков папок в DSM, здесь можно прописать или просто максимальное число снимков или придумать гибкий план, скажем хранить десять ежечасных копий, пять ежедневных, одну недельную и одну месячную.

В целом данное решение представляется достаточно удобным и гибким, однако надо понимать, что сами копии (снимки) хранятся на тех же томах, что и оригиналы. Так что в случае возникновения проблем с томами или самим устройством они могут быть потеряны. Частично эта проблема решена в версии VMM Pro.

В VMM ведется собственный журнал, который, к сожалению, недоступен через «Центр журналов» сетевого накопителя. Максимум, что предусмотрено — экспорт в формате CSV или HTML. Дополнительно есть возможность установки фильтра по уровню уведомлений и текстовый поиск.

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

VirtualDSM

Интересной особенностью VMM является возможность запуска в виртуальной машине еще одной копии самой DSM. Это может быть востребовано на задачах тестирования и отладки, для выделения независимых ресурсов разным пользователям, отделам или даже компания, а также в случае необходимости использования решения с отличными от основной системы настройками (например, так можно реализовать сервер FTP с собственной базой аккаунтов). Обязательное требование к хосту, кроме поддержки VMM — наличие не менее 4 ГБ оперативной памяти.

В комплект пакета входит бесплатная лицензия на одну копию Virtual DSM. Если нужно больше — потребуется докупить лицензий (на момент подготовки статьи — по $149,99). При этом речь идет именно о числе одновременно работающих машин такого типа. То есть вы можете создать и больше виртуальных машин, но работать одновременно могут не более числа лицензий. Кроме того, потребуется самостоятельно перераспределять лицензии из доступного пула или же включить автоматическое их использование.

При создании машины с VirtualDSM, как и для обычных виртуальных машин, нужно выбрать место ее расположения, название, число виртуальных ядер процессора, объем оперативной памяти (от 1 ГБ), дисковый том или несколько (от 10 ГБ каждый), сетевые интерфейсы и их параметры, режим автозапуска и права пользователей по управлению машиной.

После запуска VirtualDSM в окне управления виртуальными машинами можно узнать IP-адрес ее сетевого интерфейса и, как обычно, обратиться к нему в браузере для управления системой. Далее будет предложен знакомый мастер настройки, но только из одной страницы, на которой указываем имя сервера и аккаунт администратора.

Работа с виртуальным сетевым накопителем мало отличается от работы с реальным. Интерфейс, сервисы и функции в целом аналогичны «настоящему» устройству. Разницу можно найти только в работе с дисковыми томами — в системе используются готовые виртуальные тома. Интересно, что при желании можно увеличивать их размер даже без перезагрузки виртуальной системы.

В пакетах вы недосчитаетесь сервиса высокой доступности (High Availability Manager), MailPlus, PetaSpace и, конечно, самой VMM. Кроме того, в VirtualDSM нет поддержки управления питанием, внешних накопителей и других устройств. Учетная запись аккаунта Synology и службы QuickConnect, а также система уведомлений настраиваются независимо от основного устройства.

Отличия VMM Pro

Выше приводилась ссылка на отличия версии VMM Pro от обычной. Разберем таблицу по пунктам. Первая группа касается виртуальных ресурсов. В версии VMM Pro можно предоставить гостям в два раза больше виртуальных ядер, создать в тысячу раз больше коммутаторов, иметь не 32, а 255 снимков для каждой виртуальной машины, предоставить не одну, а шестнадцать ссылок общего доступа. Сложно сказать, насколько это действительно будет востребовано. Все будет зависеть от конкретных сценариев использования.

Следующим одним отличием версии VMM Pro является поддержка не только локальных снимков дисков виртуальных машин, но и их репликация на другие хранилища в пределах кластера.

При работе с VMM Pro, хост для запуска машины и хост для хранения образов ее дисков могут быть разными в кластере. Однако надо понимать, что скорость работы с удаленным хранилищем зависит от скорости сетевого подключения участников кластера.

Пакет VMM несовместим с сервисом Synology High Availability, так что в нем предусмотрены собственные средства обеспечения высокой доступности. При наличии активной подписки VMM Pro и не менее трех хостов в кластере вы можете включить данный сервис для выбранных виртуальных машин. Для этого вы определяете активный и пассивный сервера, на которых происходит непосредственно запуск виртуальной машины, а для хранения ее данных требуется еще один сервер. Заметим, что при работе такой виртуальной машины на пассивном сервере будут предварительно зарезервированы ресурсы для нее. В зависимости от типа возникшей проблемы происходит или динамическая миграция виртуальной машины без прерывания работы с активного на пассивный сервер или ее перезапуск на пассивном сервере. При необходимости можно осуществить и принудительную миграцию. Обратите внимание, что миграция несовместима с SRV-IO (может быть использовано для сетевых контроллеров), а подключенные к виртуальной машине USB-устройства будут отключены. Кроме того, необходимо использовать сетевые накопители на одинаковых процессорах или включить режим совместимости для виртуальной машины. Еще одним отличием версии VMM Pro является поддержка не только локальных снимков дисков виртуальных машин, но и их репликация на другие хранилища в пределах кластера. В настоящий момент возможности данного сервиса, на наш взгляд, отстают от предлагаемых в коммерческих продуктах.

Заключение

Пакет Virtual Machine Manager позволяет даже неподготовленным пользователям начать работать с системой виртуализации для реализации своих задач. Решение получилось достаточно удобным и универсальным. При этом «из коробки» вы получаете неплохой набор возможностей, включая подключение к рабочим столам из браузера, защиту виртуальных машин по технологии снимков, настройку сетевых коммутаторов, импорт готовых образов виртуальных машин и другие. Конечно, это заметно проще, чем работа в консоли или установка гипервизора на выделенный сервер. В общем случае, сравнивать данное решение по стоимости с коммерческими продуктами нет смысла. Они играют в разных сегментах. Подобные оценки можно провести, если только речь зайдет о разработке проекта под определенные задачи и требования.

С другой стороны, в текущей линейке сетевых накопителей компании обычно используются относительно слабые платформы, которые хорошо справляются с задачами сетевого управления данными, однако для «настоящей» виртуализации подходят плохо. Конечно, данный продукт справится с такими нетребовательными задачами, как, к примеру, сервер автоматизации, сервер удаленного доступа, служебные сетевые сервисы (DNS, LDAP, RADIUS и т. п.), однако для многих из них уже есть готовые пакеты в составе самого DSM. Работа именно в отдельной виртуальной машине в данном случае может быть интересна если хочется полного контроля и/или независимости. При этом рассчитывать, что вы сможете использовать не топовые модели сетевых накопителей для комфортной удаленной работы с полноценными настольными операционными системами не стоит. Все-таки виртуализации нужны и ядра и оперативная память. Так что если вам нужна именно виртуализация, то сервера сходной по этим параметрам конфигурации могут быть и дешевле.

Из наиболее существенных замечаний по функциям VMM отметим отсутствие гибких средств доступа к хранилищам образов, возможности добавления образов дисков к существующим машинам, резервного копирования на сетевые ресурсы по стандартным протоколам.

Дополнительное лицензирование версии VMM Pro в данных условиях выглядит достаточно логично, поскольку расширенные функции нужны не всем. Текущая реализация, даже учитывая стоимость сетевых накопителей верхнего уровня, выглядит достаточно интересно на фоне коммерческих решений, однако последние предоставляют существенно больше возможностей и по существенно более высокой цене.

Решение VirtualDSM тоже выглядит интересно. Оно вполне может найти себе место не только как отдельный продукт для сдачи в аренду клиентам дата-центров, но и в малом бизнесе. Например, если хочется иметь изолированную среду для тестирования или независимое хранилище для департамента или внешних сотрудников.

Полный текст статьи читайте на iXBT