Статья для permlug.org (Пермской Группы Пользователей Линукс). http://www.permlug.org/node/4709/
Доброго времени суток. Вечер. 31 декабря 2008 года. Чем заняться человеку в такое время? Правильно! Начать писать статью на permlug, чтобы поделиться опытом. :)
Часть 1. Нелюбимый windows или с чего всё начиналось.
Сейчас братья-линуксоиды будут бить меня ногами и говорить, что мануалы по настройке чего-либо под win здесь не к месту. Сразу объяснюсь - пишу это для того, чтобы человек, которому приходится на работе пользоваться win, мог настроить виртуализацию и там и спокойно пользоваться одними и теми же образами виртуальных машин под различными платформами.
Преамбула: на работе стоял в стойке двухюнитовый сервер HP ML380 с четырнадцатью гигабайтами памяти и восемью скази дисками общим объёмом чуть менее терабайта (надо же, скоро эта единица измерения объёма информации станет совсем привычной, а ведь на полке где-то пылится с давних времён Seagate на 40 мегабайт :)). На этом сервере предыдущие админы догадались разместить расшаренные папки всей организации и внушительное количество всяческого барахла - дистрибутивы, драйвера и т.д.. И конечно же, на сервере стоит w2k3. Поставил snmp, подключил сервер к мониторингу и забыл о нём на какое-то время, поскольку дел было невпроворот. А потом внезапно вспомнил и решил посмотреть результаты. Результаты впечатляли. Средняя загрузка памяти - 1,6%, загрузка процессоров не поднималась выше трёх процентов. Причём гигабитным портом сервер был подключен к стомегабитному порту коммутатора, ибо больше некуда, а на гигабитный управляемый коммутатор, который можно было бы сделать центральным, начальство разоряться не хочет. В то же время, мне постоянно не хватало на работе машин, на которых можно что-то потестировать, опробовать и проверить, поэтому я решил устроить серверу размножение личности, благо, вычислительных ресурсов у него на это хватает с лихвой. Был проведён разговор с начальством и получено "добро" на использование сервера в своих целях при условии, что это не помешает пользователям работать с расшаренными документами, ибо перенести этот объём информации просто некуда. При помощи нехитрой утилитки SequoiaView (аналог встроенной в Konqueror FSView), я пошарился по папкам пользователей и конечно же, обнаружил там среди документов музыку, фильмы, игры и прочую чепуху, которая к делу не относится. Проведя разъяснительную беседу с рядом пользователей и пригрозив им введением квот, я освободил себе около 200 гигабайт места. В принципе, вполне достаточно.
Итак, приступаем к боевым действиям.
Задача: получить средство быстрого создания и дублирования виртуальных хостов, которые могли бы находиться в той же сети.
Какой эмулятор выбрать? Все вокруг пользуются VmWare или на худой конец, VirtualBox'ом, но я всеми силами поддерживаю GPL и предпочитаю открытый софт, нежели просто Freeware, даже если работа с ним окажется несколько сложнее. Поэтому для меня вопрос был решён изначально. Я выбрал qemu. Но пользоваться qemu из командной строки не всегда возможно. Скажем, если на виртуальный хост поставлена w2k3, то для того, чтобы авторизоваться в системе, надо послать ей Ctrl+Alt+Del, но это сочетание клавиш перехватывает хост-система. Поэтому нам необходима некая оболочка, которая будет выполнять эти и ряд других функций, например, возможность поставить систему на "паузу" или сохранить её состояние. Под windows выбор был не так велик и в конце-концов, я остановился на Qemu Manager (
http://www.davereyn.co.uk/). Простенько и со вкусом. Есть вариант для установки и есть в zip архиве, который можно распаковать и носить с собой на флешке, например. При установке или первом запуске лучше включить инсталляцию kqemu, это позволит несколько ускорить работу эмулятора.
На возможностях программы я особо останавливаться не буду, всё просто и понятно. Главный вопрос, с которым мне пришлось столкнуться - как вывести машины в сеть. Дело в том, что для *nix систем этой информации в сети было море, а для win - нет.
Общий принцип - для того, чтобы виртуальная машина могла общаться по сети с хост машиной, нужен так называемый tap интерфейс (Traffic Accounting Protocol). Но глупая w2k3 в своём составе не имеет средств для создания tap интерфейсов и придётся поставить эти средства отдельно. Для этого нам понадобится дистрибутив OpenVPN, который можно найти тут:
http://openvpn.net/index.php/downloads.html. OpenVPN так же является свободной разработкой, о чём гласит надпись на их сайте "OpenVPN is Free Software released under the GNU/GPL License." При установке мы должны выбрать только TAP-Win32 Virtual Ethernet Adapter, убрав все остальные галочки. На вопросы о совместимости оборудования отвечаем "Всё равно продолжить". После окончания установки у нас появится новый сетевой интерфейс. Если windows русская, то она его назовёт "Подключение по локальной сети" + какой-то номер. Заходим в Панель управления > Сеть и подключения к Интернету >
Читать далее...