что позволяют делать системы виртуализации

Как упростить разработку с помощью виртуализации

Человек, работая за компьютером, постоянно запускает разные программы. У программистов количество приложений, необходимых для работы, может исчисляться десятками. Более того, иногда приходится запускать программы, которые работают только в другой операционной системе, отличной от той, в которой работает программист.

В качестве примера можно привести проекты на Хекслете, где в рамках задания студенту нужно записать, что происходит в терминале. Эта задача становится трудновыполнимой, если ваша основная система — Windows. Программа, которая записывает терминал — asciinema, работает только в Linux. Как можно решить эту проблему? И почему нельзя просто взять и запустить программу из одной ОС в другой операционной системе?

Начнём с того, что программы, которые мы пишем, не взаимодействуют напрямую с железом. Например, когда мы вводим символы на клавиатуре, их сначала обрабатывает специальный драйвер, встроенный в операционную систему, и только потом они попадают в поле ввода и отображаются. В данном случае обработка настолько быстрая, что мы даже не задумываемся о ней. То же самое в отображении: мы запускаем множество разных процессов, просто двигая курсор мыши. Одна из главных задач операционных систем — предоставить возможность программам взаимодействовать с железом компьютера, и в разных операционных системах для этого используются разные функции.

Операционные системы — одни из самых сложных программ, если не самые сложные. Они разрабатывались разными людьми и в разное время. Логично, что подходы к работе с устройствами в них кардинально отличаются. Это одна из основных причин, почему нельзя просто скопировать программу в другую операционную систему и запустить её там. В качестве примера, не связанного с железом, можно сказать, что графические оболочки разных ОС тоже полностью отличаются. Например, в Linux нет понятий «Кнопка пуск» или «трей». В некоторых реализациях отсутствуют даже привычные нам всем окна.

Но всё же у разработчиков часто возникает потребность запуска программ, работающих только в одной ОС, и эта проблема имеет решение.

Самый очевидный способ — купить второй компьютер, но это дорогое удовольствие. Второй вариант — поставить Linux рядом со своей основной операционной системой. Такая установка может завершиться неудачей, так как операционные системы, как правило, не ожидают, что рядом с ними будет работать другая похожая программа. Но если всё получилось, во время старта компьютера вы сможете выбрать ОС для загрузки. Существует также и третий путь — виртуализация, о ней и поговорим.

Узнайте больше об операционных системах У нас есть курс по операционным системам. Зарегистрированные пользователи могут пройти его бесплатно. Другие бесплатные курсы можно найти по ссылке.

Что такое виртуализация

Виртуализация позволяет запускать в текущей операционной системе программы, созданные для другой операционной системы. Это возможно благодаря виртуальной машине, которая работает внутри текущей операционной системы. На виртуальную машину устанавливается любая нужная в данный момент ОС. Стоит сказать, что виртуальных машин может быть много, каждая из них при этом выглядит как отдельный компьютер со своими характеристиками.

Виртуализация имеет очень богатую историю, а первая операционная система с её поддержкой появилась еще в 1968 году. Тогда же программисты поняли, что если можно запустить одну виртуальную машину, значит можно запустить и вторую, и третью. Возникла потребность управлять множеством таких машин, и появился первый гипервизор. По сути, это операционная система для управления виртуальными машинами.

Например, у нас есть две виртуальные машины, которые мы хотим использовать одновременно. Каждая из них должна иметь свой виртуальный жесткий диск и оперативную память. Логично, что кто-то должен следить за тем, чтобы одна из операционных систем случайно не начала записывать данные в области памяти, которые использует другая виртуальная машина. Этим как раз и занимается гипервизор: он изолирует и разделяет ресурсы виртуальных машин.

Операционная система (или компьютер), внутри которой запускается виртуальная машина, называется хост-системой (host), а ОС, работающую в виртуальном окружении, называют гостевой (guest).

Гипервизоры, по большому счёту, делятся на два типа: которые работают внутри операционной системы хоста, и для запуска которых хостовая ОС не нужна. Последние умеют работать прямо на голом железе. На настольных компьютерах наибольшее распространение получил первый тип.

В качестве примеров гипервизоров первого типа можно привести: VMware Workstation, QEMU и VirtualBox. А ко второму типу относится, например, автономный гипервизор VMware ESX.

Какие существуют виды виртуализации

Виртуализацию делят на три вида в зависимости от подхода к её реализации.

Программная виртуализация

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

Аппаратная виртуализация

Для её работы требуется поддержка со стороны процессора. Наибольшее распространение получили технологии Intel-VT и AMD-V, в настоящее время большинство процессоров для домашних компьютеров поддерживают одну из них. Аппаратная виртуализация не получила бы такого широкого распространения, если бы не преимущества, которые обеспечивает данный подход. Эти преимущества описаны ниже.

Первое преимущество: при аппаратной виртуализации виртуальные машины управляются гипервизором напрямую, в отличие от программной виртуализации, где, например, решение о выделении памяти для виртуальной машины сначала принимает операционная система хоста, и только после подтверждения гипервизор может предоставить ей ресурсы. Благодаря этому производительность гостевых ОС значительно повышается и достигает эффективности, сравнимой с реальным компьютером с такой же конфигурацией.

Второе преимущество: так как конфигурация виртуальной машины полностью эмулируется гипервизором, установщик операционной системы не нужно модифицировать. Выбираем нужные устройства в настройках, подключаем любой стандартный установочный образ нужной операционной системы и запускаем виртуальную машину. Более того, если у вас ещё сохранился процессор с 32-битной архитектурой, с помощью аппаратной виртуализации можно настроить виртуальную машину с 64-битным процессором и установить соответствующую ОС. Независимость от платформы хоста открывает поистине бесконечные возможности для экспериментов.

Контейнеризация или контейнерная виртуализация

Это виртуализация на уровне операционной системы. Если аппаратная виртуализация полностью эмулирует оборудование и позволяет запускать любые ОС, внутри контейнера можно запустить только аналогичную хосту операционную систему. Преимуществом этого подхода является скорость, с которой создаётся контейнер — секунды, тогда как для запуска виртуальной машины счёт времени идёт на минуты. Так происходит потому, что полноценной виртуальной машине нужно сначала инициализировать всё оборудование, запустить эмуляцию и только после этого начать загружать операционную систему. При контейнеризации ОС по факту уже работает. Остаётся только создать замкнутую среду — тот самый контейнер, в котором будет запущен ещё один экземпляр операционной системы.

Контейнер представляет собой всего лишь один процесс, внутри которого выполняется операционная система. Она существует в своём собственном мире, со своей сетью, своим диском, своей файловой системой и так далее. Эту виртуализацию применяют на уровне сервисов, составляющих части программного продукта. Наиболее известные проекты: OpenVZ, Docker, LXC.Так как Docker очень широко применятся в разработке, у нас есть подробный гайд о том, что это такое, как с ним работать и какие он даёт преимущества — Как и для чего использовать Docker.

Читайте также:  Аккумулятор зарядка для автомобиля таблица

Дополнительные возможности виртуализации

В начале 2000-x компания VMWare быстро захватила корпоративный рынок, выпустив гипервизор ESX Server и создав тем самым конкурентную среду. Начиная с этого момента технологии виртуализации стали стремительно развиваться. Огромное количество предприятий начали использовать виртуализацию для решения разных задач.

Резервное копирование

Виртуальная машина по сути представляет из себя набор файлов конфигурации и жесткого диска, а оперативную память тоже можно сохранить в виде файла. Учитывая эти особенности и возможность «заморозить» работу виртуальной машины, стало возможным делать бэкапы виртуальных серверов целиком. Потом, в случае поломки сервера, можно восстановить его из резервной копии. При этом не важно, будет он работать физически на этом же железе или новом, главное, чтобы был установлен нужный гипервизор. Помните, что аппаратная виртуализация даёт независимость от хост-платформы?

Возможность «заморозить» (поставить на паузу) работу виртуальной машины можно использовать для быстрого переключения между окружениями. Допустим, вы разрабатываете приложение для Windows. У вас открыто окно соответствующего редактора, запущены вспомогательные процессы и так далее. Но в тоже время вам нужно работать над другим проектом с совершенно другим окружением и в другой операционной системе.

Работая в виртуальной среде, можно поставить виртуальную машину на паузу и поработать над другим проектом. А когда нужно будет вернуться к первому, достаточно просто оживить виртуальную машину и продолжить работу с того места, на котором вы остановились. Так сохраняется контекст и экономится время, так как всё нужное, вплоть до интерфейса окон, уже настроено и правильно расположено на экране.

Быстрое создание среды для разработки

Современные веб-проекты требуют установки и настройки большого количества инструментария, библиотек и их зависимостей, серверов баз данных и так далее. Контейнеризация позволяет свести множество действий к запуску пары команд в терминале.

Виртуализация серверов

Так как на одном физическом сервере может располагаться множество виртуальных машин, на которых запущены другие серверы, расходы на их содержание значительно упали. В данный момент можно очень дешево арендовать ресурсы такого виртуального сервера VPS. На таких серверах, например, часто хостятся сайты.

Источник

Виртуализация. Что это такое?

Виртуализация — способ предоставления вычислительных мощностей, объединенных программной логикой, абстрагированный от аппаратной части. Основная задача виртуализации — изоляция друг от друга вычислительных процессов или наборов определенных действий, которые происходят в пределах одного устройства. Соответственно, метод подходит в сферах, где нужно максимально сократить аппаратную часть, но максимально расширить программные возможности. Например, в дата-центрах, хостингах. Даже на рабочих местах в крупной организации.

Основные типы виртуализации

Метод внедрен повсеместно по ряду причин:

высокий уровень безопасности;

экономия технических ресурсов;

довольно простая настройка гипервизоров.

Очевидно, ключевым аспектом является экономика, ибо еврей жив в каждом. Так как виртуализация позволила не закупать огромное количество аппаратуры, а предоставлять вычислительные ресурсы удаленно, то желающих подобным образом закрыть технические потребности нашлось немало. Итак, какие же виды оной существуют?

Эмуляция

С подобным видом виртуализации сталкиваемся постоянно. Кстати, никогда не запускали эмулятор Sega на компьютере? Или смартфона? Да, по сути, на одном устройстве эмулируем другое. С точки зрения программного обеспечения, запущенного в эмуляторе, мы играем на Sega, залипаем в смартфон, сидим с ноутбука или планшета. В общем, что душа пожелает, было бы ПО. Такой тип виртуализации полезен и довольно распространен, ведь проще запустить эмулятор, чем покупать устройство.

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

Подобный тип обычные смертные видят нечасто. Есть компьютер с 32 ГБ оперативной памяти. Есть 10 компьютеров, имеющих всего по 16. Приложение выжирает все 32 ГБ памяти, но работать с ним требуется всем PC. Что делать? Правильно, превращаем компьютер с 32 ГБ в общий кэш, память которого другие компьютеры будут использовать в собственных интересах.

Усложним? Если да, то объединим всю ОЗУ в общий пул, теперь всем компьютерам кластера кажется, что численность ОЗУ равна сумме всей RAM в кластере. Это позволяет загружать ресурсоемкие приложения в пределах одного массива. Интересный способ. Распишу про него как-нибудь поподробнее.

Виртуализация операционных систем

Данный тип довольно распространен, ибо очень удобен. Встречается повсеместно, причем в разнообразных вариациях:

Программная виртуализация. Запускали Windows из под Linux и наоборот? Если да, то уже поняли, на что намекаю. Если нет, объясню. Создается программный гипервизор. Что это за зверь расскажу попозже, команды с основной ОС транслируются в гостевую, гипервизор отвечает за правильную интерпретацию команд.

Аппаратная. В сем случае присутствует поддержка на аппаратном уровне, гипервизор устанавливается не в систему, а под нее. То бишь, основой является он, все «операционки» разворачиваются поверх гипервизора. В таком случае получаются реально изолированный друг от друга операционные системы.

На уровне ОС. Попросту несколько оболочек, условно абстрагированных друг от друга, выполняющих работу параллельно. Полной изоляции в этом случае нет.

Вообще, сия тема заслуживает отдельного обзора. Много чего полезного можно сказать.

Виртуализация программного обеспечения

Этот тип предназначен для запуска изолированных друг от друга оболочек ПО. Практически идентично предыдущему типу. По свойствам напоминает терминальный доступ, но с точки зрения ОС выглядит так, будто запущено не одно приложение, а несколько. На каждый запуск одной и той же программы выделяется отдельный процесс.

Виртуализация хранения файлов

Если перед вами стоит задача представить набор накопителей как единый физически, то понадобится виртуализировать именно так. Существует блочная виртуализация, которая наиболее часто встречается в сетевых хранилищах SAN, а также файловая, которая наиболее ярко представлена в NAS.

Также сюда можно отнести следующие типы:

Виртуализация файловой структуры. Этот тип позволяет создать уровень данных поверх существующих разрозненных файловых систем. Например, сделать единую б для разных ОС в сети.

Распределенная файловая система. Позволяет получить доступ к определенным файлам и дискам с разных устройств, при этом, у каждой структуры накопитель будет отображаться как логический. Наиболее яркий пример — сетевой диск.

Виртуализация устройств хранения. Например, эмулятор оптического привода, логические диски.

Виртуализация данных

Фактически, метод абстрагирования упорядоченных структур от физического носителя, формы, структуры. Очень сложная и довольно новая для мира ИТ тема. Заслуживает отдельного обзора. Объясню простым языком, есть несколько пулов информации, тысячи баз данных, разрозненных, имеющих разную структуру и носители. Администрирование и работа будет затруднена. Но если создать виртуальную платформу, которая будет информацию интерпретировать и интегрировать для дальнейшей работы, то все заметно упрощается.

Подобный метод использовался и раньше, но сейчас, в силу усложнения структур данных, получает все большее распространение.

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

Объединяя технические и программные ресурсы в единую сеть мы создаем так называемую виртуальную сеть. Сеть можно создавать как внешнюю, соединяющую множество разнообразных сетей в одну виртуальную, так и внутреннюю, когда виртуальная сеть имитируется между программными компонентами внутри.

Читайте также:  ведущая форма обучения в доу

В каких областях применяется виртуализация?

На самом деле сфер, где эта технология применяется, довольно много. Выделить стоит основные, ибо перечислять все частные случае смысла нет. Так что давайте перейдем к делу, не стоит затягивать и так длинный текст.

Виртуализация представлений

Представляет собой запуск виртуальных рабочих столов, но в отличии от терминального сервера, гостевая сессия получается изолированной от других. Кстати, очень близкие сферы, отличия минимальны.

Основное преимущество в том, что один гость не способен вмешаться в пространство другого, что, соответственно, исключает критические ошибки, проблемы совместимости и многие другие неприятные аспекты, которые повсеместно встречаются в терминальных решениях. Каждое приложение разворачивается в виртуальной изолированной среде. Все операции выполняет сервер виртуализации. Пользователь получает только результат. В принципе, кроме изолированной среды для каждого приложения, отличий от терминальных решений нет.

Метод представления используется тот же, что и в терминальных решениях: толстый или тонкий клиент — специальные устройства, предназначенные для ввода-вывода данных используется для удаленного взаимодействия с сервером виртуализации. Большая мощность, в принципе, не нужна, потому, часто использование виртуализации приложений с тонкими клиентами обходится значительно дешевле, чем оснащение офиса производительными компьютерами. Помимо цены есть ряд других положительных сторон:

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

Гораздо проще разбираться с лицензиями. Если программным обеспечением пользуются единовременно не все сотрудники, то можно купить лицензию на подключения или пользователей. Получится заметная экономия. А на каждое устройство придется покупать отдельную лицензию.

Централизация инфраструктуры. Это заметно упрощает сбор и хранение данных.

Виртуализация приложений

Приходится использовать в случае, если требуется повышенный уровень безопасности. Любое приложение можно запустить в полностью изолированной от операционной системы среде. Тогда можно легко проверить на вирусы, уязвимости и избежать многих неприятных сюрпризов.

Виртуализация серверов

Имитировать аппаратное обеспечение на уровне ПО также можно. Для начала требуется установить гипервизор. Подойдут следующие комплексы:

Существует ряд других гипервизоров. Все они имеют свои преимущества и недостатки. В общем, тема обширная, заслуживает отдельной статьи.

Этот комплекс разворачивается «перед» установкой операционных систем, после чего настраивается и позволяет имитировать определенные технические характеристики, наличие определенных драйверов, в общем, вы имеете виртуальную машину, но с вполне физическими характеристиками.

На одном сервер виртуализации можно установить множество виртуальных машин, которые будут полностью изолированы друг от друга. Наиболее яркий пример — услуга хостингов VPS (Виртуальный сервер). Выгоды от такого подхода очевидны:

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

Сокращение расходом. Предположим, нужно много маломощных машин. Брать по-отдельности — дорого. Ведь корпуса, место в стойке также стоят денег. Проще взять одну мощную машину, настроить эмуляцию нужных конфигураций и запустить. Значительная экономия места и средств.

Администрирование на уровне гипервизора значительно упрощает управление технической инфраструктурой.

Хороший уровень масштабируемости. Для увеличения численности виртуальных машин можно создавать кластер устройств.

Без недостатков, к сожалению, не обойтись, придется смириться с возможными проблемами, хоть пути решения есть, но это дополнительные вложения:

Низкий уровень отказоустойчивости. Все технические ресурсы сконцентрированы в пределах одного устройства, в случае отказа, достанется всем. Единственный выход, делать дублирующее устройство, хотя это удовольствие довольно дорогое.

Сложная разверстка. Настраивать сервер виртуализации довольно трудно. Требуется потратить много времени и быть опытным специалистом, чтобы сделать все правильно.

Остальные недостатки будут разниться в зависимости от целей. Но, как видите, не бывает без изъяна.

Используйте

Как видите, для решения многих задач (если не большинства), подойдет виртуализация. Вы уже познакомились с этим понятием и теперь имеете представление о методе. Так что, если нужно строить сложную ИТ-структуру качественно и экономно, можете использовать приведенный в статье подход. Всего доброго, надеюсь, что сумел помочь!

Источник

Записки IT специалиста

Технический блог специалистов ООО»Интерфейс»

Введение в виртуализацию. Часть 1.

О виртуализации сегодня не слышал разве что ленивый. Можно без преувеличения сказать, что сегодня это один из основных трендов развития IT. Однако многие администраторы до сих пор имеют весьма отрывочные и разрозненные знания о предмете, ошибочно полагая что виртуализация доступна только крупным компаниям. Учитывая актуальность темы, мы решили создать новый раздел и начать цикл статей о виртуализации.

Что такое виртуализация?

Так что-же такое виртуализация? Это возможность запустить на одном физическом компьютере несколько изолированных друг от друга виртуальных машин, каждая из которых будет «думать» что работает на отдельном физическом ПК. Рассмотрим следующую схему:

Гипервизор может работать как непосредственно поверх железа, так и на уровне операционной системы, существуют также гибридные реализации, которые работают поверх специально сконфигурированной ОС в минимальной конфигурации.

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

Как устроена виртуальная машина?

Несмотря на кажущуюся сложность виртуальная машина (ВМ) представляет собой всего лишь папку с файлами, в зависимости от конкретной реализации их набор и количество может меняться, но в основе любой ВМ лежит один и тот-же минимальный набор файлов, наличие остальных не является критически важным.

Наибольшую важность представляет файл виртуального жесткого диска, его потеря равносильна отказу жесткого диска обычного ПК. Вторым по важности является файл с конфигурацией ВМ, который содержит описание аппаратной части виртуальной машины и выделенных ей разделяемых ресурсов хоста. К таким ресурсам относится, например, виртуальная память, которая является выделенной областью общей памяти хоста.

В принципе потеря файла конфигурации не является критическим, имея в наличии один только файл виртуального HDD можно запустить виртуальную машину создав ее конфигурацию заново. Точно также, как имея только один жесткий диск, можно подключить его к другому ПК аналогичной конфигурации и получить полностью работоспособную машину.

Кроме того в папке в виртуальной машиной могут содержаться и другие файлы, но они не являются критически важными, хотя их потеря может быть также нежелательна (например снимки состояния, позволяющие откатить состояние виртуального ПК назад).

Преимущества виртуализации

В зависимости от назначения разделяют настольную и серверную виртуализацию. Первая используется преимущественно в учебных и тестовых целях. Теперь, чтобы изучить какую нибудь технологию или протестировать внедрение какого-либо сервиса в корпоративную сеть достаточно лишь довольно мощного ПК и средства настольной виртуализации. Количество виртуальных машин, которые вы можете иметь в своей виртуальной лаборатории ограничено только размерами диска, количество одновременно запущенных машин ограничивается в основном количеством доступной оперативной памяти.

Читайте также:  Страховка авто в перми

На рисунке ниже окно средства настольной виртуализации из нашей тестовой лаборатории в окне которого запущена ОС Windows 8.

Серверная визуализация широко используется в IT инфраструктурах любого уровня и позволяет использовать один физический сервер для запуска нескольких виртуальных серверов. Преимущества данной технологии очевидны:

Оптимальное использование вычислительных ресурсов

Не секрет, что вычислительные мощности даже серверов начального уровня и просто средних ПК для многих задач и серверных ролей избыточны и не используются полностью. Обычно это решается добавлением дополнительных серверных ролей, однако такой подход значительно усложняет администрирование сервера и повышает вероятность отказов. Виртуализация позволяет безопасно использовать свободные вычислительные ресурсы, выделив под каждую критичную роль свой сервер. Теперь, чтобы произвести обслуживание, скажем, веб-сервера, вам не придется останавливать сервер баз данных

Экономия физических ресурсов

Использование одного физического сервера вместо нескольких позволяет эффективно экономить электроэнергию, место в серверной, затраты на сопутствующую инфраструктуру. Особенно это важно небольшим компаниям, которые могут значительно сократить расходы на аренду ввиду уменьшения физических размеров оборудования, например отпадает необходимость иметь хорошо вентилируемую серверную с кондиционером.

Повышение масштабируемости и расширяемости инфраструктуры

По мере роста фирмы все большее значение приобретает возможность быстро и без существенных затрат увеличить вычислительные мощности предприятия. Обычно данная ситуация предусматривает замену серверов на более мощные с последующей миграцией ролей и сервисов со старых серверов на новые. Провести подобный переход без сбоев, простоев (в т.ч. и запланированных) и разного рода «переходных периодов» практически невозможно, что делает каждое такое расширение маленьким авралом для фирмы и администраторов, которые зачастую вынуждены работать ночами и по выходным.

Виртуализация позволяет решить данный вопрос гораздо более эффективно. При наличии свободных вычислительных ресурсов хоста их можно легко добавить нужной виртуальной машине, например увеличить объем доступной памяти или добавить процессорные ядра. При необходимости поднять производительность более существенно создается новый хост на более мощном сервере, куда переносится нуждающаяся в ресурсах виртуальная машина.

Время простоя в данной ситуации кране мало и сводится ко времени необходимому для копирования файлов ВМ с одного сервера на другой. Кроме того многие современные гипервизоры содержат функцию «живой миграции», которая позволяет перемещать виртуальные машины между хостами без их остановки.

Повышение отказоустойчивости

Пожалуй, физический выход сервера из строя, один из самых неприятных моментов в работе системного администратора. Осложняет ситуацию тот факт, что физический экземпляр ОС практически всегда является аппаратно зависимым, что не дает возможности быстро запустить систему на другом железе. Виртуальные машины лишены такого недостатка, при отказе сервера-хоста все виртуальные машины быстро и без проблем переносятся на другой, исправный, сервер.

При этом различия в аппаратной части серверов не играют никакой роли, вы можете взять виртуальные машины с сервера на платформе Intel и успешно запустить их несколько минут спустя на новом хосте, работающем на платформе AMD.

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

Возможность поддерживать устаревшие ОС

Несмотря на постоянный прогресс и выход новых версий ПО корпоративный сектор часто продолжает использовать устаревшие версии ПО, хорошим примером может служить 1С:Предприятие 7.7. Виртуализация позволяет без лишних затрат вписать такое ПО в современную инфраструктуру, также она может быть полезна, когда старый ПК, работавший под управлением устаревшей ОС вышел из строя, а на современном железе запустить ее не представляется возможным. Гипервизор позволяет эмулировать набор устаревшего железа для обеспечения совместимости со старыми ОС, а перенести физическую систему в виртуальную среду без потери данных позволяют специальные утилиты.

Виртуальные сети

Трудно представить современный ПК без подключения к какой-либо сети. Поэтому современные технологии виртуализации позволяют виртуализировать не только компьютеры но и сети. Как и обычный компьютер, виртуальная машина может иметь один или несколько сетевых адаптеров, которые могут быть подключены либо к внешней сети, через один из физических сетевых интерфейсов хоста, либо к одной из виртуальных сетей. Виртуальная сеть представляет собой виртуальный сетевой коммутатор к которому подключаются сетевые адаптеры виртуальных машин. При необходимости, в такой сети, средствами гипервизора, могут быть реализованы сервисы DHCP и NAT, для доступа к интернету через интернет-подключение хоста.

Возможности виртуальных сетей позволяют создавать достаточно сложные сетевые конфигурации даже в пределах одного хоста, для примера обратимся к следующей схеме:

Хост подключен к внешней сети посредством физического сетевого адаптера LAN 0, посредством этого же физического интерфейса к внешней сети подключена виртуальная машина VM5, через сетевой адаптер VM LAN 0. Для остальных машин внешней сети хост и VM5 два разных ПК, каждый из них имеет свой сетевой адрес, свою сетевую карту со своим MAC-адресом. Вторая сетевая карта VM5 подключена к виртуальному коммутатору виртуальной сети VM NET 1, к нему же подключены сетевые адаптеры виртуальных машин VM1-VM4. Таким образом мы в пределах одного физического хоста организовали безопасную внутреннюю сеть, которая имеет доступ к внешней сети только через роутер VM5.

На практике виртуальные сети позволяют легко организовать в пределах одного физического сервера несколько сетей с разным уровнем безопасности, например вынести потенциально небезопасные хосты в DMZ без дополнительных затрат на сетевое оборудование.

Моментальные снимки

Еще одна функция виртуализации полезность которой сложно переоценить. Суть ее сводится к тому, что в любой момент времени, не останавливая работы виртуальной машины, можно сохранить снимок ее текущего состояния, да еще и не один. Для неизбалованного админа это просто праздник какой-то, иметь возможность легко и быстро вернуться к первоначальному состоянию, если что-то вдруг пошло не так. В отличии от создания образа жесткого диска с последующим восстановлением системы с его помощью, что может занять значительное время, переключение между снимками происходит в течение считанных минут.

Другое применение моментальные снимки находят в учебных и тестовых целях, с их помощью можно создать целое дерево состояний виртуальной машины, имея возможность быстро переключаться между различными вариантами конфигурации. На рисунке ниже приведено дерево снимков роутера из нашей тестовой лаборатории с которым вы прекрасно знакомы по нашим материалам:

Заключение

Несмотря на то, что мы старались дать лишь краткий обзор, статья получилась довольно объемной. В тоже время мы надеемся, что благодаря данному материалу вы сможете реально оценить все возможности, которые предоставляет технология виртуализации и осмысленно, представляя те преимущества, которые способна получить именно ваша IT-инфраструктура, приступить к изучению наших новых материалов и практическому внедрению виртуализации в повседневную практику.

Источник

Автомобильный онлайн портал