![image](https://habrastorage.org/getpro/habr/post_images/e9f/719/c26/e9f719c26c8d411301018d475305098c.png)
В пределах данной статьи я хочу познакомить вас с VMWare vSphere и рассмотреть базовые вопросы подбора её аппаратного и программного обеспечения.
Начнем с лицензирования. Продукт vSphere лицензируется по процессорным сокетам и физическим хостам виртуализации (в зависимости от редакции).
Для малого бизнеса существуют редакции Essentials (600$) и Essentials Plus (4500$). Основное отличие между ними – живая миграция (vMotion), вещь довольно полезная. Живая миграция позволяет без остановки виртуальной машины в реальном времени перемещать её на соседний физический сервер. При этом работа виртуальной машины не прерывается, и факт миграции не замечают ни приложения внутри этой машины, ни внешние клиенты, работающие с этими приложениями. Редакция Essentials, по сути, это просто лицензия на 3 отдельных гипервизора с общим управлением, не более того. Редакция Plus позволяет создавать кластер высокой доступности (HA Cluster). Данная технология позволяет в автоматическом режиме перезапустить (холодный рестарт) на «живом» хосте виртуальные машины, которые работали на вышедшем из строя хосте кластера. Естественно, некоторый перерыв сервиса будет, машинам необходимо время на загрузку и запуск сервисов. Но 3 минуты в автоматическом режиме это лучше, чем часы простоя при ручном вмешательстве на физическом оборудовании.
С точки зрения лицензирования эти редакции позволяют собрать кластер из максимум трех хостов виртуализации, и установить сервер управления vCenter Server в урезанной версии Foundation. Эта версия vCenter может работать максимум с тремя хостами и создана именно для малого бизнеса.
Считаю минимально рабочим вариантом редакцию Essentials Plus из-за наличия vMotion. При покупке vSphere необходимо приобрести подписку на любой срок. Существуют варианты на 2 месяца, 1 и 3 года при покупке у VMWare. Если покупать через сторонних вендоров вроде IBM или HP, то подписка бывает и на 5 лет. Сама подписка дает право обновляться на любую версию vSphere бесплатно. Так же возможен даунгрейд. В рамки подписки так же входит техническая поддержка. При покупке подписки можно выбрать уровень поддержки, базовая только в рабочее время, или расширенная круглосуточно. От себя могу сказать, что обращения в поддержку крайне редки, но бывают. Основные проблемы vSphere решаются через 5 минут поиска в Google, а действительно серьезные проблемы, обычно, связаны с серьезными ошибками в коде vSphere, и поддержка в таких случаях советует не использовать определенный функционал и дождаться очередных патчей. В случае, если клиент не продлил поддержку, это не является нарушением лицензионного соглашения. Но если позже клиент вдруг задумается сделать апгрейд до новой версии, то ему придется либо заново приобрести весь пакет лицензий с подпиской, либо восстановить подписку. Восстановление подписки производится за весь срок просрочки с уплатой штрафа и примерно равно стоимости подписки умножить на 1.2
Далее следуют редакции Standart (1000$), Enterprise (2500$) и Enterprise Plus (3500$). Данные редакции лицензируются на каждый сокет хостов виртуализации. Например, если у вас 6 хостов по 4 сокета, то необходимо приобрести 24 лицензии vSphere. Для создания кластера необходимо дополнительно приобрести сервер управления vCenter Standart (7000$). Так же существуют бандлы, которые чуть дешевле, чем продукты в розницу. Но после выхода Operations Manager (который не особо продается), VMWare упразднили обычные бандлы и теперь они есть только с Operations Manager, что учитывая повышенную цену, становится не особо привлекательным.
Редакция vSphere Standart по функционалу практически идентична редакции Essentials Plus, разве что не имеет ограничения на количество хостов в кластере (техническое ограничение максимум 32 хоста на кластер). Так же в редакции Standart есть искусственные ограничения по размеру виртуальных машин (8 виртуальных ядер vCPU). К сожалению, во всех младших редакциях vSphere нет балансировщика нагрузки, который может в автоматическом режиме перемещать виртуальные машины по хостам кластера, тем самым выравнивая их нагрузку (технология DRS).
Функционал DRS включен в редакции Enterprise и Enterprise Plus.
Конечно, самой интересной является редакция Enterprise Plus. Она несет полный функционал, и является самой дорогой. Тут есть балансировка места на системах хранения (Storage DRS или просто SDRS), есть новая технология хранения данных vSAN, есть распределенный виртуальный свитч vDS, есть функция SSD кэширования vFRC. Конечно, список функций не ограничен только этими, но названные функции являются основными.
Пара слов про эти функции:
SDRS позволяет в автоматическом режиме производить живую миграцию виртуальной машины между хранилищами данных. Совместно с технологией vMotion, технология Storage vMotion (на которой базируется SDRS), позволяет полностью отвязать виртуальную машину от аппаратной части. Миграция происходит в реальном времени без остановки виртуальных машин. Появляется возможность полной замены аппаратного обеспечения кластера без нарушения аптайма (замена серверов, систем хранения, сетевого оборудования). Использование контроля производительности систем хранения позволяет в автоматическом режиме перемещать виртуальные машины на системы хранения, удовлетворяющие заданному для этих машин уровню производительности.
vSAN – последняя разработка VMWare, позволяет использовать локальные диски серверов виртуализации в качестве общего хранилища данных кластера. На базе локальных дисков собирается виртуальное «внешнее» хранилище, доступное всем хостам кластера. При включении данной функции выбирается степень отказоустойчивости данного хранилища (выход из строя какого количества хостов одновременно переживет эта технология). Необходимым требованием является наличие в хостах дисков SSD помимо обычных шпиндельных дисков. Желательным является наличие скоростной сети передачи данных между хостами (10 Gbit или более). Технология призвана сократить расходы на систему хранения данных. Я пытался анализировать бонусы технологии, но пришел к выводу о неочевидности её плюсов. Дело в том, что лицензируется она отдельно. Лицензируется по количеству сокетов в хостах виртуализации и стоит порядка 1300$ без учета подписки. Добавляем сюда стоимость дисков и получаем достаточно приличную сумму, вполне сравнимую с приличной внешней системой хранения.
vDS – распределенный виртуальный свитч. Очень полезная функция, особенно для крупных инфраструктур. По умолчанию на хостах виртуализации создаются стандартные виртуальные свитчи, vSS. Они конфигурируются на каждом хосте по отдельности. Соответственно, при усложнении виртуальной сетевой инфраструктуры на поддержку стандартных свитчей начинает уходить много сил и времени. Не исключены человеческие ошибки в настройке, которые вполне могут привести к простою сервисов. И тут на помощь приходят распределенные свитчи, vDS. Эти свитчи создаются на сервере управления vCenter Server и накладывают свою конфигурацию на необходимые хосты виртуализации. Все настройки производятся в одном месте и автоматически применяются по всем физическим серверам. Плюсом данного решения является возможность использования физических серверов с абсолютно различным составом и типом сетевых карт. Для каждого физического хоста выбирается уникальная методика наложения настроек распределенного свитча.
Помимо централизованного управления данный свитч имеет ряд дополнительных функций по обеспечению балансировки сетевой нагрузки. Стоит отметить, что помимо родного распределенного свитча от VMWare, существует возможность установки альтернативного распределенного свитча от стороннего вендора. Ярким примером может служить распределенный свитч от Cisco, Nexus 1000v (700$ за каждый сокет). Данный свитч имеет классическое управление и широкий функционал, которые привычны специалистам по Cisco.
vFRC – технология кэширования дисковых данных виртуальных машин на SSD накопители физических серверов виртуализации. Как это работает? SSD диски хоста объединяются в vFRC пул хоста. Этот объем становится доступен для создания кэша чтения для виртуальных машин. В настройках виртуальной машины, работающей на данном хосте, добавляется vFRC кэш. Указывается его объем в гигабайтах (этот объем физически находится на сконфигурированном выше SSD пуле). Далее в этот объем для каждой машины кэшируются её операции чтения на основе статистики, все достаточно просто. А как же быть с миграцией на другой хост? Необходимо иметь аналогичное свободное пространство в пуле vFRC на целевом хосте, тогда вместе с миграцией виртуальной машины, мигрирует и её vFRC кэш. Даже в случае потери по какой либо причине данного кэша, виртуальная машина продолжит работу в штатном режиме. Кэш работает только на чтение.
Итак, некоторые выводы по лицензированию. Учитывая методику лицензирования, становится логичным приобретать физические сервера с самыми мощными процессорами, с максимальным количеством ядер. Тогда КПД приобретаемых лицензий vSphere будет максимальным. Какой либо привязки к оборудованию не существует, посему всегда можно с легкостью произвести апгрейд аппаратного обеспечения.
С лицензированием немного разобрались, предлагаю двинуться в сторону железа. Что необходимо получить от виртуального датацентра? Скорость работы, надежность работы, необходимый объем ресурсов. Если с объемом ресурсов все достаточно прозрачно, то как быть со скоростью и надежностью?
Пару слов про скорость работы. Очевидно, производительность обеспечит максимальное количество ядер процессора, максимальная частота, объем кэш-памяти процессора. Необходимый объем (и частота) оперативной памяти хостов, исключающий сброс в своп оперативной памяти виртуальных машин. Использование производительных систем хранения. Применение низколатентных скоростных подключений для систем хранения. Использование технологий SSD кэширования для систем хранения или дисков виртуальных машин для снижения латентности. Использование широких сетевых подключений (10 Gbit или более). Использование агрегации подключений для повышения их производительности.
Основным методом обеспечения отказоустойчивости является резервирование, как минимум N+1. Сами физические хосты HA кластера должны иметь избыточность как минимум +1, а в идеале +2. Необходимо предусмотреть выход из строя одного хоста в то время, когда другой хост может находиться в режиме обслуживания. Дисковая система должна обеспечивать работоспособность при выходе из строя одного, в идеале двух дисков. Сетевое оборудование должно обеспечивать работу при выходе из строя любого звена. Стекирование свитчей, агрегация подключений к хостам и т.д. При определенных ситуациях необходимо создавать холодные или горячие резервные площадки, возможно даже метрокластеры.
В заключение хотелось бы сказать пару слов о дополнительных возможностях vSphere. Данная платформа виртуализации является достаточно дружелюбной для сторонних решений, имеет открытые API для различных платформ. Сторонние разработчики создали массу полезных продуктов, дополняющих основной функционал vSphere. Например, существует возможность централизованной антивирусной защиты виртуальных машин при помощи vShield. Данная технология встроена в гипервизор ESXi, имеет прямой доступ к содержимому диска виртуальных машин и является «проводником» для антивирусных модулей разработчиков антивирусного программного обеспечения. Антивирусные модули могут быть приобретены отдельно у предпочтительного вендора и интегрированы в vSphere. Установка каких либо антивирусных агентов в виртуальные машины не требуется, причем проверка на вирусы будет производиться даже при выключенной виртуальной машине (работа ведется с её диском со стороны гипервизора). Так же доступны продукты повышения безопасности виртуальной инфраструктуры vGate, а так же многие другие интересные дополнения.
На этом предлагаю закончить знакомство с VMWare vSphere. В следующей статье я расскажу глубоко технические рекомендации по оптимизации работы виртуальных машин в среде vSphere.