Сегодня с уверенностью можно сказать, что термин «виртуализация» прочно вошел в повседневное использование как в частных, так и различных государственных организациях. Если пару лет назад руководители IT-служб компаний боялись виртуализировать наиболее критические приложения и сервисы, то теперь, наоборот, виртуализации подвергается все подряд. За бортом оставались только формирующие сетевую инфраструктуру устройства и рабочие станции пользователей, но так было лишь до недавнего времени. Теперь же, с введением в обиход термина VDI (Virtual Desktop Infrastructure) и таких коммерчески успешных продуктов как VMware View (www.vmware.com/products/view/overview.html) и Citrix XenDesktop (www.citrix.com/English/ps2/products/product.asp?contentID=163057&ntref=mainxdvanityurl), передающих по специальным протоколам рабочую среду со всеми необходимыми приложениями, преимущества виртуализации становятся доступны и конечному пользователю. Однако, и такой подход не является единственным. В последнее время все активнее набирает обороты технология десктопной виртуализации, когда в качестве базовой операционной системы используется какой-либо гипервизор, а рабочие операционные системы пользователя виртуализируются и работают при этом одновременно. Эффект получается самый потрясающий, ведь в мире десятки тысяч компьютеров, вычислительная мощь которых не используется постоянно на все 100%, и десятки тысяч пользователей которым может понадобиться их помощь в случае решения ресурсоемких задач. Первой продукт для решения подобных задач представила компания Citrix. Citrix XenClient (www.citrix.com/English/ps2/products/product.asp?contentID=2300325&ntref=prod_cat) наделал немало шума и стал революцией в области виртуализации, а после того, как Citrix выпустила продукт XenReceiver\Synchronizer, который позволяет консолидировать управление виртуальными машинами (ВМ) пользователей в корпоративной сети, данные системы, наряду с VDI-системами, нашли свое место под Солнцем.
Мобильные пользователи могут, например, использовать две операционные системы, одна из которых будет «домашней», а другая — «рабочей». Причем, администратор сети может заблокировать доступ к управлению «рабочей» системой по временному графику или если ноутбук пользователя оказывается вне рабочей сети. Вариантов множество и возможности продукта самые широкие. Именно о практическом применении подобных гипервизоров (пока лишь в качестве персонального средства десктопной виртуализации) я и хочу рассказать сегодня.
Возможности XenClient настолько впечатляют, что я сразу же зажегся идеей использовать их на своем рабочем месте. Дело в том, что по работе мне необходимо использовать среду Windows, так как именно под нее разработано и используется специализированное программное обеспечение, однако из соображений безопасности и простоты работы мои предпочтения распространяются на Ubuntu Linux. Увы, здесь меня ждало разочарование. Дело в том, что полноценная вторая версия XenClient не распространяется на персональных пользователей. Минимальная лицензия подразумевает подключение до пяти персональных компьютеров и стоит около 1000 долларов. Бесплатная же версия XenClient Expess RC не предполагает инсталляцию в качестве гостевых операционных систем каких-либо других, кроме различных 32-битных версий Windows и одной 64 битной Windows 7. Но и на этом «подводные камни» не заканчиваются. Данный гипервизор требует, что бы процессор и BIOS вашего компьютера поддерживали включение таких технологий, как Intel VT-d и VT-x, а также был привязан к определенному типу оборудования (www.citrix.com/English/ps2/products/subfeature.asp?contentID=2300408). Помимо этого, бесплатная версия XenClient Express RC больше рассчитана для применения на ноутбуках. Мне не оставалось ничего другого, кроме как отложить воплощение задуманного до лучших времен, если бы на одном из специализированных блогов не появилась заметка о сравнении десктопных гипервизоров. Вторым в списке рекомендуемых решений оказался абсолютно новый продукт компании VirtualComputer.
В мире IT-технологий VirtualComputer не является известным брендом и отметилась компания лишь разработкой программы удаленного управления на основе ей же созданного протокола NX. NxTOP (в настоящий момент существует уже четвертая версия этого продукта) и будет героем материала. Он включает в себя среду управления виртуальными десктопами NxTOP Center, которая разворачивается на базе 64-битной Windows Server 2008, и NxTOP Engine, являющегося гипервизором для виртуализации настольных рабочих станций. Как несложно догадаться из названия, первый продукт является аналогом Citrix XenReceiver\Synchronizer, и выполняет практически те же функции (особенно понравились возможность монтажа ISO-образов в виртуальную машину, создание шаблонов настольных операционных систем для различных нужд, что позволяет развернуть практически готовую сеть за считанные часы, стандартные политики безопасности и др.). Однако, в отличие от продуктов Citrix, VirtualComputer позволяет бесплатно использовать свою среду для виртуализации как минимум пяти персональных компьютеров (что, по идее, должно понравиться малому бизнесу). Если же никто, кроме вас, не планирует использовать данную среду, то в этом случае NxTOP Engine прекрасно можно использовать в качестве персонального гипервизора без центра управления.
Теперь перейдем к практическим шагам, а именно к процессу инсталляции NxTOP Engine и использованию его в повседневной работе. Первым делом следует убедиться в том, что имеющееся у нас оборудование совместимо с данным приложением. По ссылке http://virtualcomputer.com/hcl вы обнаружите объемный список поддерживаемых аппаратных средств. В отличие от XenClient Express, гипервизор от VirtualComputer более отзывчив в вопросе поддержки техники, но, чтобы убедиться в этом, пройдя по ссылкеwww.virtualcomputer.com/nxtop-ready_virtual-desktop-compatibility-wizard, можно скачать утилиту под Windows и, запустив ее, проверить свой персональный компьютер на готовность. Мой Dell Vostro 260s с процессором Intel Core i5 2500, 8 Gb оперативной памяти и жестким диском объемом в 500 Gb при проверке показал идеальную совместимость. После этого скачайте файл nxtop-engine-4.0.6.iso, объем которого равен 800 Mb (www.virtualcomputer.com/support/downloads). Процесс инсталляции прост и не займет много времени, тем более, что гипервизор представляет собой обыкновенный урезанный до минимума Linux с Xen-сервером внутри. В процессе инсталляции вы также можете установить его как вторую операционную систему (Dual boot).
Вам понадобится ввести всего лишь название персонального компьютера, часовой пояс и настройки сети. По окончании процесса инсталляции рекомендуется перезагрузить компьютер, и после загрузки гипервизора вы увидите рабочий стол VirtualComputer (фото 1) всего лишь с одной предустановленной виртуальной машиной NxTOP Connect. Эта виртуальная машина базируется на дистрибутиве Minimal-Linux с браузером Chrome, Skype и RDP-менеджером, что бы вы могли сразу же приступить к работе.
Переход на портал компании VirtualComputer (www.virtualcomputer.com/support/license-types) позволит вам получить свободную персональную лицензию сроком на 1 год. Здесь же представлена матрица различных программ лицензирования. Например, представителям малого бизнеса может понравиться бесплатная Express Free Server для пяти компьютеров с центром управления, но в данный момент нам нужен Free Client Key. После регистрации с указанием своего электронного адреса, вы получите на него серийный номер для активации и вводите его в пункте Set License key меню Control Panel. После перезагрузки надпись trial в правом нижнем углу рабочего стола сменится на free client.
Теперь можем приступить к созданию нужных нам виртуальных машин. После выбора Create Virtual Machine появляется пошаговый мастер (фото 2), информирующий нас о том, что необходимо указать для успешного создания виртуальных машин. Прежде всего, это название машины, тип операционной системы (к этому мы вернемся чуть ниже), количество ядер процессора (так называемый vCPU count), объем оперативной памяти, выделяемый под виртуальную машину, и размер жесткого диска. В следующем окне (фото 3) видно, что после заполнения необходимых данных, установщик поздравляет нас с успешным созданием виртуальной машины, хотя это лишь заготовка на пути к ее полноценной работе. Чтобы установить какую-либо операционную систему, вам понадобится вставить в привод диск с дистрибутивом и запустить созданную виртуальную машину. Попав в необходимую среду, достаточно будет нажать клавишу F12 и выбрать загрузку с CD-ROM, после чего последует стандартная процедура инсталляции операционной системы.
При создании различных виртуальных машин следует помнить следующее: сам гипервизор NxTOP потребляет примерно 512 Mb оперативной памяти. Значит, если у вас на компьютере установлено всего 4 Gb, то вы можете создать две нормальные виртуальные машины, где объем оперативной памяти одной машины будет составлять, например, 2 Gb, а другой — 1,5 Gb. В противном случае гипервизор просто не позволит вам запустить что-либо более ресурсоемкое, чем позволяет объем оперативной памяти вашего персонального компьютера. Этот же принцип относится и к количеству ядер процессора, и к объему жесткого диска.
Теперь вернемся к операционным системам. Хоть в нашем случае и заявлена поддержка практически любой 32- или 64-битной, вплоть до серверной, операционной системы, работающей на архитектурах Intel или AMD, реальнее всего то, что будет работать опять же традиционный Windows. Прежде всего это связано с тем, что гипервизор не умеет подставлять виртуальное оборудование, как, например, Vmware ESXi или Oracle VirtualBox, а занимается паравиртуализацией, то есть пробрасыванием реальной аппаратной начинки в виртуальную машину. Драйверы же для подобных задач пока есть только под Windows, да и то, пользователям представляется только базовый и минимально необходимый функционал. Так, например, графический чипсет моего ноутбука был представлен как Virtual Computer Display, то есть ни о каком 3D мечтать и не приходится. В качестве же эксперимента я пробовал несколько различных *nix операционных систем с графическими интерфейсами, как, например, CentOS 5.8\Gnome, Ubuntu, FreeBSD. Везде, где был задействован классический интерфейс VESA, все работало, но как только я пробовал последние версии Ubuntu, то система не смогла даже распознать видеокарту и инициализировать экран (фото 4). Кроме того, сетевая карта не всегда корректно работала. Но я более чем уверен, что это «детские болезни» нового продукта и со временем они найдут свое решение. Если же по какой-либо причине вам нужен будет дистрибутив Linux, то вы можете его найти на форуме поддержки (www.virtualcomputer.com/search/node/install%20linux).
Пару слов следует сказать об управлении гипервизором и некоторых его особенностях. Если в главном окне просто кликнуть курсором по кнопке настроек, то откроется Control Panel, где пользователь сможет настроить следующие параметры:
System summary. Здесь можно ознакомиться с характеристиками вашего персонального компьютера (память, процессор и т.д.);
Startup options. Выбор операционных систем, которые должны запускаться при старте гипервизора;
Activity Center. Настройка обновлений гипервизора;
Memory. Центр распределения памяти между виртуальными машинами. Если вы не уверены в своих знаниях, то можете доверить гипервизору управление в автоматическом режиме. Для этого не забудьте отметить пункт Smart Memory (фото 5);
Hot Keys. Настройки управления виртуальной машиной и гипервизором через комбинации клавиш. Рекомендую переделать на значения по умолчанию (фото 6);
Power. Регулировка потребления электропитания (например, для ноутбуков);
Date and Time. Настройки часовых поясов и даты. Можно синхронизировать через NTP;
Bug reporting. Уведомления производителя об ошибках гипервизора.
Что касается особенностей управления, то, во-первых, необходимо помнить, что для управления гипервизором не обязательно каждый раз возвращаться к главному окну. Драйверы паравиртуализации пробрасывают также полное меню управления в гостевую виртуальную машину с Windows (фото 6). Во-вторых, также важно помнить, что такие устройства, как CD-ROM, порты USB и COM1 по умолчанию пробрасываются в гостевую операционную систему в автоматическом режиме, то есть по усмотрению гипервизора. Во избежание этого можно привязывать устройства в свойствах виртуальной машины. Даже лучше делать это сразу. Только не забывайте потом «отвязывать» их, так как в другой виртуальной машине гипервизор просто не даст возможности управлять, например, CD-ROM, ни через команды, ни посредством кнопки извлечения диска. В-третьих, используя гипервизор на своей рабочей станции теперь совсем не обязательно выключать все виртуальные машины перед уходом. Гипервизор можно просто переводить в состояние suspend и «будить» в момент возвращения на работу. Расход электроэнергии не будет столь серьезным, зато вы получите ценное преимущество по скорости разворачивания операционной системы.
Кроме всего, в сегодняшний материал не вошло описание таких бонусов программного обеспечения, как VCI-network для связи между виртуальными машинами в гипервизоре, централизованное управление несколькими гипервизорам через NxTOP Center, импорт .vhd образов от других гипервизоров и т.д. Если вам интересен какой-либо дополнительный функционал, который не был затронут в статье, то к вашим услугам всегда набор документации на сайте (www.virtualcomputer.com/support/documentation).
***
Если сравнивать VirtualComputer, например, с продуктом от Citrix, то среди плюсов рассмотренного нами продукта следует отметить меньший расход памяти у гипервизора (512 Mb против почти 900 Mb у Citrix XenClient), дружелюбный и интуитивно понятный интерфейс, с которым можно освоиться за 15 минут даже не прибегая к помощи документации. Среди минусов — проблемы с настройками сетей и графической картой, тогда как XenClient уже давно умеет пробрасывать (вплоть до 3D функционала) графическую карту в одну из виртуальных машин. Но в общем этот продукт можно считать достаточно зрелым для специфического использования, который к тому же имеет неплохие перспективы для развития.
P.S. Пока статья готовилась к публикации, стало известно, что компания Citrix приобрела VirtualComputing и теперь продукт NxTop называется Citrix Enterprise Desctop.
Фархад Бадалов, системный администратор