16.05.2018 testsoft

Виртуальные машины. Введение.

Как просто объяснить принцип виртуализации? Наверное, ближе всего подходит слово «ненастоящее». Почему такое слово «виртуальность» вошло в компьютерную терминологию? Не так давно, когда вы покупали новый системный блок и приносили его домой, то первым делом устанавливали на него операционную систему и программы. Если объяснять простыми словами – один системный блок (процессор, материнская плата, оперативная память и жесткий диск) ассоциировался с одной операционной системой. Для того, чтобы установить другую операционную, нужно было удалить старую или разделить жесткие диски, устроив выбор загрузки операционной системы в самом начале. Но все равно, вы работали с одной операционной системой в одно время, хотя у вас на жестких дисках были и другие операционные системы. А теперь представьте, что все операционные системы работают одновременно? Такая фантастика стала реальностью из-за увеличения мощностей компьютерных компонентов, а, в частности, процессоров. Как оказалось, при штатной работе операционных систем ресурсы компьютерной техники задействованы процентов на двадцать. Чтобы поднять производительность компьютерных систем была придумана «виртуализация». Теперь стало возможным запускать сразу несколько операционных систем и управлять их производительностью. Т.е. разделять физические ресурсы компьютера между программными компонентами.

Например, у вас небольшая компания: десять обычных пользователей на компьютерах с операционной системой Windows. Вам нужно запустить сайт компании и организовать работу с электронной почтой, обеспечить хранение данных внутри компании и межсетевой экран для защиты корпоративной сети. Как бы это выглядело до появления «виртуализации»? Правильно, целый парк физических серверов. И это еще без учета особенностей реализации структуры: сервер с сайтом компании и межсетевой экран для защиты могут быть на ОС семейства Linux, а сервер хранения данных внутри компании на ОС Windows. А еще при такой структуре корпоративной сети обязательно должно присутствовать резервное копирование данных. Далее начнутся обновления программ на серверах, захочется использовать систему управления сайтом, поставить корпоративный антивирус и т.д. Все это придется тестировать и настраивать. В общем, функционал будет разрастаться, серверов будет больше и больше, а вы погрязнете в железках.
Решения на базе «виртуализации» выглядят гораздо удобнее. На основном физическом сервере разворачивается основная инфраструктура: Второй сервер, тоже заточенный под «виртуализацию», используется как резервный. Обычно на нем располагают дублирование критически важных сервисов компании (в выключенном состоянии) или резервное копирование данных. В идеале к серверам, а точнее, в корпоративную сеть, подключают отдельное большое хранилище данных. Можно, конечно, жить с одним сервером, но нужно обязательно делать резервное копирование данных на физически независимое устройство.
Главное удобство в использование принципа виртуализации заключается не в уменьшении количества физических серверов, а в повседневной работе с развернутой инфраструктурой. Настроенные вами операционные системы можно клонировать, переносить как обычные файлы между серверами и компьютерами, добавлять или уменьшать распределение мощности процессора, оперативной памяти и дискового пространства. Например, вы задумали обновить программное обеспечение на сервере, но не уверены, что все пройдет хорошо. Можно просто склонировать существующую виртуальную машину (например, ОС Windows), запустить ее отдельно, обновить и проверить работоспособность. Все устраивает? Отключаем работающую виртуальную машину без обновления и вместо нее запускаем в корпоративную сеть обновленную версию.

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