- Подписка на печатную версию:
- Подписка на электронную версию:
- Подшивки старых номеров журнала (печатные версии)
LXF111:DrBrown3
Материал из Linuxformat.
Содержание |
Радости виртуализации
- VMware Простое развертывание сервера из образов для виртуальной машиы.
Поискав слово «виртуальный» в словаре, я нашел следующее определение, применительно к компьютерной области знаний: «Не существующее физически, но видимость существования которого создается ПО». Согласно этому определению, почти все, с чем мы работаем в компьютере, виртуально. В конце концов, даже сняв крышку системного блока, вы не сможете показать ни каталог /home, ни письмо от тетушки Мод, ни панель задач, ни процесс init, и вообще ничего, кроме, возможно, орешка, который уронили туда в прошлом году. А вы пробовали когда-нибудь согнать с экрана муху курсором мыши?
Слово «виртуальный» мы в наше время слышим все чаще. Это и виртуальные файловые системы, и виртуальные почтовые каталоги, и виртуальная память, и, восхитительный оксюморон, виртуальная реальность. А теперь можно виртуализовать и сам компьютер, т.е. имитировать компьютерное оборудование, используя программный слой, выполняемый на физической аппаратуре, и установить и запустить операционную систему на этой ВМ. На диаграмме внизу показана архитектура такой системы, хотя и не совсем точная, так как основные части ПО виртуализации на самом деле находится в ядре хост-ОС, а не над ним.
Виртуализация – горячая тема сегодняшнего дня. На виртуальных машинах можно запускать несколько ОС одновременно, бок о бок, на одном физическом компьютере. Они могут предоставить каждой ОС полностью изолированное окружение с ее собственными защищенными ресурсами. Вот несколько причин, по которым используются ВМ:
Образовательное учреждение, где я работаю, интенсивно использует виртуализацию при установке ПО для практических занятий. Виртуализация упрощает создание и распространение образов ПО по учебным центрам со всего мира и предоставляет слой абстракции от различной начинки компьютеров в лабораториях. Если запустить ВМ и включить полноэкранный режим до того, как студенты войдут в класс, то они и не поймут, что работают в виртуальной среде – по крайней мере, пока случайно не нажмут Ctrl+Alt и ВМ не потеряет фокус ввода.
Дадут поиграть
VMware Workstation, наверное, самая известная программа виртуализации; она разрабатывается с 1999 года, и сейчас компания VMware предлагает огромный набор соответствующего ПО (http://www.vmware.com). Некоторые продукты высокого класса довольно дороги, но погрузиться в мир виртуализации можно и бесплатно, скачав бесплатную программу VMware Server и воспользовавшись 30-дневным пробным периодом или запуская готовые образы в VMware Player. Далее мы рассмотрим процесс инсталляции VMware Workstation и создания ВМ, на которую установим Vista.
VMware Workstation можно загрузить в tar-архиве размером 209 МБ с сайта http://www.vmware.com. Мы скачали файл в ~/downloads и извлекли его содержимое в этот каталог:
$ cd ~/downloads $ tar xzvf VMware-workstation-6.0.4-93057.i386.tar.gz
Появится каталог vmware-distrib. Перейдем в него и запустим установочный скрипт:
$ cd vmware-distrib $ sudo ./vmware-install.pl
Установщик задаст несколько вопросов насчет того, что и куда копировать, но можно принять все параметры по умолчанию.
Настоящие модули ядра
Для VMware необходимы три модуля ядра: vmmon, vmblock и vmnet, и их версия должна соответствовать версии ядра. Дистрибутив поставляется с большим набором готовых модулей, и установщик сперва попробует найти среди них подходящие. Не найдя их, он предложит вам компиляцию. По моему опыту, именно здесь и выходит клин. Например, у вас может не быть компилятора GCC и других утилит разработки, хотя это-то исправить легко. Для некоторых версий, насколько я знаю, сама компиляция завершалась с ошибками. Однако в данном случае компиляция модулей ядра и оставшаяся часть установки VMware прошли без ошибок.
Установив VMware, надо создавать свою виртуальную машину. Мастер создания ВМ поможет это сделать. Вот список основных параметров, которые придется задать:
- Гостевая операционная система Здесь вы укажете, какую ОС собираетесь установить на ВМ. Этот выбор влияет на некоторые установки по умолчанию, например, объем оперативной памяти и дискового пространства, которые будут выделены для ВМ, а также используется как ее имя по умолчанию.
- Имя и Расположение Здесь указывается имя ВМ и каталог, в котором она будет находиться.
- Сетевое соединение Есть несколько вариантов настройки сетевого подключения. Сетевой мост (bridged networking) дает виртуальной машине собственный IP-адрес в вашей сети. Хотя ВМ использует Ethernet-соединение хост-компьютера, она появляется в локальной сети как отдельный узел со своими MAC- и IP-адресами. Механизм трансляции адресов NAT (NAT networking) скрывает ВМ от физической сети, но допускает сообщение в обратную сторону точно так же, как шлюз NAT позволяет компьютерам во внутренней корпоративной сети взаимодействовать с Интернетом. Весь трафик в физическую сеть выглядит как исходящий с IP-адреса хост-компьютера. В случае последней конфигурации, «только хост» (host-only networking), ВМ подключается к виртуальному коммутатору Ethernet, позволяющему всем ВМ связываться с хост-компьютером и друг с другом. Физическое соединение между виртуальными машинами и сетью при этом отсутствует.
- Размер диска VMware предоставляет дисковое пространство хосткомпьютера для гостевой операционной системы. Здесь вы задаете размер этого виртуального диска. Для оптимальной производительности все это пространство можно выделить заранее или же дать возможность файлам хост-компьютера разрастаться до заданного максимума по требованию гостевой системы. Также можно разбить файловую систему на несколько файлов по 2 ГБ.
По окончании этого процесса у вас будет два файла: небольшой файл с расширением VMX, содержащий конфигурацию ВМ, и один или несколько гораздо больших файлов VMDK, обеспечивающих дисковое пространство для ВМ. На экранном снимке выше показаны виртуальные ресурсы, выделенные для этой ВМ. Интересны варианты предоставления виртуального диска – можно использовать либо физический CD-привод хост-компьютера, либо ISO-образ, находящийся на нем. Например, если вы загрузили ISO-образ Fedora, можно подключить его напрямую, загрузить с него ВМ и продолжить установку. К тому же образ будет работать быстрее физического диска.
После настройки ВМ необходимо установить на нее операционную систему. Если она инсталлируется с CD или DVD, вставьте его в привод и включите ВМ. Она загрузится с CD, и начнется процедура установки, обычная для выбранной вами ОС.
Отпрыгнуть назад
Одна из по-настоящему крутых возможностей VMware – возможность создавать снимки состояния ВМ и восстанавливать его позже. Так, если вы установили в Windows-драйвер, который не работает, или думаете, что компьютер подхватил вирус, легко вернуться назад. Каждый снимок включает копию образа всей файловой системы, поэтому большое количество снимков отнимает много места на хост-компьютере.
Ну, мы виртуально закончили. Собственно говоря, мы и вправду закончили. В следующем месяце мы подробно рассмотрим другую программу для виртуализации – KVM. Увидимся! LXF
Виртуализация позволяет запускать несколько гостевых ОС поверх основной.
Виртуальный дивиденд
За что мы любим виртуализацию? Давайте посчитаем преимущества…
- Проверка обновлений ПО в изолированной среде перед их установкой в реальной системе.
- Тестирование ПО на различных ОС и конфигурациях, и все на одном компьютере.
- Изучение, проверка и демонстрация многозвенных (клиент-серверных) приложений на одном компьютере.
- Снижение количества необходимых физических серверов и повышение эффективности использования сервера, при сосредоточении нескольких систем на одном компьютере.
- Виртуальные машины легко переносятся с одной аппаратной платформы на другую, чтобы сбалансировать загрузку или исключить простои сервиса во время сбоев в аппаратной части. В некоторых продуктах ВМ можно перенести даже не прекращая работы. Волшебство!
- Обновление ОС при сохранении возможности запуска важных унаследованных приложений под предыдущей версией системы на ВМ.
- Запуск виртуальных приспособлений – готовых образов для ВМ, предназначенных для выполнения определенной функции или демонстрации определенного продукта.
Программы для виртуализации
- Xen Написанный Иэном Праттом [Ian Pratt] из Кембриджа, Xen представляет собой «гипервизор» – относительно тонкий слой, выполняемый на низшем, самом привилегированном уровне. Над этим уровнем выполняется гостевая ОС, которой управляет гипервизор. Первый гость, или, говоря языком Xen, «домен 0», загружается автоматически и получает прямой доступ к «железу». Остальные гости (домены) запускаются из нулевого.
- KVM Как можно догадаться по названию, KVM (Kernel Virtual Machine – ВМ ядра) – это свободная инфраструктура для виртуализации, помещенная внутри ядра Linux (доступна начиная с версии 2.6.20). Она поддерживает (а на самом деле требует) процессоры Intel VTX или AMD-V. Я надеюсь рассказать о ней подробно в следующем месяце.
- Microsoft Virtual PC Этого продукта, наверное, не должно быть в нашем списке, так как он доступен только в Microsoft Windows и позволяет устанавливать в качестве гостевых ОС только Windows, хотя многие пользователи сообщали, что им удалось заставить работать различные версии Linux.
- Parallels Платный ($50) продукт для виртуализации, поддерживающий большой набор хост- и гостевых ОС (Windows и Linux)
- VMware Fusion Это продукт для виртуализации от VMware для Mac на процессорах Intel. Я знаю не одного профессионального администратора Linux, который пользуется MacBook Pro, VMware Fusion и одним или несколькими дистрибутивами Linux.
- VMware Workstation Популярный коммерческий ($190) продукт, поддерживающий Windows и Linux в качестве хост-ОС и большой набор гостевых ОС. О нем мы говорили в этом месяце.
- VMware Player Свободная программа, которая может «проигрывать» (но не создавать или редактировать) виртуальные машины, созданные в других продуктах от VMware или загруженные из Интернета.