Страница 1 из 12

Виртуализация

Добавлено: 01 окт 2011, 20:48
Olej
Для меня на сегодня очень интересная тема + думаю, может кому это тоже интересно, и найду единомышленников для обсуждения...

"Игрушки" с виртуализацией (на уровне любительских проб и ошибок: по бедности, по любопытству etc.) заканчивается ... года 2-3 назад, когда начинается интерес к профессиональным применениям виртуализации + массовая перекупка проектов виртуализации ... ну, так мне это грубо видится...

Для каких категорий задач?
1. С точки зрения бизнеса: консолидация серверов. Проще говоря, если вы можете перевести несколько не полностью используемых систем на один сервер, вы получаете существенную экономию пространства, потребления энергии, охлаждения и упрощаете администрирование в силу того, что требуется поддерживать меньшее количество серверов.
2. ... очень близко к предыдущему (его продолжение) - это психоз облачных вычислений последних нескольких лет...
3. ... и ещё очень близкое: предоставление (аренда) многим (десяткам, сотням?) пользователей автономных изолированных серверов (консолидация, но наоборот :-) ) - это изрядно прослеживается, например, среди публики работающей на FOREX валютных рынках.
4. Виртуализация - разработчиков: ядро Linux работает в общем адресном пространстве, что означает, что минимальный сбой в работе ядра или любого драйвера-модуля приводит к краху всей операционной системы (явному, сейчас, что лучше :-P , или отложенному, которые накапливаются и выявятся позже без причинно-следственных связей, что куда противнее)...
5. ... ещё виртуализация разработчикам: тестирование! - имея 10 инсталляций разных дистрибутивов Linux (разных ядер и разных лет) можно куда адекватнее обкатать программный проект, и это уже не только относительно модулей ядра...
6. ... ещё виртуализация разработчикам: разработка для аппаратных платформ (процессоров), которых нет под рукой - это особенно интересно в последнее время: для разработок под разные модификации ARM, которые ещё и несовместимы меж собой, так что ... см.п.5 ;)

Итого ... кто больше? (назовёт)

P.S. ах да, забыл:
7. для запуска таких ... рудементарных ;) ОС, которые не имеют средств поддержки нового оборудования - это очень широкий класс задач: а). ОС, которые не считают нужным поддерживать многое из ширпотреба - QNX, б). ОС, которые развивают очень медленно, и где поддерживается только очень ограниченный набор - MINIX 3, в). ОС старых версий, которые не могут знать нового оборудования - Sun Solaris 9 (я по одной ОС указал только для примера, чтоб понятнее).

8. и ещё забыл... :-(
Ну конечно же! :lol:
Запускать свои любимые Windows приложения! :twisted:
... совсем недавно я сам восстанавливал 3-х томную книжку из сканов FineReader ... всё таки Linux распознавалки - пока ещё убогие :oops:
Точно так же, когда мне скучно, и хочется развеяться и пописать торговых роботов для любителей FOREX - использую Meta Trader 4/5 ... ну нет, нет путного торгового терминала под Linux! :mrgreen:
Конечно ... этот п.8 можно поюзать и под Wine ... но под Wine далеко не всё работает (тот же Meta Trader 5 - заваливается в Wine).

P.P.S. у меня, в разные времена, был какой-то (больше-меньше) опыт в каждом из этих направлений - они выплывали из требований работы... и вот возникло намерение подвести какую-то систематизацию.

Re: Виртуализация

Добавлено: 01 окт 2011, 21:19
Olej
Olej писал(а):подвести какую-то систематизацию.
Теперь о самих менеджерах виртуальных машин...
(именно о самих проектах виртуализации, а не GUI прибамбасам в Linux для этих проектов)

Обзоров, сравнений, систематизаций - море:
http://ru.wikipedia.org›wiki/Сравнение_ ... ьных_машин
http://xgu.ru/wiki/Сравнение_виртуальных_машин
(показал не-вскидку 2 URL - http://yandex.ru/ даст вам 9 млн. ответов на такой запрос).

Но...
Меня интересуют только вопросы Linux (и, может, отчасти, Solaris, QNX),

Поэтому общелюбимые народными массами: VirtualPC , VMware etc. - "идут лесом" :-D ...
И из всего множества выбор то остаётся весьма ограниченный:

QEMU
KVM - далеко не на всяком x86 можно использовать, нужна аппаратная поддержка + даже в этом случае он 100% интегрируется проектом QEMU
VirtualBox - от почившего Sun Microsystems, ныне Oracle - очень развитый проект, но он базируется на кодах QEMU...
Bochs - который часто хвалят, но я о нём ничего не могу сказать ... кроме того, что он, похоже, ограничен тем, что гостевые машины на нём - только x86 ... что не интересно;
Xen - там самым интересным его режимом является паравиртуализация (когда ваш гостевой Linux должен быть модифицирован), но скорость выполнения - почти не уступает хост-системе, на которой это крутится аппаратно.

Всё?
Может ещё у кого опыт чего использования есть?

P.S.
- с QEMU + KVM я наработался ... всласть;
- VirtualBox - мне очень нравится (хоть это и не open-проект!) ... нужно бы ещё "прокачать" вопросы совместимостей форматов образов VM с QEMU (всё-таки они родственники?! :lol: );
- относительно Xen у меня минимальный опыт (пробный) относительно всех выше названных ... но у меня такое впечатление последнего года (2-х?), что проект Xen становится всё более закрытым, менее доступным и проприетарным... или это мне только так кажется?

Re: Виртуализация

Добавлено: 04 окт 2011, 18:38
Olej
Olej писал(а): KVM - далеко не на всяком x86 можно использовать, нужна аппаратная поддержка + даже в этом случае он 100% интегрируется проектом QEMU
Кстати, вот здесь:
http://www.grc.com/securable.htm
- есть хорошенькая программа тестирования возможностей вашего процессора.

P.S. вас смущает, что файл программы называется securable.exe :?: :lol:
Ну так запускайте его так :mrgreen: :

Код: Выделить всё

# wine securable.exe
:twisted:

Re: Виртуализация

Добавлено: 05 окт 2011, 13:56
Olej
Отвлечение от темы:

Читая здесь форум, и другие тоже, например Russian Fedora, я обратил внимание, что большинство (sic!) обсуждающих имеют инсталляции Linux в Windows из-под VirtualPC & VMware. Странно мне стало :-o : виртуальный Linux из-под Windows? :cry: - это уже что-то типичное из области резиновой женщины или безалкогольного пива :lol: ... Но это, в конечном итоге, дело вкуса.

Но я здесь хотел бы поговорить (и вопросы задать для размышления - не всё ясно, и заметки здесь себе самому оставлять по ходу разборок с вопросом) совсем о другом:
- виртуальные машины, запущенные в Linux...
- под которыми можно крутить разнообразные гостевые системы: тот же Linux, Solaris, QNX, Minix 3 и др.
- т.е. эксплуатационно использовать установки в VM, а не по бедности или лености виртуально устанавливать Linux для "в нём покопаться", научиться...

P.S. Кстати, вспомнилось, это интересно: сколько много народа мне встречалось, кто хотели "освоиться в Linux", но ни у кого, кто делал это в виртуальном Linux - ничего из этого путного не вышло :-?
Вышло только у тех, кто сел осваивать Linux в реальной инсталляции Linux.

Re: Виртуализация

Добавлено: 05 окт 2011, 16:35
Olej
Olej писал(а): QEMU
KVM - далеко не на всяком x86 можно использовать, нужна аппаратная поддержка + даже в этом случае он 100% интегрируется проектом QEMU
VirtualBox - от почившего Sun Microsystems, ныне Oracle - очень развитый проект, но он базируется на кодах QEMU...
Bochs - который часто хвалят, но я о нём ничего не могу сказать ... кроме того, что он, похоже, ограничен тем, что гостевые машины на нём - только x86 ... что не интересно;
Xen - там самым интересным его режимом является паравиртуализация (когда ваш гостевой Linux должен быть модифицирован), но скорость выполнения - почти не уступает хост-системе, на которой это крутится аппаратно.
Итого, у нас получается из инструментов (менеджеров):

1. QEMU, с KVM там где его можно использовать (в качестве модуля ядра Linux).
Основной интерфейс - консольный, но к нему есть великое множество GUI фронт-эндов (но это не часть проекта QEMU, а сторонние разработки). Хорош тем ещё, что понимает формат VM созданных VirtualBox (по крайней мере формат *.vdi VirtualBox). Имеет множество вариантов настройки сети (и виртуальные, и TAP, и используя мост выход в реальную LAN и внаружу...) - можно настроить всё, что угодно, но иногда приходится с параметрами командной строки сильно покарячиться :evil:
QEMU - единственный что я знаю виртуализатор, который позволяет создать стенд для разработки программ для других архитектур: ARM, MIPS ... отрабатывать программные проекты, не имея реального железа (сборку Linux под ARM и заталкивание его в QEMU я проделывал ... как-то опишу, там много).

2. VirtualBox - тот же код, но в другой обёртке ;-)
Очень прост в создании и настройке VM, легко настраивается и подхватывается сеть. При установке запускается в GUI варианте, но имеет полноценный командный (консольный) режим.
Приятная особенность: одинаково хорошо работает в Windows и Linux (и Solaris), формат образа VM, естественно, один: переписывайте файл образа в другую систему и запускайтесь там.

3. Xen ...
Требует специально перекомпилированного под него ядра (ARCH=xen).
Xen для меня пока загадка ... в более ранних дистрибутивах (CentOS 5.0 ~2007г.?) всё необходимое шло в репозитариях, сейчас всё как-то смазано, в исходниках ядра Linux нет такой архитектуры xen ...
Буду разбираться.

4. Bochs ...
Не знаю я ничего про Bochs, и не буду разбираться ;-) - QEMU с лихвой перекрывает его функциональность.

Re: Виртуализация

Добавлено: 06 окт 2011, 11:47
Olej
По Xen удалось мне найти свежее обсуждение: XEN на федоре, но и его мне недостаточно для того, чтобы создать VM-ы под Xen на тех дистрибутивах, где использование Xen органично не включено в поддержку из репозитария для непосредственного использования (в CentOS 5.0/5.2 было так).

Re: Виртуализация

Добавлено: 06 окт 2011, 20:13
Sergey371
Добавлю по п.1 Консолидация(как наиболее близкому мне): помимо оптимизации кол-ва железных серверов очень интересно повышение надёжности и доступности виртуальных сервисов и возможность техобслуживания в нормальное рабочее время, а не ночью или по выходным ;-) В этом отношении возлагаю большие надежды на связку Xen + drbd -- с одной стороны очень эффективное использование процессорного времени без потерь(спасибо паравиртуализации) + межсерверное дублирование данных с почти прозрачной миграцией виртуальных серверов.

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

Re: Виртуализация

Добавлено: 07 окт 2011, 12:12
Sergey371
Дополню ожидаемые прелести от Консолидации: балансировка нагрузки и миграция виртуальных машин(живая или с перезагрузкой).

Теперь кое что о продуктах VMware:

Наиболее близкий аналог комплекта KVM/QEMU это VMware Server: эмуляция железа, с учётом хостовой ОС, драйвера и т.д. и т.п. Довольно удобный интерфейс по конфигурации и переконфигурации хостовых машин и сети. Есть порт под Linux. VMware с 1-х версий бесплатно раздавал триальные лицензии что позволяло даже прилично эксплуатировать сей продукт. Но продукт "помер" в 2009 году на версии 2.0.2.

Нынче VMware сосредоточилась на линейке ESXi/vCenter/Virtual Infrastructure(VI) в основе которых лежит выделенный сервер на базе модернизированного специалистами VMware ядра Linux-а -- VMware ESXi который можно поставить или на обычный сервер или получить готовый с прошитым ESXi. Конечно функционал распространяемых бесплатно ESXi сильно отстаёт от коммерческих лицензий, но успокаивает то что VMware делает бизнесс не на простых смертных с единицами серверов и тривиальными запросами, а на солидных фирмах которым требуются высокие уровни доступности и соотв. функционал(увы балансировка нагрузки и миграция попадает под коммерческую лицензию, но в остальном можно поиграть и с ESXi). Из приятных вещей в продуктах VMware есть и виртуальные вычислительные центры, должен отметить очень удобная вещь для современных разработчиков, когда эмулируется целый вычислительный центр с клиентами(а можно и не один) с сетевой инфраструктурой -- можно протестировать на обновление целый парк серверов и подключить уже обновлённым "одним взмахом мышки".

Re: Виртуализация

Добавлено: 07 окт 2011, 13:26
Olej
Sergey371 писал(а): Добавлю по п.1 Консолидация(как наиболее близкому мне):
Не только по п.1, но по п.п.1,2,3 - самыми интересными представляются (на пока) решения на Xen или на чём-то подобном.
Sergey371 писал(а): Конечно Xen не имеет столь широкого применения в силу известных причин, но выигрыш по производительности серьёзный и за это можно просто выбрать подходящий дистрибутив.
1. А вот это уже интереснее ;-) : "в силу известных причин"(с) ;-) - мне они не так известны.
Можно поподробнее.
(это важно для того, чтобы понять и раскрутить Xen на разных дистрибутивах)

2. Мне так думается, что то, что раскручено в одном дистрибутиве Linux, с такой же лёгкостью раскручивается в любом другом.

Да, до какого-то времени Xen был органичной частью, например CentOS (5.0/5.2), не знаю как там сейчас... там инсталляцию "под Xen" можно было заказать при начальной инсталляции с CD. Но там это и понятно: CentOS - любимый дистрибутив коммукационщиков, VoIP & PBX: Asterisk / FreeSwitch / YETE etc. - сначала раскручиваются под CentOS, а только потом мигрируют в другие Linux (или даже некоторые POSIX: FreeBSD, ...). А там где стоят PBX телефонные софт-станции - там уже и до консолидации недалеко: SER / Open SER коммутаторы-прокси, авторизация RADIUS / DIAMETER etc.

Но я абсолютно уверен, что Xen можно крутануть на что угодно!

Re: Виртуализация

Добавлено: 07 окт 2011, 13:33
Olej
Sergey371 писал(а): Нынче VMware сосредоточилась на линейке ESXi/vCenter/Virtual Infrastructure(VI) в основе которых лежит выделенный сервер на базе модернизированного специалистами VMware ядра Linux-а -- VMware ESXi который можно поставить или на обычный сервер или получить готовый с прошитым ESXi. Конечно функционал распространяемых бесплатно ESXi сильно отстаёт от коммерческих лицензий,
Ну-ка, ну-ка ;-)
Что-то я просмотрел... :-?

1. VMware в таком виде можно раскрутить и использовать без коммерческой лицензии?
2. Его можно? установить параллельно с другой инсталляцией Linux, через меню GRUB? (как это делается для Xen).