Технологии виртуализации Лекция 10

реклама
Лекция 10
Технологии виртуализации
Три типа виртуализации:
• Виртуализация представлений
• Виртуализация приложений
• Виртуализация серверов
Самый яркий пример виртуализации
представлений – терминальные службы
Microsoft Windows Server. Терминальный сервер
предоставляет свои вычислительные ресурсы
клиентам, и клиентское приложение выполняется
на сервере, клиент же получает только
«картинку», то есть представление.
Такая модель доступа позволяет:
1. Снизить требования к программно-аппаратному
обеспечению на стороне клиента.
2. Снижает требования к пропускной способности
сети.
3. Позволяет повысить безопасность.
В качестве терминальных клиентов могут использоваться
даже смартфоны или старые компьютеры вплоть до
Pentium I, не говоря уже о специализированных тонких
клиентах. Существуют, к примеру, тонкие клиенты в формфакторе розетки Legrand, монтируемые в короб. На
клиентских рабочих местах достаточно установить только
монитор, клавиатуру и мышь – и можно работать. Для
работы с терминальным сервером не обязательно иметь
высокоскоростное подключение к локальной сети, вполне
достаточно даже низкоскоростного подключения с
пропускной
способностью
15-20
кбит/с,
поэтому
терминальные решения очень подходят организациям,
имеющим сильно распределенную структуру (к примеру –
сети небольших магазинов или вузовских библиотек).
При использовании тонких клиентов значительно повышается безопасность,
потому что пользователям можно разрешить запускать только ограниченный
набор приложений, и запретить устанавливать свои собственные
приложения. В принципе, то же самое можно сделать и с полноценными
клиентскими рабочими станциями, но с использованием терминальных служб
это будет сделать гораздо проще, особенно – не предоставляя доступ
целиком к рабочему столу, а лишь публикуя отдельные приложения. Более
того, никакую информацию нельзя будет скопировать на и с внешнего
носителя, если это явно не разрешено в настройках терминальных служб. То
есть проблема «вирусов на флэшках» отпадает автоматически. Еще одно
неоспоримое достоинство – снижение сложности администрирования:
упрощается обновление приложений (достаточно обновить их на сервере), и
упрощается работа служб поддержки: к терминальной сессии любого
пользователя можно подключиться удаленно без установки дополнительного
ПО.
Недостатков у таких систем два: во-первых – необходимость покупки более
мощных серверов (хотя это может быть дешевле, чем множество клиентских
рабочих станций с ТТХ, достаточными для запуска приложений локально),
во-вторых – появление единой точки отказа в виде терминального сервера.
Эта проблема решается за счет использования кластеров, или ферм
серверов, но это приводит к еще большему удорожанию системы.
Терминальный
сервер
Терминал 1
Коммутатор
Терминал 2
…
Терминал n
Достоинства:
• Снижение требований к «железу» на стороне
клиентов
• Снижение требований к пропускной
способности сети
• Повышение безопасности
• Значительное упрощение администрирования и
поддержки
Недостатки:
• Повышения требований к серверам, как по
производительности, так и по надежности
• Возможная единая точка отказа
Виртуализация приложений – достаточно интересное, и
относительно новое направление. Коротко говоря,
виртуализация
приложений
позволяет
запускать
отдельное
приложение
в
своей
собственной
изолированной среде (иногда называется «песочница»,
sandbox). Такой способ помогает решить множество
проблем. Во-первых – опять же безопасность:
приложение, запущенное в изолированной среде – не
способно нанести вред ОС и другим приложениям. Вовторых – все виртуализированные приложения можно
обновлять централизованно из одного источника. Втретьих – виртуализация приложений позволяет
запускать на одном физическом ПК несколько разных
приложений, конфликтующих друг с другом, или даже
несколько разных версий одного и того же приложения.
Достоинства:
• Безопасность
• Простота администрирования —
централизованное обновление и
разграничение прав на доступ к
приложениям
Недостатки:
• Некоторая сложность в понимании
технологий и в практическом внедрении.
Виртуализация серверов – это программная имитация с
помощью
специального
ПО
аппаратного
обеспечения
компьютера: процессор, память, жесткий диск, и т.д.
На
такой
виртуальный
компьютер
можно
установить
операционную систему, и она будет на нем работать точно так
же, как и на реальном, «железном» компьютере. Самое
интересное достоинство этой технологии – это возможность
запуска нескольких виртуальных компьютеров внутри одного
«железного», при этом все виртуальные компьютеры могут
работать независимо друг от друга.
Для чего это можно применять?
Первое, что приходит в голову – виртуализацию серверов можно
использовать в целях обучения и в тестовых целях. К примеру,
новые приложения или ОС можно протестировать перед
запуском в промышленную эксплуатацию в виртуальной среде,
не покупая специально для этого «железо» и не рискуя
парализовать работу ИТ-инфраструктуры, если что-то пойдет не
так.
Но кроме этого, виртуализация серверов может использоваться и в реальных
бизнес-процессах.
Виртуализация позволяет сократить количество серверов благодаря
консолидации, то есть там, где раньше требовалось несколько серверов –
теперь можно поставить один сервер, и запустить нужное число гостевых ОС в
виртуальной среде. Это позволит сэкономить на стоимости приобретения
оборудования, а так же снизить энергопотребление, а значит и
тепловыделение системы – и, следовательно, можно использовать менее
мощные, и, соответственно – более дешевые системы охлаждения. Но у этой
медали есть и обратная сторона, и не одна. Дело в том, что при внедрении
решений на базе виртуализации, скорее всего придется покупать новые
сервера. Дело в том, что виртуальные сервера используют аппаратные
ресурсы физического сервера, и, соответственно – понадобятся более
мощные процессоры, большие объемы оперативной памяти, а так же более
скоростная дисковая подсистема, и, скорее всего – большего объема. Кроме
того, некоторые системы виртуализации (в частности – Microsoft Hyper-V)
требуют поддержки процессором аппаратных технологий виртуализации (Intel
VT или AMD-V) и некоторых других функций процессора. Многие процессоры,
которые выпускались до недавнего времени, в частности – все x86_32bit –
этим требованиям не удовлетворяют, и поэтому от старых, хотя и вполне
рабочих серверов придется отказаться. Однако же, один более мощный сервер
скорее всего будет стоить намного дешевле нескольких менее мощных, да и
старые сервера, скорее всего давно пора менять из-за морального
устаревания.
Файл-сервер
Сервер СУБД
Веб-сервер
Гипервизор
Файл-сервер
Сервер СУБД
Гипервизор
Веб-сервер
Microsoft Windows
Server 2008 R2
Novell openSUSE
Linux 11.2
FreeBSD 8
Виртуализация северов позволяет до предела упростить администрирование
инфраструктуры. Главное преимущество, которое ценят все системные
администраторы – это возможность удаленного доступа к консоли виртуальных
серверов на «аппаратном», точнее – «вирутально-аппаратном» уровне,
независимо от установленной гостевой ОС и ее состояния. Так, чтобы
перезагрузить «зависший» сервер, нет необходимости быть физически возле
сервера в серверной, или покупать дорогостоящее оборудование типа IP-KVMпереключателей, достаточно просто зайти в консоль виртуального сервера и
нажать кнопку «Reset». Помимо этого, виртуальные сервера поддерживают
технологию моментальных снимков.
Резервное копирование и восстановление виртуальных систем намного проще,
чем у реальных серверов.
Еще одно неоспоримое преимущество – ОС, запущенная внутри виртуальной
машины (гостевая ОС) понятия не имеет, какое оборудование установлено на
физическом сервере, внутри которого она работает (хост). Поэтому, при замене
железа, при апгрейде или даже переезде на новый сервер необходимо обновить
драйверы только на ОС самого хоста (хостовой ОС). Гостевые ОС по будут
работать как и раньше, поскольку «видят» только виртуальные устройства.
Экономический аспект
В виртуальной среде могут действовать особые
правила
лицензирования
программного
обеспечения (в частности, покупка лицензии на
Microsoft Windows Server 2008 Enterprise
позволяет использовать бесплатно четыре копии
ОС в качестве гостевой, а Microsoft Windows
Server 2008 Datacenter вообще разрешает
использовать неограниченное число гостевых ОС
при условии полного лицензирования по
процессорам).
Технологии отказоустойчивости
Физические сервера, на которых запускаются виртуальные машины, могут
быть объединены в кластер, и в случае отказа одного из серверов –
автоматически «переезжать» на другой. Полной отказоустойчивости добиться
не всегда возможно (в частности, в MS Hyper-V такой «внезапный переезд»
будет выглядеть так же, и иметь такие же возможные последствия, как
внезапное обесточивание сервера), но возможные простои сильно сократятся:
«переезд» занимает несколько минут, тогда как ремонт или замена самого
сервера может занять часы, а то и дни. Если же «переезд» виртуальных
машин происходит в штатном режиме, то он может пройти совершенно
незаметно для пользователей. Такие технологии у разных вендоров
называются по-разному, к примеру у Microsoft она называется «Live Migration»,
у VMware – Vmotion. Использование таких технологий позволит проводить
работы, связанные с выключением сервера (к примеру – замену некоторых
аппаратных компонент, или перезагрузку ОС после установки критических
обновлений) в рабочее время и не отключая пользователей от их приложений.
Кроме этого, если инфраструктура построена соответствующим образом –
запущенные виртуальные машины могут автоматически перемещаться на
менее нагруженные сервера, или же наоборот «разгружать» наиболее
загруженные. В инфраструктуре на базе технологий Microsoft для этого
используются специальные программы: System Center Virtual Machine Manager
и Operations Manager.
Достоинства:
• Экономия места в стойках
• Снижение энергопотребления и тепловыделения
• Упрощение администрирования
• Широкие возможности по автоматизации развертывания и
управления серверами
• Снижение вынужденных и запланированных простоев
системы за счет failover-кластеров и live migration
• Позволяет (при использовании ОС Microsoft Windows Server)
сэкономить на лицензиях на гостевые ОС
Недостатки – в принципе, те же, что и у терминальных решений:
• Повышение требований к аппаратному обеспечению
серверов
• Возможная единая точка отказа – физический хост и хостовая
ОС
В заключение темы по виртуализации серверов — отмечу,
что виртуализация не всегда одинаково полезна. В
частности, не всегда будет хорошей идеей переносить в
виртуальную среду высоконагруженные сервера, а
особенно — высоконагруженные по дисковой подсистеме
— это «тяжелые» СУБД, Microsoft Exchange Server, и
прочие высоконагруженные приложения. А вот сервера с
меньшей нагрузкой (контроллеры доменов AD, WSUS,
всевозможные System Center * Manager, веб-сервера)
виртуализировать можно и даже нужно. Замечу, кстати, что
именно с контроллерами доменов — очень желательно,
чтобы хотя бы один из контроллеров был «железным», то
есть не виртуальным. Нужно это потому, что для
корректной работы всей инфраструктуры желательно,
чтобы при запуске всех остальных серверов хотя бы один
контроллер домена уже был доступен в сети.
Гипервизоры:
• Microsoft Hyper-V
• VMware ESX
•
•
•
•
Microsoft Virtual PC
VMware Workstation
Parallels
Oracle VirtualBox
Гипервизор
Oracle VirtualBox
Некоторые особенности
• Кроссплатформенность.
• Поддержка USB 2.0, когда устройства хост-машины становятся
доступными для гостевых ОС.
• Экспериментальная поддержка аппаратного 3D-ускорения.
• Поддержка виртуализации аудиоустройств (эмуляция AC97 или
SoundBlaster 16 на выбор).
• Поддержка различных видов сетевого взаимодействия (NAT, Host
Networking via Bridged, Internal).
• Поддержка цепочки сохраненных состояний виртуальной машины
(snapshots), к которым может быть произведён откат из любого
состояния гостевой системы.
• Поддержка Shared Folders для простого обмена файлами между
хостовой и гостевой системами (для гостевых систем Windows 2000
и новее, Linux и Solaris).
• Поддержка интеграции рабочих столов (seamless mode) хостовой и
гостевой ОС.
• Мультиязычный интерфейс.
Демонстрация
Скачать