Задать вопрос специалисту

Приобрети журнал - получи консультацию экспертов

To top
NBU Rate
 

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

Матвиюк Роман
руководитель отдела АСУП

№4(15)(2013)

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

Понятие виртуализации условно можно разделить на два фундаментальных направления:

виртуализация платформ - продуктом данного вида виртуализации являются виртуальные машины, которые запускаются на реальных аппаратно-программных системах;

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

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

Под виртуализацией платформ подразумевается создание программных систем на уже существующих аппаратно-программных комплексах, которые зависят или не зависят от этих комплексов. При такой виртуализации систему, предоставляющую аппаратно-программные ресурсы, называют хостом (host), а симулированные системы - гостевыми (guest). Виртуализация может быть разноуровневой. Первое, что можно выделить, - это полная эмуляция. При такой эмуляции гостевая платформа использует все ресурсы хоста, при этом оставаясь без изменений. Такой вид эмуляции позволяет эмулировать различные аппаратные архитектуры без привязки к хосту. Этот подход использовался при разработке программного обеспечения для процессоров, которые еще не вышли в продажу, а также для низкоуровневой настройки операционных систем. Данный метод имеет несколько недостатков, а именно: значительное снижение скорости обработки данных, что почти исключает его использование, и использование всех ресурсов, что позволяет эмулировать только одну систему.

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

Кроме того, можно выделить виртуализацию уровня приложений. Этот вид виртуализации не похож на предыдущие, где использовались виртуальные среды или виртуальные машины для обеспечения изолированности аппликаций. Здесь аппликация помещается в контейнер с необходимыми элементами для своей работы: файлами реестра, конфигураций, пользовательскими и системными объектами. В результате получаем программу, которая не требует установки на аналогичной системе. При переносе ее на другую платформу виртуальная среда решает проблемы с операционной системой и другими приложениями. Такой способ поведения очень похож на интерпретаторы языков программирования. Не зря программы на JAVA относятся к данному виду виртуализации, а большинство современных клиент-банков написаны именно на JAVA. Что это дает разработчикам? То, что у них гарантированно будет один и тот же результат на разных платформах при одинаковых исходных данных. Поддержку различных платформ берет на себя разработчик виртуальных машин - в данном случае корпорация Oracle.

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

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

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

• многопроцессорные системы, предстающие перед нами как одна мощная (сегодня поддержка многопроцессорности есть почти во всех современных операционных системах);

• RAID-массивы - объединение нескольких физических или логических носителей в один логический для обеспечения большей отказоустойчивости или ускорения обработки данных, зависящих от конфигурации;

• виртуализация систем хранения, используемых при построении сетей хранения данных SAN (Storage Area Network). Эта технология позволяет пользователям или программам обращаться к массиву данных под одним именем, тогда как отдельные данные могут храниться на различных ресурсах в сети;

• виртуальные частные сети (VPN) и трансляция сетевых адресов (NAT), позволяющие создавать виртуальные пространства сетевых адресов и имен.

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

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


Add comment


Security code
Refresh

Что для Вас криптовалюта?

Виртуальные «фантики», крупная махинация вроде финансовой пирамиды - 42.3%
Новая эволюционная ступень финансовых отношений - 25.9%
Чем бы она не являлась, тема требует изучения и законодательного регулирования - 20.8%
Даже знать не хочу что это. Я – евро-долларовый консерватор - 6.2%
Очень выгодные вложения, я уже приобретаю и буду приобретать биткоины - 4.3%

29 августа вступила в силу законодательная норма о начислении штрафов-компенсаций за несвоевременную выплату алиментов (от 20 до 50%). Компенсации будут перечисляться детям

В нашей стране стоит сто раз продумать, прежде чем рожать детей - 33.3%
Лучше бы государство изобретало механизмы финансовой поддержки института семьи в условиях кризиса - 29.3%
Это не уменьшит числа разводов, но заставит отцов подходить к вопросу ответственно - 26.7%
Эта норма важна для сохранения «института отцовства». Поддерживаю - 9.3%