Технический справочник. Шаблоны и пулы
1. Шаблоны и пулы
Среда zVirt предлагает администраторам инструменты, упрощающие предоставление виртуальных машин пользователям, а именно шаблоны и пулы. Шаблон - это ярлык, который позволяет администратору быстро создать новую виртуальную машину на основе существующей и уже настроенной виртуальной машины, минуя установку и настройку операционной системы. Это особенно полезно для виртуальных машин, которые будут использоваться как прикладное решение (например, для виртуальных веб-серверов). Если в организации используется много экземпляров конкретного веб-сервера, администратор может создать виртуальную машину для использования в качестве шаблона, установив операционную систему, веб-сервер, любые вспомогательные пакеты и применив уникальные изменения конфигурации. Затем администратор может создать на основе работающей виртуальной машины шаблон, который будет использоваться для создания новых идентичных виртуальных машин по мере необходимости.
Пулы виртуальных машин - это группы виртуальных машин, которые основаны на заданном шаблоне и которые можно быстро предоставить пользователям. Разрешение на использование виртуальных машин в пуле дается на уровне пула: пользователю, которому дано разрешение на использование пула, будет назначена любая виртуальная машина из пула. В силу особенностей работы пула данные после сессии конкретного пользователя не сохраняются в ВМ. Поскольку виртуальные машины назначаются пользователям без учета того, какую виртуальную машину в пуле они использовали в прошлом, пулы не подходят для задач, требующих сохраняемости данных. Пулы виртуальных машин лучше всего подходят для задач, когда пользовательские данные хранятся централизованно, а для доступа к ним и их использования нужна виртуальная машина, или когда сохраняемость данных не важна. Пул создается вместе с виртуальными машинами, которые в него входят и после создания остаются в остановленном состоянии. Затем по запросу пользователя они запускаются.
2. Шаблоны
Чтобы создать шаблон, администратор создает виртуальную машину и выполняет ее индивидуальную настройку. Устанавливаются нужные пакеты, применяются индивидуальные настройки, и виртуальная машина подготавливается к целевому использованию, чтобы минимизировать изменения, которые придется вносить в нее после развертывания. Необязательным (но рекомендуемым) шагом перед созданием шаблона из виртуальной машины является генерализация. Генерализация призвана удалить такие сведения, как имена пользователей системы, пароли и информацию о часовом поясе, которые изменятся при развертывании. Генерализация не влияет на индивидуальные настройки. Генерализация гостевых машин Windows и Linux в среде zVirt обсуждается в статье Шаблоны в Руководстве пользователя. Для генерализации гостевых машин Linux используется virt-sysprep. Для генерализации гостевых машин Windows используется sys-prep.
Когда виртуальная машина, являющаяся основой для шаблона, удовлетворительно настроена, генерализирована (если нужно) и остановлена, администратор может создать из нее шаблон. При создании шаблона из виртуальной машины создается доступная только для чтения копия специально настроенного виртуального диска. Образ, доступный только для чтения, выступает в качестве базового для всех создаваемых впоследствии виртуальных машин, основанных на этом шаблоне. Иными словами, шаблон - это по сути индивидуально настроенный виртуальный диск, доступный только для чтения, с соответствующей конфигурацией виртуального оборудования. Оборудование виртуальных машин, созданных из шаблона, можно менять (например, выделить 2 ГБ ОЗУ виртуальной машине, созданной из шаблона с 1 ГБ ОЗУ). Однако виртуальный диск шаблона нельзя изменить, так как это приведет к изменению всех виртуальных машин на основе этого шаблона.
После создания шаблона его можно использовать как основу для множества виртуальных машин. При создании виртуальной машины из заданного шаблона можно выбрать тип выделяемого диска - тонкий (thin) или клонированный (clone). Виртуальные машины, клонируемые из шаблонов, используют полную копию базового образа шаблона, допускающую запись. Хотя они и не экономят место (в отличие от динамического выделения), зато не зависят от наличия шаблона. Виртуальные машины, создаваемые из шаблона способом динамического выделения, используют образ из шаблона, доступный только для чтения, в качестве базового образа. При этом требуется, чтобы шаблон и все созданные на его основе виртуальные машины хранились в одном домене хранения. Изменения данных и вновь сгенерированные данные сохраняются в образе с возможностью копирования при записи. Каждая виртуальная машина на основе шаблона использует один и тот же базовый образ, доступный только для чтения, а также уникальный для виртуальной машины образ с возможностью копирования при записи. Это экономит пространство за счет ограничения числа копий идентичных данных, хранящихся в хранилище. Кроме того, при частом использовании базового образа, доступного только для чтения, данные, к которым производится обращение, могут начать кэшироваться, что выльется в чистый рост производительности.
3. Пулы
Пулы виртуальных машин позволяют быстро предоставлять пользователям множество одинаковых виртуальных машин в качестве рабочих станций. Пользователи, у которых есть разрешение на доступ к виртуальным машинам из пула и их использование, получают доступную виртуальную машину, исходя из их положения в очереди запросов. Виртуальные машины в пуле не допускают сохранения данных. При каждом назначении виртуальной машины из пула она выделяется в своем базовом состоянии. Это идеально подходит для ситуаций, когда пользовательские данные хранятся централизованно.
Пулы виртуальных машин создаются из шаблона. Каждая виртуальная машина в пуле использует один и тот же базовый образ, доступный только для чтения, и временный образ, допускающий копирование при записи, для хранения измененных и вновь сгенерированных данных. Виртуальные машины в пуле отличаются от других виртуальных машин тем, что слой копирования при записи, который содержит сгенерированные пользователем и измененные данные, теряется при выключении виртуальной машины. Из этого следует, что для хранения пула виртуальных машин нужно столько же места, что и для его базового шаблона, плюс некоторое пространство для данных, сгенерированных или измененных за время использования. Пулы виртуальных машин - это эффективный способ предоставления вычислительной мощности пользователям для решения ряда задач без затрат на хранение, связанных с предоставлением каждому пользователю выделенной виртуальной рабочей станции.
Компания, оказывающая услуги технической поддержки, держит в штате 10 специалистов. Однако в любой заданный момент времени работают только 5 из них. Вместо того, чтобы создавать 10 виртуальных машин (по одной на каждого сотрудника службы поддержки), можно создать пул из 5 виртуальных машин. Сотрудники службы поддержки выделяют себе виртуальную машину в начале смены и возвращают ее в пул в конце смены.