Журнал PC Magazine/RE №08/2009 — страница 15 из 32

Рис. 1. Каждый раздел vPar использует отдельный экземпляр операционной системы

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

Разделы vPar обладают столь же высокой производительностью, как и аппаратные.

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

Преимущества

• Среди всех вариантов разбиения на разделы, кроме nPar, этот способ обеспечивает самую высокую производительность и масштабируемость за счет низких накладных расходов.

• Более высокая по сравнению с nPar степень гранулирования аппаратных ресурсов: один процессор (ядро), 64 Мбайт памяти и один адаптер ввода-вывода.

• Уже в HP-UX 11.23 поддерживается динамическое перемещение процессоров. В этой же версии ОС в аппаратных разделах динамически перемещать ресурсы невозможно.

• При динамическом добавлении памяти в раздел можно явно задать, какая часть этой памяти будет использоваться операционной системой в качестве CLM, а какая – в качестве ILM (с учетом общего объема CLM и ILM, сконфигурированного в системе или аппаратном разделе). Для аппаратных разделов вся динамически добавляемая память является локальной (CLM).

В Integrity VM 4.1 появилась возможность миграции VM на другой сервер без остановки приложений.

Ограничения

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

• Поддерживается только операционная система HP-UX.

Виртуальные машины (Integrity VM)

Основная область применения HP Integrity VM (рис. 2) – небольшие, но важные приложения, требующие изоляции ОС, но в среднем не требующие больших ресурсов (один процессор или меньше). Тем не менее серверы для эксплуатации этих приложений конфигурируются так, чтобы выдерживать пиковую нагрузку. В пиковые моменты такие системы могут загрузить и несколько процессоров, поэтому они устанавливаются, как правило, на небольших двух– или четырехпроцессорных серверах. В этом случае среднее использование ресурсов получается небольшим. Размещение подобных приложений на виртуальных машинах позволяет удовлетворить их требования во время пиков загрузки и возвращать ресурсы, когда активность снижается. Необходимые ресурсы предоставляются «по требованию» для реагирования на кратковременные всплески.

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

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

Такое решение одновременно и обеспечивает изоляцию систем, и существенно повышает степень использования ресурсов (т. е. экономит деньги).

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

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

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

В Integrity VM 4.1 появилась возможность миграции всей виртуальной машины вместе с гостевой ОС на другой сервер без остановки работающих приложений – Online VM Migration (рис. 3). На финальном этапе миграции система «замораживается» на несколько секунд, в течение которых на новый сервер копируются метаданные, страницы памяти, успевшие измениться за время переноса, и завершаются текущие операции с дисками. Затем система продолжает свою работу уже на новом сервере. Все, что при этом чувствует пользователь, – это кратковременное (не более 10 с) «зависание» своего приложения. Такая чрезвычайно ценная возможность полезна не только для балансировки нагрузки, но и при выполнении любых административных процедур, требующих остановки или перезагрузки системы.

Преимущества

• Обеспечивается более высокий уровень гранулирования при распределении ресурсов, чем в случае аппаратных и виртуальных разделов: между виртуальными машинами можно разделять отдельные физические процессоры и платы ввода-вывода. Доля ресурсов, выделяемых виртуальной машине, задается в процентах. Минимальная доля выделяемых ресурсов – 5 % физического процессора (для многоядерных процессоров – ядра).

• В качестве гостевой операционной системы может выступать не только HP-UX, но и Windows 2003, Linux Red Hat, Linux SUSE, причем виртуальные машины с различными ОС можно совмещать на одном физическом сервере.

• Возможность миграции виртуальной машины на другой сервер без остановки работающих приложений (Online VM Migration).

• Работают на любых системах Integrity, а не только на cell-based.

Рис. 3. Online VM Migration обеспечивает возможность миграции виртуальной машины без остановки приложений

Ограничения

• Ограниченная масштабируемость. Integrity VM предназначены для небольших систем, использующих небольшое число процессоров – не больше четырех, а лучше один-два. Увеличение числа виртуальных процессоров оказывает негативное влияние на производительность виртуальной машины из-за относительно высоких накладных расходов. Поэтому однопроцессорная конфигурация более эффективна, чем многопроцессорная. Сказанное означает ограниченную масштабируемость решений на базе Integrity VM. Крупные SMP-конфигурации эту технологию использовать не могут.

• Версии VM, работающие на HP-UX 11.23 (3.0, 3.5), используют не более четырех виртуальных процессоров на каждой виртуальной машине, а последние версии, функционирующие на HP-UX 11.31 (4.0, 4.1) – не более восьми.

• До версии 3.5 Integrity VM не рекомендовалось использовать для систем с интенсивным потоком ввода-вывода. В версии Integrity VM 3.5 появился усовершенствованный механизм виртуального дискового и сетевого ввода-вывода – Accelerated Virtual I/O (AVIO), который позволяет примерно в полтора раза увеличить производительность ввода-вывода и вдвое уменьшить процессорную нагрузку, создаваемую виртуальным вводом-выводом. В версиях 4.0 и 4.1 этот механизм был усовершенствован. Тем не менее необходимо с большой осторожностью подходить к внедрению VM там, где важна высокая пропускная способность ввода-вывода, и учитывать некоторые ограничения AVIO.

• Online VM Migration работает только при условии, что гостевая ОС – HP-UX. Число виртуальных процессоров в одной виртуальной машине не может превышать количество физических процессоров.

• Не работают на системах с архитектурой PA-RISC.

Усовершенствованный механизм Accelerated Virtual I/O существенно увеличил производительность виртуального ввода-вывода.

Безопасные разделы ресурсов (SRP)

Безопасные разделы ресурсов (SRP) поддерживаются программно внутри одной копии операционной системы HP-UX. При создании раздела ему выделяется определенная часть процессорных ресурсов, оперативной памяти сервера и пропускной способности ввода-вывода для группы дисковых томов.

Процессорные ресурсы можно выделять либо используя наборы процессоров (PSET), либо средствами Fair Share Scheduler (FSS), который представляет собой планировщик 2-го уровня над стандартным планировщиком ОС. При использовании PSET процессоры (ядра) выделяются разделу целиком. При применении FSS распределение процессорных ресурсов между разделами задается в процентах, и в соответствии с этим распределением процессорное время выделяется каждому разделу квантами по 10 мс.

Разделы ресурсов тесно интегрированы с контейнерами безопасности операционной системы HP-UX.