Бесплатная виртуализация


Бесплатная виртуализация — практическая применимость / Хабрахабр

Нет, названием я вовсе не хотел сказать, что это плохая технология, она наоборот прекрасна, но вот её реализации очень различаются. В интернете куча ресурсов, посвященных этой теме, и каждый считает своим долгом сделать сравнение, да еще с кучей графиков и официальных рекламаций. Чтож, значит это и мой долг. Вся разница в том, что мое сравнение будет включать в себя те аспекты, которые были значимы для меня (например проброс USB устройств в гостевые системы и удобство реализации программного роутера), а еще мне будет лень приводить официальные таблицы и значит мое сравнение будет короче, привязано к одной из практических задач. И самое главное — поскольку предприятие, в котором я работаю очень скупо на развитие IT инфраструктуры, то обсуждение будет вестись вокруг бесплатных продуктов. Итак, в ходе домашней и профессиональной деятельности пришлось столкнуться с такими системами, как VMWare vSphere, Microsoft Hyper-V и KVM. Рассмотрим их в порядке моего знакомства:
VMWare vSphere (ESXi)
О продукции VMWare всегда был только лучшего мнения и эта платформа стала любимой, но при одном условии — соответствие HCL (hardware compatibility list). То есть если «железо» хоста не отвечает HCL то можно только надеяться, что сами контроллеры совпадут с теми, что используются в комплектующих из HCL и в vSphere окажутся драйвера для них. Если же нет, то не видать вам этой платформы на хосте. Это есть главный минус платформы, который вытекает из главного плюса — она законченная. То есть не надо ничего пилить, строгать и бегать с бубном. Если она встает — значит она встает. То есть с полпинка и готовая для использования в производственной среде. Может устанавливаться на флеш накопитель, подключает почти все возможные системы хранения (local, NFS, iSCSI, FC). Правильный аппаратный RAID понимает без проблем, «неправильный» не понимает в принципе. Очень мощные функции управления виртуальными сетевыми адаптерами. Не знаю что уж там в платном виртуальном коммутаторе Nexus 1000, но бесплатный — вполне L2 switch. В частности мою основную и вспомогательную сетевые потребности отрабатывает на ура, а именно:

1) основная — это сетевой мост (вроде бы так называется этот функционал), то есть позволить выделенному виртуальному интерфейсу работать так, как будто к нему напрямую подключен провод. Не знаю как лучше это объяснить, по сути вполне ожидаемая функция, например так работает шлюз, ему отдан интерфейс с подключением к провайдеру, виртуальному интерфейсу средствами vSphere присвоен зарегестрированный MAC и шлюз по этому MAC'у получает у провайдера IP, устанавливает PPPoE канал и все тому подобное.

2) вспомогательная — L2 свитч с поддержкой tagged и untagged портов. Благодаря этому шлюз прекрасно маршрутизирует VLAN сети, будучи подключенным только к одному физическому интерфейсу. Ну и на десерт — полноценный проброс USB устройств в гостевые системы (например аппаратных USB ключей) и неплохие бесплатные решения для миграции и резервных копий. Veeam Backup&Replicate в бесплатной редакции реализует даже hot storage vMotion. Родная утилита конвертации позволяет легко и просто переделывать образы физических машин и иных виртуальных машин в работающие образы vSphere. Если к этому еще добавить платный, но прелестный vmware workstation, который будучи очень хорошим гипервизором второго уровня умеет подключаться к хосту vSphere и управлять его виртуальными системами, то картина вырисовывается прямо загляденье. Расплаты тут только две увидел на данный момент: HCL и RAID.

Microsoft Hyper-V Server
Как много он умеет согласно официальным пресс-релизам. Собирая домашний серверок я конечно подавал надежды именно на эту платформу, потому как моя платформа никак не попадала в HCL vmware. Первое, что бросилось в глаза — нужен бубен, и только фирменный для того, чтобы её запустить. Без «поллитры» или хорошего руководства тут не обойтись (к слову, первое знакомство с vSphere происходило без руководств, бубнов и подсказок, только на интуитивном уровне). Ну и чтобы хоть как-то сносно произвести начальную постустановочную настройку, приходится пользоваться неофициальными (любительскими) утилитами. Даже после нахождения хорошего руководства, приходилось долго соображать почему не отображается среди возможных интерфейсов ни одна сетевая карта, несмотря на только что установленные драйвера. Разгадка заключалась в том, что пока не вставишь кабель, система не отображает физический сетевой интерфейс. Интерфейс очень скудный, настроек для виртуальных машин и гипервизора меньше, зато судя по рекламам функций больше, просто они тщательней запрятаны. Начал я естественно со шлюза и … Hyper-V не справился с сетевой задачей #1. Более того проброс USB с хоста в гостевую систему в версии 3 еще не возможен, а более новой пока нет. Но вместо того, чтобы признать эту недоработку, представители MS в некоторых ресурсах указывают на то, что эта функция пока не доступна из-за ряда технологических ограничений, а у vmware она реализована неправильно — ах какие молодцы. Установка на флэш накопитель вроде бы возможна, но опять же только с «поллитрой», а так и спиться можно раньше, чем платформа заработает. Зато неправильные RAID ей не помеха.

Итак, что у нас в сухом остатке? Всеядность в отношении «железа» и всеядность в отношении RAID. Плюс должны работать качественные утилиты Veeam, но проверить я этого не смог — быстро решил искать ей замену.

KVM
Еще одна хваленая платформа. Почитал про её возможности и не смог устоять перед желанием испытать её, тем более что нужна была всеядная замена Hyper-V. И вот тут я понял, что это просто инвертированная vSphere во всех смыслах. Первое, с чем я столкнулся — множество разных вариантов разворачивания этой платформы. То есть предполагается, что человек должен все их попробовать, проанализировать и сделать вывод как правильнее в его случае. Как-то это непривычно в применении к серверам. К тому же не нашел официальных best practices по установке — реально кто во что горазд. Один утверждает, что надо все вручную сделать через libvirt, другой — что достаточно поставить VirtManager, а дальше все сделается автоматом, третий же утверждает, что лучше накатить ProxMox на Debian. Итог: желание попробовать вылилось в изучение доступных средств разворачивания и выбор оптимального. Таковыми являются на мой взгляд bare metal вариации, которые не требует предварительно установленной и подготовленной системы — пакет должен быть подогнан, так сказать «костюмчик должен сидеть». И из всего выходило, что внимания заслуживают дистрибутивы ProxMox и OpenNode. Первый на Debian, знакомство с которым старо и поверхностно, второй же на CentOS, который я использую не в одном экземпляре, считаю синонимом стабильности и конечно наследником RedHat way, с которого я и начинал знакомство с Linux.
OpenNode
OpenNode насчитывал уже 6-ую версию релиза и посему был воспринят мной, как серьезная заявка на платформу для производственной среды и уж тем более для дома. Установка преподнесла сюрприз — я никак не мог пройти этап первоначальной настройки сетевого интерфейса: вбиваю все настройки, потом инсталлятор пытается их применить и выдает ошибку, которую я уже и не помню. После множества вариантов настроек я сунул кабель в интерфейс и … вот она — причина. Почти как в Hyper-V инсталлятор не пускает вас дальше в настройке сетевого интерфейса, пока вы не дадите ему активный линк. Эх забыты времена, когда RedHat устанавливался с трех дисков на компьютер, вокруг которого в радиусе 2-х километров нигде не было интернета и сети. Ладно, с этим смирились, систему поставили, запустили консольный UI, который при создании хранилища вывалился с ошибкой. Ладно, посмотрим GUI, который представляет собой VirtualManager на сервере без иксов. Необычно, но решение оказывается есть и даже под Windows. Скачиваем и устанавливаем Xming(порт X-сервера), коннектимся по SSH и запускаем VirtualManager, который стартует в нашем порте X-ов. Несмотря на то, что я обычно не обращаю внимание на прорисованность интерфейсов серьезных продуктов, но даже этот я отметил словом «Убогий», а ведь на дворе все же 2013 год (дело происходило еще в 2013ом). Ладно и на это мои глаза спокойно закрываются, создаем виртуальную машину в стандартном хранилище (потому что другое не создается и вываливается с ошибкой) и на каком-то моменте VirtualManager вываливается с ошибкой и больше не стартует. Перезагрузка ему не помогает. Я думаю существуют всякие мануалы, как вручную допилить libvirt, найти в логах по коду ошибки причину, по которой VirtualManager не работает, исправить это в конфигах и заставить работать… я думаю можно, но желания уже нет.
ProxMox
6-ой релиз OpenNode не произвел должного впечатления. Остается последняя надежда — ProxMox, Неужели в этом мире с моими хотелками есть только vSphere — тогда они смело могут считать себя монополистами. Ставлю ProxMox, этап с настройкой интерфейса не проверил, так как линк уже был, установка прошла без проблем. Немного пришлось помучиться с перенастройкой сетевых интерфейсов — сказалось видимо плохое знание Debian. Первое отличие, которое бросается в глаза — тут используется не VirtualManager, а web panel. Это меня даже радует, потому что управление через веб я начинаю любить все больше. Конфигурация сетевых интерфейсов немного замудреная, но можно разобраться даже интуитивно. Почему то переконфигурация не давала эффекта без перезагрузки. Минус, но пока терпимый. В консоль для его исправления не лез по 2-м причинам: 1) Debian все равно мне плохо знаком 2) Рассматриваю продукт, а в нем все управление сосредоточено в панели управления, все что в консоли — скажем так «недокументированные возможности». Кроме того без «недокументированных возможностей» нет и поддержки сетей в VLAN. Наконец создаю виртуальную машину, образ для установки есть возможность загрузить прямо через вебморду, что вызывает восхищение после Hyper-V и OpenNode (в любимом vSphere это конечно же есть). MAC адреса виртуальным адаптерам присваиваются, подключение к ISP пробросил в виртуалку, приступаю к установке и… Java RE более старой версии ничего не позволяет сделать, на игноры предупреждения безопасности вылазит только окно Error. Придется обновить. Обновился, подключился к консоли, но через неделю эта версия Java не позволила мне снова подключится, потому что вышла новая версия. Мой сетевой тест #1 не вызвал проблем. Базовые функции по управлению виртуальными машинами вполне годные, функционал для альтернативы vSphere на этом рынке неплох, возможности по изменению «железа» VM, способы виртуализации KVM и openVZ(контейнеры). Статистики, бэкапы, снэпшоты, поддержка авторизации LDAP/AD, встроенные базы, подключение хранилищ: RBD, iSCSI, NFS и другие, которые у меня не на слуху, обновление и как я понял готовые скачиваемые пакеты openvz virtual appliances. А теперь на минутку вспомним, что это надстройка над Debian и тогда станет понятно, что если подключить сюда «поллитру» и бубен, то становятся возможными установка на неправильные raid и даже soft raid, доставка рабочего стола Spice (еще не попробовал, рассказать не могу), проброс USB устройств с хоста (к сожалению адрес пробрасываемого устройства меняется после перезагрузки), проброс PCI плат — а тут меня ждал облом — процессор не поддерживает passthrough. Как видите возможностей много, а с допилкой еще больше. Но разбираться с тем, что из этого заработает, а что нет только вам. Этакий конструктор, с неплохим стартовым набором и возможностью допиливания.

Наконец мой рейтинг таков:

1: VMWare vSphere 2: Top Mix: ProxMox 3: Hyper-V Outsider: OpenNode.

P.S.: Конечно это любительский обзор и критерием выступали задачи, которые не для всех первостепенные. Но с этой стороны продукты редко сравнивают и выбор становится затруднительным.

habrahabr.ru

Какая система виртуализации лучше? / Хабрахабр

День добрый.

Люди, имеющие опыт поднятия виртуалок, на различных системах, подскажите:Какую систему виртуализации (из opensource) поставить на сервер, с учетом, что гостевые системы преимущественно будут заниматься роутингом?

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

Решение видится в затаскиванию всех этих железных монстров внутрь одной машины.

Т.к. большинство наших «серверов» по мощности остались далеко позади одного современного компа на базе Core 2 Duo или Core 2 Quad — то в расчетах мы исходили из того, что на компьютер на базе Core 2 Duo E6400 @ 3GHz / 4096 RAM удасться затащить хотя бы 4 реальных машины.

В качестве кандидатов к переносу выбраны были самые важные серверы: VPN (около 500 одновременных сессий), пару софтовых Linux-роутеров, radius-сервер, и пару серверов, отоброжающих админский web-интерфейс.

Дальше начался подбор систем виртуализации. Из кандидатов были: -OpenVZ -KVM -Xen -VMWare ESXi

В результате отбора получилось следущее: -OpenVZ. Опыт работы с ним уже был. Он вообще фактически не разграничивает системы между собой, и работает чисто на уровне эмуляции вызовов ядра. Кроме того, он не позволяет поднимать новые сетевые интерфейсы внутри системы, а значит VPN сервер на нем уже не получится. Для web-хостинга еще пойдет. Для роутеров — нет

-VMWare ESXi не смогли запустить ни на одном из доступных нам компов. Установщик либо просто не запускался, либо система после установки банально не грузилась.

-Xen — отпал потому, что в каждой гостевой машине должно быть то же ядро, что и на хост-машине. Кроме того. Собственно заставить его работать мне вообще не удалось. Может быть виной мои кривые ручки. Поэтому мы перешли к последнему кандидату…

-KVM — ему без разницы, какая гостевая машина запускается внутри хост-машины. Хоть с Виндой, хоть c OS/2. По сути полная изоляция машин друг от друга. Подкупило и то, что RedHat делает ставку именно на эту систему, и советует ее для Enterprise применений. Соответственно всем нашим требованиям оно соответствовало.

Поставили KVM. Быстро разобрались как ставить внутри системы, наладили сетку и маршрутизацию между виртуалками. Схема была такая. У хост-машины 2 сетевых карты, внутри они связаны в следующую систему: eth0-хост-машины — виртуальный br0 — [eth0-гостевой-машины-1 — eth2-гостевой-машины-1] — виртуальный br1 — [eth0-гостевой-машины-2 — eth2-гостевой-машины-2] — виртуальный br2 — eth2-хост-машины

Стали тестить. В тестах такая схема вела себя замечательно. Нагрузки почти никакой. Работает стабильно. Поставили в продакшн. И тут БАЦ! Нагрузка возросла в разы.

Выяснилось, что при потоке трафика через виртуалку около 15Мбит, она жрёт 40% процессора (согласно top) на хост машине. Соответственно уже 2 машины сжирают почти всю процессорную мощность на хост-машине. При этом внутри виртуалок загрузка 1-2%.

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

Попробовали. И столкнулись с двумя непонятными вещами: 1) При включении virtio гостевая машина может просто упасть без объяснения причин через 3-8 часов работы 2) Нагрузка на хост-машине не уменьшилась, а осталась на прежнем уровне.

На хост-машине система Gentoo, с ядром 2.6.30, собранным вручную. Всё, что нужно для виртуализации в нее уже вкомпилено. На гостевых машинах пробовали Ubuntu и ArchLinux. Разницы нет. Падают все.

Пробовали обновлять ядро на хост-машине, обновлять KVM, обновлять гостевую машину… пока это ничего не дало. Все работает без virtio и порой оказывается перегружено Сейчас продолжаю эксперименты с KVM на другой машине, но уже закралась мысль опробовать Xen… и вообще, может быть я что-то делаю неправильно? Например чтобы работало virtio, нельзя объединять интерфейс виртуалки с реальной сетевушкой в софтовый бридж… А может все правильно делаю, и так и должно быть? Такая нагрузка, такие проблемы…

В общем нужна помощь компетентных людей.

P/S: Огромная просьба, не давать советы вроде «замени всё на Cisco», «линукс фигня, ставьте фряху». Если вы немного подумаете, то поймете почему эти советы довольно далеки от реальности.

habrahabr.ru

Бесплатная виртуализация — практическая применимость - Citrix.pp.ru

Нет, названием я вовсе не хотел сказать, что это плохая технология, она наоборот прекрасна, но вот её реализации очень различаются. В интернете куча ресурсов, посвященных этой теме, и каждый считает своим долгом сделать сравнение, да еще с кучей графиков и официальных рекламаций. Чтож, значит это и мой долг. Вся разница в том, что мое сравнение будет включать в себя те аспекты, которые были значимы для меня (например проброс USB устройств в гостевые системы и удобство реализации программного роутера), а еще мне будет лень приводить официальные таблицы и значит мое сравнение будет короче, привязано к одной из практических задач. И самое главное — поскольку предприятие, в котором я работаю очень скупо на развитие IT инфраструктуры, то обсуждение будет вестись вокруг бесплатных продуктов. Итак, в ходе домашней и профессиональной деятельности пришлось столкнуться с такими системами, как VMWare vSphere, Microsoft Hyper-V и KVM. Рассмотрим их в порядке моего знакомства:

 

VMWare vSphere (ESXi)

О продукции VMWare всегда был только лучшего мнения и эта платформа стала любимой, но при одном условии — соответствие HCL (hardware compatibility list). То есть если «железо» хоста не отвечает HCL то можно только надеяться, что сами контроллеры совпадут с теми, что используются в комплектующих из HCL и в vSphere окажутся драйвера для них. Если же нет, то не видать вам этой платформы на хосте. Это есть главный минус платформы, который вытекает из главного плюса — она законченная. То есть не надо ничего пилить, строгать и бегать с бубном. Если она встает — значит она встает. То есть с полпинка и готовая для использования в производственной среде. Может устанавливаться на флеш накопитель, подключает почти все возможные системы хранения (local, NFS, iSCSI, FC). Правильный аппаратный RAID понимает без проблем, «неправильный» не понимает в принципе. Очень мощные функции управления виртуальными сетевыми адаптерами. Не знаю что уж там в платном виртуальном коммутаторе Nexus 1000, но бесплатный — вполне L2 switch. В частности мою основную и вспомогательную сетевые потребности отрабатывает на ура, а именно:

1) основная — это сетевой мост (вроде бы так называется этот функционал), то есть позволить выделенному виртуальному интерфейсу работать так, как будто к нему напрямую подключен провод. Не знаю как лучше это объяснить, по сути вполне ожидаемая функция, например так работает шлюз, ему отдан интерфейс с подключением к провайдеру, виртуальному интерфейсу средствами vSphere присвоен зарегестрированный MAC и шлюз по этому MAC'у получает у провайдера IP, устанавливает PPPoE канал и все тому подобное.

2) вспомогательная — L2 свитч с поддержкой tagged и untagged портов. Благодаря этому шлюз прекрасно маршрутизирует VLAN сети, будучи подключенным только к одному физическому интерфейсу. Ну и на десерт — полноценный проброс USB устройств в гостевые системы (например аппаратных USB ключей) и неплохие бесплатные решения для миграции и резервных копий. Veeam Backup&Replicate в бесплатной редакции реализует даже hot storage vMotion. Родная утилита конвертации позволяет легко и просто переделывать образы физических машин и иных виртуальных машин в работающие образы vSphere. Если к этому еще добавить платный, но прелестный vmware workstation, который будучи очень хорошим гипервизором второго уровня умеет подключаться к хосту vSphere и управлять его виртуальными системами, то картина вырисовывается прямо загляденье. Расплаты тут только две увидел на данный момент: HCL и RAID.  

Microsoft Hyper-V Server

Как много он умеет согласно официальным пресс-релизам. Собирая домашний серверок я конечно подавал надежды именно на эту платформу, потому как моя платформа никак не попадала в HCL vmware. Первое, что бросилось в глаза — нужен бубен, и только фирменный для того, чтобы её запустить. Без «поллитры» или хорошего руководства тут не обойтись (к слову, первое знакомство с vSphere происходило без руководств, бубнов и подсказок, только на интуитивном уровне). Ну и чтобы хоть как-то сносно произвести начальную постустановочную настройку, приходится пользоваться неофициальными (любительскими) утилитами. Даже после нахождения хорошего руководства, приходилось долго соображать почему не отображается среди возможных интерфейсов ни одна сетевая карта, несмотря на только что установленные драйвера. Разгадка заключалась в том, что пока не вставишь кабель, система не отображает физический сетевой интерфейс. Интерфейс очень скудный, настроек для виртуальных машин и гипервизора меньше, зато судя по рекламам функций больше, просто они тщательней запрятаны. Начал я естественно со шлюза и … Hyper-V не справился с сетевой задачей #1. Более того проброс USB с хоста в гостевую систему в версии 3 еще не возможен, а более новой пока нет. Но вместо того, чтобы признать эту недоработку, представители MS в некоторых ресурсах указывают на то, что эта функция пока не доступна из-за ряда технологических ограничений, а у vmware она реализована неправильно — ах какие молодцы. Установка на флэш накопитель вроде бы возможна, но опять же только с «поллитрой», а так и спиться можно раньше, чем платформа заработает. Зато неправильные RAID ей не помеха.

Итак, что у нас в сухом остатке? Всеядность в отношении «железа» и всеядность в отношении RAID. Плюс должны работать качественные утилиты Veeam, но проверить я этого не смог — быстро решил искать ей замену.  

KVM

Еще одна хваленая платформа. Почитал про её возможности и не смог устоять перед желанием испытать её, тем более что нужна была всеядная замена Hyper-V. И вот тут я понял, что это просто инвертированная vSphere во всех смыслах. Первое, с чем я столкнулся — множество разных вариантов разворачивания этой платформы. То есть предполагается, что человек должен все их попробовать, проанализировать и сделать вывод как правильнее в его случае. Как-то это непривычно в применении к серверам. К тому же не нашел официальных best practices по установке — реально кто во что горазд. Один утверждает, что надо все вручную сделать через libvirt, другой — что достаточно поставить VirtManager, а дальше все сделается автоматом, третий же утверждает, что лучше накатить ProxMox на Debian. Итог: желание попробовать вылилось в изучение доступных средств разворачивания и выбор оптимального. Таковыми являются на мой взгляд bare metal вариации, которые не требует предварительно установленной и подготовленной системы — пакет должен быть подогнан, так сказать «костюмчик должен сидеть». И из всего выходило, что внимания заслуживают дистрибутивы ProxMox и OpenNode. Первый на Debian, знакомство с которым старо и поверхностно, второй же на CentOS, который я использую не в одном экземпляре, считаю синонимом стабильности и конечно наследником RedHat way, с которого я и начинал знакомство с Linux.  

OpenNode

OpenNode насчитывал уже 6-ую версию релиза и посему был воспринят мной, как серьезная заявка на платформу для производственной среды и уж тем более для дома. Установка преподнесла сюрприз — я никак не мог пройти этап первоначальной настройки сетевого интерфейса: вбиваю все настройки, потом инсталлятор пытается их применить и выдает ошибку, которую я уже и не помню. После множества вариантов настроек я сунул кабель в интерфейс и … вот она — причина. Почти как в Hyper-V инсталлятор не пускает вас дальше в настройке сетевого интерфейса, пока вы не дадите ему активный линк. Эх забыты времена, когда RedHat устанавливался с трех дисков на компьютер, вокруг которого в радиусе 2-х километров нигде не было интернета и сети. Ладно, с этим смирились, систему поставили, запустили консольный UI, который при создании хранилища вывалился с ошибкой. Ладно, посмотрим GUI, который представляет собой VirtualManager на сервере без иксов. Необычно, но решение оказывается есть и даже под Windows. Скачиваем и устанавливаем Xming(порт X-сервера), коннектимся по SSH и запускаем VirtualManager, который стартует в нашем порте X-ов. Несмотря на то, что я обычно не обращаю внимание на прорисованность интерфейсов серьезных продуктов, но даже этот я отметил словом «Убогий», а ведь на дворе все же 2013 год (дело происходило еще в 2013ом). Ладно и на это мои глаза спокойно закрываются, создаем виртуальную машину в стандартном хранилище (потому что другое не создается и вываливается с ошибкой) и на каком-то моменте VirtualManager вываливается с ошибкой и больше не стартует. Перезагрузка ему не помогает. Я думаю существуют всякие мануалы, как вручную допилить libvirt, найти в логах по коду ошибки причину, по которой VirtualManager не работает, исправить это в конфигах и заставить работать… я думаю можно, но желания уже нет.  

ProxMox

6-ой релиз OpenNode не произвел должного впечатления. Остается последняя надежда — ProxMox, Неужели в этом мире с моими хотелками есть только vSphere — тогда они смело могут считать себя монополистами. Ставлю ProxMox, этап с настройкой интерфейса не проверил, так как линк уже был, установка прошла без проблем. Немного пришлось помучиться с перенастройкой сетевых интерфейсов — сказалось видимо плохое знание Debian. Первое отличие, которое бросается в глаза — тут используется не VirtualManager, а web panel. Это меня даже радует, потому что управление через веб я начинаю любить все больше. Конфигурация сетевых интерфейсов немного замудреная, но можно разобраться даже интуитивно. Почему то переконфигурация не давала эффекта без перезагрузки. Минус, но пока терпимый. В консоль для его исправления не лез по 2-м причинам: 1) Debian все равно мне плохо знаком 2) Рассматриваю продукт, а в нем все управление сосредоточено в панели управления, все что в консоли — скажем так «недокументированные возможности». Кроме того без «недокументированных возможностей» нет и поддержки сетей в VLAN. Наконец создаю виртуальную машину, образ для установки есть возможность загрузить прямо через вебморду, что вызывает восхищение после Hyper-V и OpenNode (в любимом vSphere это конечно же есть). MAC адреса виртуальным адаптерам присваиваются, подключение к ISP пробросил в виртуалку, приступаю к установке и… Java RE более старой версии ничего не позволяет сделать, на игноры предупреждения безопасности вылазит только окно Error. Придется обновить. Обновился, подключился к консоли, но через неделю эта версия Java не позволила мне снова подключится, потому что вышла новая версия. Мой сетевой тест #1 не вызвал проблем. Базовые функции по управлению виртуальными машинами вполне годные, функционал для альтернативы vSphere на этом рынке неплох, возможности по изменению «железа» VM, способы виртуализации KVM и openVZ(контейнеры). Статистики, бэкапы, снэпшоты, поддержка авторизации LDAP/AD, встроенные базы, подключение хранилищ: RBD, iSCSI, NFS и другие, которые у меня не на слуху, обновление и как я понял готовые скачиваемые пакеты openvz virtual appliances. А теперь на минутку вспомним, что это надстройка над Debian и тогда станет понятно, что если подключить сюда «поллитру» и бубен, то становятся возможными установка на неправильные raid и даже soft raid, доставка рабочего стола Spice (еще не попробовал, рассказать не могу), проброс USB устройств с хоста (к сожалению адрес пробрасываемого устройства меняется после перезагрузки), проброс PCI плат — а тут меня ждал облом — процессор не поддерживает passthrough. Как видите возможностей много, а с допилкой еще больше. Но разбираться с тем, что из этого заработает, а что нет только вам. Этакий конструктор, с неплохим стартовым набором и возможностью допиливания.

Наконец мой рейтинг таков:

1: VMWare vSphere 2: Top Mix: ProxMox 3: Hyper-V Outsider: OpenNode.

P.S.: Конечно это любительский обзор и критерием выступали задачи, которые не для всех первостепенные. Но с этой стороны продукты редко сравнивают и выбор становится затруднительным.

citrix.pp.ru

Продукты для виртуализации - Виртуализация для бизнеса

Продукты для виртуализации

VMware

Компания VMware – один из первых игроков на рынке платформ виртуализации. В 1998 году VMware запатентовала свои программные техники виртуализации и с тех пор выпустила немало эффективных и профессиональных продуктов для виртуализации различного уровня: от VMware Workstation, предназначенного для настольных ПК, до VMware ESX Server, позволяющего консолидировать физические серверы предприятия в виртуальной инфраструктуре.

В весьма обширном списке продуктов VMware можно найти немало инструментов для повышения эффективности и оптимизации ИТ-инфраструктуры, управления виртуальными серверами, а также средства миграции с физических платформ на виртуальные. В России продукты компании VMware особенно популярны, поскольку виртуализация у нас еще только набирает обороты, а платформы других вендоров, не так известные нам, являются весьма «сырыми» и обладают гораздо меньшей функциональностью, чем аналоги у VMware. Кроме того, по результатам различных тестов производительности средства виртуализации VMware почти всегда по большинству параметров выигрывают у конкурентов. А если говорят о виртуализации операционных систем Windows – то это почти наверняка продукты VMware.

VMware имеет более 100 000 клиентов по всему миру, в списке ее клиентов 100% организаций из Fortune 100. Сеть партнерств охватывает более 350 производителей оборудования и ПО и более 6000 реселлеров.

Между тем, среди платформ виртуализации у VMware есть из чего выбирать:

  • VMware Workstation – платформа, ориентированная на Desktop-пользователей и предназначенная для использования разработчиками ПО, а также профессионалами в сфере IT.
  • VMware Player – бесплатный «проигрыватель» виртуальных машин, предназначенный для запуска уже готовых виртуальных машин.
  • VMware Server, носивший ранее название VMware GSX Server, ориентированный на использование в инфраструктуре малых предприятий для поддержания виртуальных серверов. Эта платформа работает “поверх” хостовой системы Windows или Linux.
  • VMware Ace – продукт для создания защищенных политиками безопасности виртуальных машин, которые затем можно распространять по модели SaaS (Software-as-a-Service).
  • VMware ESX Server – мощная платформа виртуализации для среднего и крупного бизнеса, ориентированная в первую очередь на поддержание целостной и масштабируемой IT инфраструктуры,
  • VMware ESXi - “тонкая” платформа виртуализации, интегрируемая во флэш-память серверов и предназначенная для поставки серверов виртуализации с уже предустановленным ПО для поддержки виртуальных машин.
  • VMware Virtual Center – мощное средство для управления платформами виртуализации VMware ESX Server и VMware Server, обладающее широкими возможностями по консолидации серверов, их настройке и управлению. VMware VirtualCenter агрегирует в себе все аспекты управления виртуальной средой - от виртуальных машин, до сбора информации о физических серверах для последующей их миграции в виртуальную инфраструктуру.
  • VMware Fusion – настольный продукт для виртуализации на платформе Mac от компании Apple.
  • VMware Site Recovery Manager - ПО для создания территориально-удаленного резервного сегмента виртуальной инфраструктуры, который в случае отказа основного узла, берет на себя функции по поддержке виртуальных машин в соответствии с планом восстановления после сбоев.
  • VMware Converter - продукт для перевода в виртуальную среду физических серверов, интегрированный с VirtualCenter и позволяющий осуществлять “горячую” (без останова систем) и “холодную” миграцию.
  • VMware ThinApp - бывший продукт Thinstall Virtualization Suite, ПО для виртуализации приложений, позволяющее распространять предустановленные приложения на клиентские рабочие станции, сокращая время на стандартные операции по установке и конфигурации.
  • VMware Lifecycle Manager - ПО для управления жизненным циклом виртуальных машин, позволяющее существенно сэкономить на административных процедурах по развертыванию новых систем, их обслуживанию и “Списанию”.
  • VMware Stage Manager - продукт для создания тестовой площадки для виртуальных систем с последующим их переводом в производственную среду компании.
  • VMware Virtual Desktop Infrastructure - комплекс продуктов, обеспечивающий централизацию пользовательских рабочих станций в виртуальных машинах на платформе ESX Server. Это позволяет сократить затраты на стандартные ИТ-операции, связанные с развертыванием и обслуживанием пользовательских десктопов.
  • VMware Capacity Planner - средство централизованного сбора и анализа данных об аппаратном и программном обеспечении серверов, а также производительности оборудования. Эти данные используются авторизованными партнерами VMware для построения планов консолидации виртуальных машин на платформе VMware ESX Server.
  • VMware Lab Manager - продукт для создания инфраструктуры хранения и доставки конфигураций виртуальных машин, позволяющий организовать эффективную схему тестирования в компаниях-разработчиках ПО.
  • VMware Consolidated Backup - фреймворк для написания сценариев резервного копирования виртуальных машин, работающий непосредственно в сети хранения данных SAN и не загружающий хост-серверы ESX и виртуальные машины операциями архивирования.
  • VMware Update Manager - средство централизованного обновления хостов ESX и гостевых систем в виртуальной инфраструктуре.
  • VMware VMmark - продукт, доступный только производителям аппаратного обеспечения, предназначенный для тестирования производительности VMware ESX Server на серверных платформах.

Citrix Xen

Разработка некоммерческого гипервизора Xen начиналась как исследовательский проект компьютерной лаборатории Кембриджского университета. Основателем проекта и его лидером был Иан Пратт (Ian Pratt), сотрудник университета, который создал впоследствии компанию XenSource, занимающуюся разработкой коммерческих платформ виртуализации на основе гипервизора Xen, а также поддержкой Open Source сообщества некоммерческого продукта Xen. Изначально Xen представлял собой самую развитую платформу, поддерживающую технологию паравиртуализации. Эта технология позволяет гипервизору в хостовой системе управлять гостевой ОС посредством гипервызовов VMI (Virtual Machine Interface), что требует модификации ядра гостевой системы. На данный момент бесплатная версия Xen включена в дистрибутивы нескольких ОС, таких как Red Hat, Novell SUSE, Debian, Fedora Core, Sun Solaris.

В середине августа 2007 года компания XenSource была поглощена компанией Citrix Systems. Сумма проведенной сделки – около 500 миллионов долларов (акциями и денежными средствами) говорит о серьезных намерениях Citrix в отношении виртуализации. Эксперты полагают, что не исключена и покупка Citrix компанией Microsoft, учитывая давнее ее сотрудничество с XenSource.

  • Бесплатный Xen. В настоящее время Open Source версия платформы Xen применяется в основном в образовательных и исследовательских целях. Некоторые удачные идеи, реализованные многочисленными разработчиками со всего мира, находят свое отражение в коммерческих версиях продуктов виртуализации компании Citrix. Сейчас бесплатные версии Xen включаются в дистрибутивы многих Linux-систем, что позволяет их пользователям применять виртуальные машины для изоляции программного обеспечения в гостевых ОС с целью его тестирования и изучения проблем безопасности, без необходимости установки платформы виртуализации. К тому же многие независимые разработчики ПО могут распространять его с помощью виртуальных шаблонов, в которых уже установлена и настроена гостевая система и предлагаемый продукт. Кроме того, Xen идеально подходит для поддержки старого программного обеспечения в виртуальной машине. Для более же серьезных целей, в производственной среде предприятия необходимо использовать коммерческие платформы компании Citrix.
  • Citrix XenApp - бывший продукт Citrix Presentation Server, предназначенный для виртуализации и публикации приложений в целях оптимизации инфраструктуры доставки сервисов в крупных компаниях. XenApp имеет огромное количество пользователей по всему миру и во многих компаниях является ключевым компонентом ИТ-инфраструктуры.
  • Citrix XenServer - платформа для консолидации серверов предприятий среднего масштаба, включающая основные возможности для поддержания виртуальной инфраструктуры.
  • Citrix XenServer Select Edition - аналог ESXi от VMware, платформа интегрированная в серверы HP, Dell и других производителей и ориентированная на поддержку виртуальных машин с момента поставки сервера.
  • Citrix XenCenter - ПО для управления серверами виртуализации XenServer.
  • Citrix XenDesktop - решение по виртуализации десктопов предприятия, позволяющее централизованно хранить и доставлять рабочие окружения в виртуальных машинах пользователям.

Microsoft

Для Microsoft все началось, когда в 2003 году она приобрела компанию Connectix, одну из немногих компаний производящую программное обеспечение для виртуализации под Windows. Вместе с Connectix, компании Microsoft достался продукт Virtual PC, конкурировавший тогда с разработками компании VMware в отношении настольных систем виртуализации. По большому счету, Virtual PC предоставлял тогда такое количество функций, что и VMware Workstation и при должном внимании мог бы быть в настоящее время полноценным конкурентом этой платформы. Однако с того времени, компания Microsoft выпускала по минорному релизу в год, не уделяя особого внимания продукту Virtual PC, в то время как VMware стремительно развивала свою систему виртуализации, превратив её в по-настоящему профессиональный инструмент.

Осознав свое технологическое отставание в сфере виртуализации серверных платформ, компания Microsoft выпустила продукт Virtual Server 2005, нацеленный на создание и консолидацию виртуальных серверов организаций. Однако было уже поздно – компания VMware уже захватила лидерство в этом сегменте рынка, предлагая в тот момент две серверные платформы виртуализации VMware GSX Server и VMware ESX Server, каждая из которых по многим параметрам превосходила платформу Microsoft.

Окончательный удар был нанесен в 2006 году, когда VMware фактически объявила продукт VMware GSX Server бесплатным, взявшись за разработку продукта VMware Server на его основе и сконцентрировав все усилия на продажах мощной корпоративной платформы VMware ESX Server в составе виртуальной инфраструктуры Virtual Infrastructure 3. У компании Microsoft был только единственный выход в этой ситуации: в апреле 2006 года она также объявила о бесплатности продукта Microsoft Virtual Server 2005. Также существовавшие ранее два издания Standard Edition и Enterprise Edition были объединены в одно – Microsoft Virtual Server Enterprise Edition.

С тех пор Microsoft существенно изменила стратегию в отношении виртуализации, и летом 2008 года был выпущен финальный релиз платформы виртуализации Microsoft Hyper-V, интегрированной в ОС Windows Server 2008. Теперь роль сервера виртуализации доступна всем пользователям новой серверной операционной системы Microsoft.

  • Microsoft Virtual Server. Серверная платформа виртуализации Microsoft Virtual Server может использоваться на сервере под управлением операционной системы Windows Server 2003 и предназначена для одновременного запуска нескольких виртуальных машин на одном физическом хосте. Платформа бесплатна и предоставляет только базовые функции.
  • Microsoft Virtual PC. Продукт Virtual PC был куплен корпорацией Microsoft вместе с компанией Connectix и впервые под маркой Microsoft был выпущен как Microsoft Virtual PC 2004. Приобретая Virtual PC и компанию Connectix, компания Microsoft строила далеко идущие планы по обеспечению пользователей инструментом для облегчения миграции на следующую версию операционной системы Windows. Теперь Virtual PC 2007 бесплатен и доступен для поддержки настольных ОС в виртуальных машинах.
  • Microsoft Hyper-V. Продукт Microsoft позиционируется как основной конкурент VMware ESX Server в области корпоративных платформ виртуализации. На данный момент Hyper-V позволяет консолидировать несколько ОС на одном физическом сервере в виртуальных машинах, но значительно уступает по своим возможностям для оптимизации ИТ-инфраструктуры аналогичным решениям от VMware и Citrix. При построении виртуальной среды Hyper-V опирается на такие технологии, как Microsoft Clustering и Network Load Balancing и другие уже проверенные технологии Microsoft.
  • Microsoft System Center Virtual Machine Manager (SC VMM). Этот продукт представляет собой ПО для централизованного управления инфраструктурой виртуальных серверов на платформах Hyper-V и Virtual Server. Ключевое достоинство Virtual Machine Manager – тесная интеграция с другими решениями Microsoft для управления инфраструктурой Windows-серверов семейства System Center. SCVMM позволяет создать гибкую виртуальную инфраструктуру на основе платформы Virtual Server 2005 R2 и упростить развертывание виртуальных систем из центральной библиотеки шаблонов.

www.vmworld.ru

Сравнение систем виртуализации

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

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

VMware vSphere- флагманский продукт компании VMware безусловного лидера по доли рынка виртуализации уже много лет подряд. Имеет широкий функционал и специально создана для дата центров предоставляющих облачные решения и компаний строящих частные облака различных масштабов. Имеет продуманный интерфейс и большое количество технической документации. Если у вас мало опыта в работе с виртуализацией эта система будет хорошим выбором для вас. Лицензируется по количеству физических процессоров в облаке независимо от количества ядер. В виду обширного функционала и множества модулей данная система достаточно требовательна к ресурсам необходимым для ее работы.

WMware Esxi- является бесплатным аналогом VMware vSphere. Так как данный гипервизор бесплатен он обладает более скромным функционалом, однако вполне достаточным для реализации большинства типовых задач виртуализации и управления частным облаком. Так же достаточно прост в использовании

Hyper-V- продукт компании Microsoft разработанный как дополнение к OS Windows server, начиная с версии 2008 года. Так же существует в виде отдельного продукта, однако использующий для работы OS Windows server. Данный гипервизор достаточно прост в настройке и эксплуатации, и разумеется, поддерживает все версии OS Windows для гостевых машин, однако производитель не гарантирует работу многих OS Linux. Обращаем внимание, что сам гипервизор распространяется по бесплатной лицензии, но для работы требует платной OS Windows.

OpenVZ- полностью бесплатная система виртуализации реализованная на ядре Linux. Как большинство Linux систем имеет хорошие показатели продуктивности и потребляемым ресурсам и отлично работает с любыми дистрибутивами Linux в качестве ОС гостевых машин. Однако не поддерживает OS Windows, за счет чего данная система виртуализации не может считаться универсальной.

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

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

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

Система виртуализации

Поддерживаемые ОС

Преимущества

Недостатки

Лицензия

VMware vSphere

Win/Lin

Легкая в использовании. Широкий функционал

Потребление ресурсов.

Платная. По количеству процессоров

WMware Esxi

Win/Lin

Легкая в использовании

Не самый широкий функционал.

Бесплатная

OpenVZ

Linux

Эффективное потребление ресурсов

Поддерживается только Linux

Бесплатная

KVM

Win/Lin

Эффективное потребление ресурсов. Поддерживает все ОС

Требует знаний Unix систем для настройки и управления

Бесплатная

Hyper-V

Windows

Легкая в использовании

Поддерживается только Windows. Потребление ресурсов

Бесплатная. Работает на платной ОС

Xen

Win/Lin

Высокая эффективность. Открытый исходный код.

Требует знаний Unix систем для настройки и управления

Бесплатная

LXC

Linux

Высокая эффективность

Не поддерживает Windows

Бесплатная

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

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

cosmonova.net

Hyper-V 3.0 против… Или суицидальный холивор / Блог компании Microsoft / Хабрахабр

Всем доброго времени суток!

Сегодня тема для разговора будет уж (как я лично считаю) очень актуальной, если даже не сказать болезненной… Да-да, я-таки решил провести функционально-экономическое сравнение 2-х ведущих платформ гипервизоров — Hyper-V 3.0 и VMware ESXi 5.0/5.1 между собой… Но потом я решил для полноты картины к сравнению добавить еще XenServer 6 от Citrix… Я уже в предчувствии камнепада в свой огород, но все же будем держать оборону до конца — просьба занять соответствующую позицию, сторону, лагерь — кому как удобно — и под кат для начала боя…

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

1) Масштабируемость и производительность 2) Безопасность и сеть 3) Гибкость инфраструктуры 4) Отказоустойчивость и непрерывность бизнес-процессов

Категории заданы — приступим!

Масштабируемость и производительность

Для начала я предлагаю взглянуть на сравнительную таблицу масштабируемости подопытных:

Как видно из таблицы, лидер здесь явный и однозначный — это Hyper-V 3.0. Причем здесь следует упомянуть о том, что производительность и масштабируемость гипервизора от MS никак не зависит от его платности. У VMware же ситуация обратная — в зависимости от того, сколько вечно зеленых цифровых вы заплатите — столько фишек вы и получите. Так что для сравнения VMware у нас аж 2 столбца. XenServer явно ни к селу, ни к городу — он как-то застрял по середине… Однако, если вспомнить многочисленные заявления Citrix о том, что «мы не компания которая делает решения по виртуализаци, а компания которая делает решения по оптимизации трафика», то XenServer — это инструмент для достижения этой задачи. Однако, тот факт, что Hyper-V и Citrix Xen — дальние родственники — и в результате такая разница в масштабиоуемости — удручает. Про VMware сильно раздражал колебательный фактор их политики лицензирования ОЗУ — т.н. vRAM — ЧТО ФАКТИЧЕСКИ МОЖНО НАЗВАТЬ ВЫМОГАТЕЛЬСТВОМ. Мало того, что необходимо было лицензировать объем ОЗУ, который потребляют виртуалки, так помимо этого в случае необходимости апгрейда по этому самому параметру vRAM образовывалась дельта (т.к. такого параметра в ESX/ESXi 4.x просто-навсего не было) — а значит люди попадали на деньги. Правда, с выходом 5.1 VMware одумалась и отказалась от такого бредового формата — однако, такие жесткие ценооброзавательные конвульсии ни о чем хорошем свидетельствовать не могут… С точки зрения технологической — мною лично реально ожидалась ситуация «ноздря-в-ноздрю» — но нет, такого не случилось, и интерес немного по угас… Я думаю первый блок сравнения особо больше в комментариях не нуждается — он достаточно «прозрачный».

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

Если посмотреть на данную таблицу, то здесь можно отметить следующие моменты:

1) Нативная поддержка 4Кб-секторов в виртуальных дисках — достаточно критичная вещь для ресурсоемких приложений. Высокопроизводительный СУБД как правило размещаются на дисках с большим размером страйпа. Поддержка данного механизма официально присутствует только в Hyper-V — у конкурирующих вендоров мне не удалось найти в официальной документации информации о поддержке данного механизма.

2) Максимальный размер LUN, подключаемого напрямую к ВМ — здесь ситуация следующая. У Citrix и VMware это параметр, который зависит именно от самого гипервизора напрямую, а у Hyper-V — скорее от того, какая ОС является гостевой. В случае использования Windows Server 2012 в качестве гостевой ОС есть возможность пробросить LUN размером свыше 256 Тбайт, у других гипервизоров данный параметр заканчивается на 64 Тбайт у VMware и не поднимается выше отметки в 15 Тб у Citrix соответственно.

С точки зрения функционала очень слабо смотриться XenServer — поддержка виртуализации Fiber Channel уже должно стать нормой — хотя бы на уровне платформы, однако ситуация в данном случае не является положительным примером. То, что у VMware политика «платности» фич уже все давно привыкли, так что на уровне самой платформы ESXi умеет это делать — вопрос только в том готовы ли вы за это столько платить? Редакция vSphere Enterprise Plus крайне не дешева, да еще и поддержку нужно покупать в обязательном порядке.

Наличие поддержки аппаратной разгрузки передачи данных в сетях SAN тоже является очень неплохим бонусом. Если раньше это было исключительной фичей VMware — vStorage API for Array Integration (VAAI), то Hyper-V 3.0 имеет в своем арсенале схожую технологию — Offload Data Transfer (ODX). Большинство вендоров СХД уже либо выпустили прошивки для своих систем с поддержкой данной технологии либо готовы сделать этов ближайшее время. Очень грустно за Citrix в данном конкретном случае — у XenServer никаких технологий оптимизации работы с SAN-системами нет.

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

С точки зрения фич картина в данной ситуации более-менее ровная, однако есть моменты на которые стоит обратить внимание:

1) Data Center Bridging (DCB) — под данной загадочной аббревиатурой скрывается ни что иное, как поддержка конвергентных сетевых адаптеров — Converged Network Adapter (CNA). Иными словами, конвергентный сетевой адаптер — это такой адаптер, который одновременно имеет аппаратные поддержку и ускорение для работы как в обычных сетях LAN Ethernet, так и в сетях SAN — т.е. идея состоит в том что, среда передачи данных, тип носителя — становятся унифицированными (это может быть оптика или витая пара), а поверх физического канала используется различные протоколы — SMB, FCoE, iSCSI, NFS, HTTP и прочие — т.е. с точки зрения управления у нас есть возможность динамически переназначать такие адаптеры перераспределяя их в зависимости от необходимости и типа нагрузки. Если взглянуть на таблицу, то Citrix не то чтобы не имеет поддержки DCB — есть некоторый список адаптеров CNA, которые поддерживаются — но в официальной документации Citrix XenServer 6.0 нет ни слова о поддержке DCB.

2) Качество обслуживания, поддержка QoS — по сути механизмы оптимизации трафика и гарантии качества канала передачи данных. Здесь все в принципе у всех в норме, за исключением бесплатного ESXi.

3) Динамическая память — вот тут история получается крайне интересная. По заявлениям Microsoft механизмы оптимизации памяти с помощью Dynamic Memory были существенно переработаны и позволили получить оптимизацию в работе с памятью — и тем самым увеличить плотность размещения виртуальных машин. К этому добавили файл интеллектуальной подкачки, который настраивается на каждую отдельную ВМ. Честно скажу, мне трудно судить насколько это эффективный механизм, однако при сравнения плотности размещения одинаковых ВМ на Hyper-V 2.0 и Hyper-V 3.0 разница была почти в 2 раза в пользу второго (Машинки были с виртуальным Windows Server 2008 R2). И вот тут возникает вопрос — у VMware целый арсенал фич по оптимизации работы с памятью, включая дедупликацию страниц памяти, что работает гораздо эффективнее. Но давайте более детально взглянем на эту ситуацию. У VMware есть 4 технологии оптимизации работы с памятью — Memory Balooning, Transparent Page Sharing, Compression и Swapping. Однако, все 4 технологии начинаю свою работу только в условиях повышенной нагрузки на ресурсы хост-системы, т.е. по своей манере действия они являются реактивными, нежели проактивными или оптимизирующими. Если еще учесть тот факт, что большинство современных серверных платформ поддерживают большие таблицы Large Page Tables, которые по умолчанию имеют размер в 2 Мбайта — это увеличивает производительность, то картина меняется — ибо ESXi не умеет дедуплицировать такие большие блоки данных — он начинает их разбивать на блоки меньшего размера, 4 Кбайта, а вот уже их он и дедуплицирует — но все эти операции стоят ресурсов и времени — так картина не такая уж однозначная с точки зрения полезности данных технологий.

Безопасность и сеть

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

Здесь следует выделить следующие моменты:

1) Single Root I/O Virtualization (SRIOV) — фактически это механизм пробрасывания физического адаптера внутрь виртуальной машины, однако, на мой взгляд немного некорректно сравнивать технологии VMware и Microsoft в этой области. DirectPath I/O, технология которую применяет VMware, действительно полностью пробрасывает слот PCI Express, а точнее устройство которое в нем находится — однако список устройств, которые совместимы с данной фичей крайне мал, да и вы фактически привязывайте вашу ВМ к хосту в довесок лишая ее практически всех бонусов в области оптимизации работы с памятью, высокой доступности, мониторинга сетевого трафика и прочих вкусностей. Исключением, разве что, в данной ситуации могут стать платформы на базе Cisco UCS — да и то — только в отдельных конфигурациях. Точно такая же ситуация у Citirix — не смотря на поддержку SRIOV, ВМ в которой активирована данная фича лишается всех возможностей в области премещения ВМ, возможности настроить списки доступа к ВМ (ведь карточка-то такая в обход свича виртуального пойдет) — так что все это крайне лимитировано. У Microsoft же скорее происходит виртуализация и профилирования такого адаптера — т.к. ВМ может быть и высокодоступной, и мигрировать с хоста на хост может, однако для этого необходимо наличие карт с поддержкой SRIOV в каждом хосте — тогда параметры адаптера SRIOV передут вместе с ВМ на новый хост.

2) Шифрование дисков и IPSec Offload — здесь картина явно однозначная, никто кроме как Hyper-V не работает с такими механизмами. Естественно, что для IPSec Offload понадобиться карточка с аппаратной поддержкой данной технологии, однако если вы запускаете ВМ с интенсивным взаимодействием с механизмами IPSec — то выигрыш вы получите от применения данной технологии. Что же касается шифрования дисков, то реализуется этот механизм с помощью BitLocker, однако возможности его применения в нашей стране сильно ограничены нормативными актами. В общем-то механизм интересный — зашифровать пространство, где располагаются ВМ с целью предотвращения утечки данных, но, к сожаления, широкого распространения данный механизм не получит до тех пор, пока не будут решены юридические и нормативные вопросы.

3) Virtual Machine Queue (VMQ) — Технология оптимизации работы с трафиком ВМ на уровне хоста и сетевых интерфейсов. Здесь, по чес_ноку, тяжело судить насколько DMVq лучше VMq — ибо на практике я не имел возможности сравнить эти технологии. Однако, заявлено что DMVq есть только у Hyper-V. Ну что же — есть так есть, наверное это хорошо, но в данном случае я оставлю без каких-либо комментариев данный пункт — ибо для меня лично нет сильной разницы, кроме букв — буду рад если кто-то прольет свет на разницу и эффект от динамичности пресловутого VMq.

Продолжим дальше — теперь я предлагаю взглянуть на возможности виртуальных коммутаторов, которые есть в арсенале у наших гипервизоров:

1) Расширяемые коммутаторы — здесь стоит сразу разобраться с тем, что понимается под «расширяемостью». В моем понимание — это значит возможность добавить, расширить функционал существующего решения, при этом сохранить его целостность. В данном случае Hyper-V и XenServer именно этой идеологии и соответствуют. А вот у VMware я бы их коммутатор назвал бы не «расширяемым», а «заменяемым» — поскольку как только, допусти, ставите Cisco 1000V Nexus, то он заменяет собой vDS, нежели расширяет его возможности.

2) Защита от спуффинга и неавторизованных пакетов — здесь ситуация простая. Бесплатно воспользоваться защитой от нежелательных пакетов и атак можно только в Hyper-V. У Citrix, к сожалению, такого функционала нет, а у VMware вам придется докупать решение vShield App либо от сторонних партнеров.

Из остальных особенностей, наверное, стоит отметить то, что контроль доступа к виртуальным сетевым порта есть у всех, кроме бесплатного ESXi — т.е. у VMware это можно применить опять только за дополнительную плату. Ну и на последок хочется упомянуть о режиме прямого транка к ВМ, который есть только у Hyper-V.

Гибкость инфраструктуры

Теперь давайте рассмотрим в сравнении механизмы миграции ВМ, а также наличие поддержки VXLAN.

1) Живая миграция — ее поддерживают все, кроме бесплатного ESXi. Количество одновременных миграций — параметр очень тонкий. У VMware он ограничен технически на уровне гипервизора, а Hyper-V — на уровне здравой логики и физических возможностей инфраструктуры. У Citrix нет четких официальных данных о количестве поддерживаемых одновременных миграций. Хоть у Hyper-V данный параметр и смотрится более привлекательным, но такой подход очень настораживающий — конечно, очень круто, что можно хоть 1000 ВМ одновременно мигрировать — но это же просто повесит вашу сеть. По незнанию такое может произойти, а вот если с головой дружба — то вы сами выставите нужный параметр — спасает то, что по умолчанию количество одновременных миграций равно 2-м — так что будьте внимательны. Что касается живой миграции виртуального стораджа ВМ — то этим могут похвастать только Hyper-V и vSphere Enterprise Plus. А вот смигрировать с хоста на хост (или куда еще) без общего хранилища под силу только Hyper-V — хотя функция действительно важная и полезная, жалко что только у одного гипервизора реализован данный механизм.

2) VXLAN — механизм абстракции и изоляции виртуальной сети с возможностью ее динамического расширения. Данный механизм очень необходим для непрерывных облачных сред или очень больших дата-центров с внедренной виртуализацией. На сегодняшний день только Hyper-V по умолчания поддерживает данный механизм — у VMware есть возможность реализовать данный механизм, но только за дополнительную плату, т.к. вам придется покупать стороннее расширение от Cisco.

Отказоустойчивость и непрерывность бизнес-процессов

Теперь давайте рассмотрим механизмы отказо- и катастрофоустойчивости, которые присутствуют в платформах виртуализации.

1) Встроенный бэкап — данный механизм бесплатно доступен только в Hyper-V, в XenServer — начиная с редакции Advanced, а если мы говорим про VMware — то начиная с Essentials Plus. На мой взгляд, немного странно не встроить и не сделать бесплатным данный механизм — представьте ситуации, что вы апробируйте виртуализацию, вы развернули виртуалки — и хрясь, все — конец!!! Не очень здорово, я думаю, это будет выглядеть — если уж хотите платформу протолкнуть на рынок — то сделайте это с заботой о клиенте (смайл).

2) Репликация ВМ — решение для катастрофоустойчивого сценария, когда вам необходимо иметь возможность поднять актуальные экземпляры ВМ в другом дата-центре. У VMware для реализации этого решения есть отдельный продукт — Site Recovery Manager (SRM) — а он стоит денег. У Citrix — та же ситуация — Platinum Edition — и вы получите данный функционал. У Hyper-V 3.0 — бесплатно.

3) Мониторинг гостевых приложений — механизм, который следит за состоянием приложения или службы внутри ВМ и на основе этих данных может предпринять какие-либо действия с ВМ, например, перезапустить ее в случае необходимости. Встроенный функционал для снятия параметров и принятия действий есть у Hyper-V, у VMware есть API — но нет самого решения для работы с данной функцией, а у Citrix нету ничего в это плане.

4) Правила распределения ВМ — механизм, который позволяет распределять ВМ на кластере так, чтобы они либо никогда не встречались на одном хосте, либо наоборот — никогда не разъезжались между собой. Citrix не умеет делать такие финты ушами, VMware это умеет во всех платных редакциях, где доступно HA, а Hyper-V как всегда — 0 рублей.

В остальном платформы более-менее одинаковы с точки зрения функциоанла, за исключением ESXi, конечно же.

Прочие прочести

За время проведения IT Camps по России и Москве я пообщался с очень разной аудиторией — а поэтому хочется сразу выделить еще несколько моментов.

1) «А когда Hyper-V научится пробрасывать USB-ключи с хоста внутрь ВМ?» — Скорее всего, никогда. На это есть и ограничения с точки зрения архитектуры гипервизора, и соображения с точки зрения безопасности и доступности сервисов.

2) «У VMware есть технология Fault Tolerance — когда что-то подобное будет в Hyper-V?» — Ответ будет похож на предыдущий, но… Я лично эту технологию считаю кастрированной — судите сами — вы ее включили. Но что вы будете делать с виртуалкой у которой может быть всего 1 процессор и не более 4 Гб ОЗУ? Контроллер домена туда засунете!? Свят-свят-свят — изыйди! Контроллеров домена всегда как минимум должно быть 2, а от сбоя на уровне гостевой ОС или гостевого приложения это вас не спасет — если BSOD наступит — то на обоих экземплярах ВМ. Ограничения на количество процессоров и ОЗУ обещают увеличить уже аж 3 релиза к ряду, если не больше — а воз и ныне там.

3) «У VMware среда лучше приспособлена под Linux-окружение — как дела у Hyper-V?» — Да, действительно — VMware гораздо лучше поддерживает Linux-гостей — это факт. Но и Hyper-V не стоит на месте — увеличивается и количество поддерживаемых дистрибутивов, и возможности служб интеграции.

Заключение

И так — в общем, подведем итоги. С точки зрения функционала — все гипервизоры примерно одинаковы, но я бы выделил VMware и Hyper-V как 2-х лидеров. Если сравнивать их между собой — то исключительно вопрос денег и функционала, а также вашей ИТ-инфраструктуры — чего у вас больше — Linux или Windows? У VMware все вкусные фичи стоят денег — у Microsoft — нет. Если у вас операционная среда на MS — то VMware станет для вас дополнительным затратами, причем серьезными — лицензии+поддержка+обслуживание… Если у вас больше Linux — то тут наверное VMware, если среда смешанная — то вопрос открытый.

P.S> Я где-то слышал что на последнем квадрате Гартнера Hyper-V в лидерах — и обогнал vSphere, однако такой картинки я не нашел, так что на этот раз без Гартнера — если у кого есть инфа на эут тему — поделитесь, плз. Я нашел квадрат Гартнера от июня месяца — но это не то…

P.S.S> Что же, я готов к адскому расстрелу))) Что и как использовать — it's up to you, как говориться, но что же, — я жду патронов!

С уважением, Человек-огонь, Георгий А. Гаджиев Эксперт по информационной инфраструктуре Microsoft Corporation

habrahabr.ru

Как я сделал зеркалирование виртуальных машин для Free ESXi / Хабрахабр

В своей домашней лаборатории я использую бесплатную виртуализацию от VMware – это дешево и надежно. Сначала был один сервер, потом в него начал добавлять локальные датасторы, потом собрал второй сервер… Стандартной проблемой при этом был переезд виртуальной машины. Делая эти операции вручную, я наткнулся на один способ, который позволял переключить работающую виртуальную машину на копии флэтов совершенно в другом месте. Способ крайне прост: достаточно создать снапшот виртуальной машины, склонировать флэты в новое место, а затем в дельте перебить ссылку на родительский диск. Гипервизор не держит файлы метаданных диска открытыми, поэтому при удалении снапшота происходит сливание с новым диском, а старый можно спокойно удалять. Этот способ прекрасно работает без всякого VDDK, который недоступен на бесплатных гипервизорах и которым пользуется, например, Veeam в похожей ситуации.

Я без труда автоматизировал эту процедуру на python, применив еще несколько трюков, которые, при наличии запросов, смогу раскрыть в следующих статьях. Немного позже нашелся хороший человек из моих бывших коллег по цеху, который согласился написать гуй, последний, правда, реализован на Unity, но для получившегося бесплатного солюшена, названного нами Extrasphere, это было совсем не плохо. Чем не игрушка для админа?

Сделав для своей домашней лаборатории миграцию виртуальных машин, я задумался о защите от сбоев. Минимальным требованием было резервирование работающей виртуалки, максимально недостижимым же отсутствие отставания резервной копии от оригинала. Не то чтобы у меня были такие данные, где потеря 15 секунд критична, по правде сказать, для меня не критично потерять и пару дней, но вот к такому идеалу хотелось прийти с заделом на будущее. Я не стану приводить анализ и сравнение доступных решений – это было давно, заметок с тех пор не сохранилось, помню только о немыслимой тяге к велосипедизму.

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

Я подумал, что неплохо бы самому запилить CBT, но как? Слышал про Zerto и SRM с их vSCSIFilter, но скачав open-source пакет для ESXi не нашел там ничего похожего — ну разве что символьное устройство написать можно. Решил взглянуть на устройство hbr_filter, там, к моему удивлению, все оказалось не слишком сложно. Три недели экспериментов – и вот я уже могу навесить свой фильтр-драйвер на диск виртуалки и трэкать изменения.

А что если не просто трэкать изменения, а реплицировать их? Тут самая большая опасность в том, чтобы начать писать тонну кода обеспечивающего канал передачи: тут вытащи изменения, упакуй и отправь в сеть, там прими, распакуй и запиши, а еще и целостность на каждом шагу нужно обеспечить и обработку ошибок. Без пары агентов кажется не обойтись. Достаточно взглянуть на архитектуру Zerto, чтобы понять, что написать и стабилизировать такое решение в одиночку нереально:

Рис. 1. Архитектура Zerto Virtual Replication из рекламного ролика.

Тут я вспомнил, что ESXi и сам умеет писать по сети через iSCSI и NFS к примеру. Все что нужно – это примонтировать таргетный датастор локально. А если еще и включить реплику, то можно писать в неё прямо из фильтр-драйвера! Я начал эксперименты: поначалу не знал, что делать с включенной репликой и просто грузил её с Ubuntu Live CD, через пару-тройку недель начала получаться работоспособная копия, а затем и научился передавать изменения на лету. Причем исходная машина не получает подтверждения записи, пока не пройдут записи в оба получателя. Так у меня получилась репликация с нулевым отставанием.

Технология получилась безагентной, кода минимум, создание реплики тут же быстро накидал на python. За такую непохожесть на классическую репликацию и простоту я решил называть её зеркалированием.

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

Рис. 2. Потребление CPU на исходной машине с нагрузкой.

Рис. 3. Потребление CPU на зеркале в тот же период.

Рис. 4. Потребление памяти на исходной машине с нагрузкой.

Рис. 5. Потребление памяти на зеркале в тот же период.

Рис. 6. Дисковая производительность исходной машины под нагрузкой.

Рис. 7. Дисковая производительность зеркала за тот же период.

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

Локальный таргет – это хорошо, а что делать, если необходимо зеркалировать в другой офис/город? Даже если канал связи будет достаточно широким, то продолжительность ответа серьезно просадит производительность исходной машины, мы же помним, что исходная машина не получает подтверждение записи, пока она не завершится в оба получателя. Решение здесь крайне простое: нужно расширить интервал неопределенности записи с нуля до некоторого разумного значения. Скажем, допустимое отставание в 3-5 секунд обеспечат как хорошую сохранность данных, так и приличную производительность. Над этим решением я как раз работаю в данный момент. На очереди работа без ssh и консистентность уровня приложений, где тоже не обойдется без трюков, которыми я с радостью поделюсь.

habrahabr.ru


Смотрите также