Плюсы и минусы запуска виртуального сервера

Опубликовано: 26 Марта, 2023

В связи с выходом Microsoft Virtual Server 2005 в ближайшее время я хотел бы воспользоваться возможностью, чтобы немного рассказать об этом новом продукте, а также о некоторых преимуществах и недостатках, связанных с его использованием. Если вы не знакомы с Virtual Server, это продукт, предназначенный для создания нескольких виртуальных серверов на одном компьютере с Windows Server 2003. Каждый из этих виртуальных серверов функционирует как независимый компьютер со своей операционной системой и индивидуальным набором приложений. Вы можете узнать больше о Virtual Server 2005, посетив: http://www.microsoft.com/windowsserversystem/virtualserver/evaluation/vsoverview.mspx


Почему виртуальный сервер выгоден?


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


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


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


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


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


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


Проблемы с производительностью


Как видите, Virtual Server 2005 — чрезвычайно полезный продукт, но у него есть некоторые особенности, о которых вам необходимо знать. Первая проблема, о которой вам нужно знать, связана с надежностью. Как я упоминал ранее, виртуальный сервер разработан таким образом, что если один из виртуальных серверов выйдет из строя, это не повлияет на физическое оборудование, операционную систему хоста или другие виртуальные серверы или приложения, работающие на сервере. Проблема в том, что аппаратный сбой или сбой в операционной системе хоста может вывести из строя виртуальные серверы, работающие на этой машине. Например, если у вас есть Windows 2003 Server с пятью виртуальными серверами и произошел серьезный сбой оборудования, но основная операционная система и работающие на ней виртуальные серверы станут недоступными. Даже если на самом деле вышел из строя только один сервер, ваши конечные пользователи будут считать, что отказали шесть разных серверов.


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


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


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


Проблемы с лицензированием


Еще один вопрос, который необходимо учитывать при работе с виртуальными серверами, — это лицензирование программного обеспечения. Хотя верно то, что запуск приложений в среде виртуального сервера часто экономит деньги на стоимости оборудования, вы не сэкономите на лицензировании программного обеспечения. Например, представьте, что у вас есть сервер, на котором работают четыре виртуальных сервера Windows 2003 Server. На самом деле вам потребуется пять отдельных лицензий для Windows Server 2003, одна для основной операционной системы и по одной для каждой из четырех виртуальных машин. К тому времени, когда вы также добавите лицензию Virtual Server 2005, вы потратите больше денег на программное обеспечение, чем если бы все ваши виртуальные серверы работали на отдельном оборудовании.


Проблемы с безопасностью


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


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


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


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


Вывод


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