Администрирование пулов ресурсов#
Определение пула ресурсов#
Пул ресурсов – это совокупность из одного или нескольких серверов Numa vServer, соединённых друг с другом в общую единицу, на которой возможно развертывание, запуск и исполнение ВМ. Один пул может объединить до 64 серверов.
В пуле ресурсов есть один физический сервер, называемый мастером, который предоставляет интерфейс для администрирования всем пулом. По мере надобности мастер передает команды отдельным участникам.
При использовании общего хранилища пул ресурсов позволяет запускать виртуальные машины на любом сервере Numa vServer, имеющим достаточный объем оперативной памяти для функционирования ВМ, и в дальнейшем динамически перемещаться между серверами с минимальными простоями. При сбое отдельного сервера администратор может перезапустить отказавшую ВМ на другом сервере того же пула ресурсов. Если для пула включен механизм обеспечения высокой доступности (High Availability, HA), то в случае отказа сервера ВМ будут автоматически перемещены на работающий сервер.
Примечание
Если происходит отказ мастера пула, то автоматическое переизбрание мастера происходит только если в пуле настроен механизм обеспечения высокой доступности.
Требования к созданию пула ресурсов#
При конфигураии пула учитывайте нижеприведенные требования.
Требования к аппаратному обеспечению#
- Вендор ЦП (Intel, AMD) должен быть одинаковым на всех серверах.
- На серверах пула должна быть установлена одна версия программного обеспечения Numa vServer.
В зависимости от схожести ЦП, пул может быть одним из следующих типов:
- Гомогенный пул — это совокупность серверов с идентичными ЦП. ЦП на сервере, присоединяющемся к гомогенному пулу ресурсов, должны быть тех же вендоров, моделей и характеристик, что и ЦП на серверах, уже находящихся в пуле.
- Гетерогенный пул — это совокупность серверов с разными ЦП. На практике часто бывает трудно получить несколько серверов с одинаковыми процессорами, поэтому допускаются незначительные изменения. Если необходимо, чтобы в вашей среде серверы с разными ЦП находились в одном и том же пуле ресурсов, вы можете принудительно объединить пул (см. раздел Создание гетерогенного пула ресурсов).
Требования к конфигурации сервера, присоединяющегося к пулу#
- Сервер не является членом существующего пула ресурсов.
- На сервере не настроено общее хранилище.
- На сервере не размещены ни работающие, ни приостановленные виртуальные машины.
- На виртуальных машинах сервера не ведутся активные операции, такие как завершение работы виртуальной машины.
- Системное время на сервере синхронизировано с системным временем мастера пула (например, с помощью NTP).
- Интерфейс управления сервером не агрегирован. Вы можете настроить интерфейс управления, когда сервер успешно присоединится к пулу.
- Управляющий IP-адрес является статическим, либо настроен на самом сервере, либо с помощью соответствующей конфигурации на DHCP-сервере.
Серверы Numa vServer в пулах ресурсов могут содержать различное количество физических сетевых интерфейсов и иметь локальные хранилища данных различного размера.
Требования к хранилищам данных#
Преимущества пулов (например, возможность динамически выбирать, на каком хосте Numa vServer запускать ВМ) доступны, только при наличии хотя бы одного подключенного общего хранилища. При возможности необходимо отложить создание пула до тех пор, пока подобное хранилище не станет доступно. Когда это произойдёт, рекомендуется переместить существующие ВМ и диски, которых хранились локально, в общее хранилище пула.
Примечание
Серверы, предоставляющие общее хранилище NFS, iSCSI, SAMBA для пула, должны иметь статический IP-адрес или быть адресуемыми в DNS.
Создание пула ресурсов#
Когда новый сервер присоединяется к пулу ресурсов, присоединяющийся сервер синхронизирует свою локальную базу данных со всей базой данных пула и наследует некоторые параметры из пула:
- конфигурации ВМ, локального и удаленного хранилища добавляются в общую базу данных пула. Если возможно или необходимо сделать ресурсы общими, они будут собраны в объединённом хосте в пуле;
- присоединяемый сервер наследует существующие общие хранилища для пула, также создаются соответствующие записи физического блочного устройства (PBD) так, чтобы новый сервер мог автоматически получить доступ к существующему общему хранилищу;
- сетевая информация наследуется присоединяемым сервером частично: наследуются структурные особенности сетевого адаптера, виртуальных сетей VLAN, агрегаций сетевых интерфейсов. Данные установленных политик не наследуются. К подобным свойствам, которые не могут получить значения наследованием и должны быть переконфигурированы вручную, относятся:
- IP-адреса интерфейсов управления, которые сохраняются из исходной конфигурации;
- местонахождение интерфейса управления, которое не меняется по сравнению с исходной конфигурацией. Например, если другие серверы пула имеют свои интерфейсы управления в агрегации интерфейсов, то добавляемый сервер должен быть в обязательном порядке включён в агрегацию после вхождения в пул;
- сетевые адаптеры, выделенные для соединения с хранилищем, которые должны быть пересвязаны с новым хостом через интерфейс командной строки, и физические блочные устройства, которые для правильного распределения трафика должны быть переподключены (это вызвано отсутствием операции присвоения IP-адресов при объединении пула; без правильной настройки интерфейсы, выделенные для соединения с хранилищем, бесполезны). Более подробно о настройке сетевых интерфейсов с помощью команд cм. в разделе Настройка сетевого интерфейса, выделенного для соединения с хранилищем.
Примечание
Вы можете присоединить новый сервер к пулу ресурсов только в том случае, если интерфейс управления сервером находится в той же VLAN, что и пул ресурсов.
Добавление сервера в пул ресурсов#
Для добавления сервера host2 в пул ресурсов с мастером host1 выполните следующие действия:
- Откройте консоль на сервере host2.
-
Выполните следующую команду:
где:master-address
– IP-адрес или доменное имя сервера host1;master-username
– логин администратора, присвоенный при установке Numa vServer на сервер host1;master-password
– пароль администратора, присвоенный при установке Numa vServer на сервер host1.
Создание гетерогенного пула ресурсов#
Numa vServer позволяет объединять в пул отличающимся по своим характеристикам серверам. Такой пул принято называть гетерогенным. Создание гетерогенного пула возможно при использовании технологий в процессорах Intel (FlexMigration) и AMD (Extended migration), которые обеспечивают процессор свойствами «маскирования» (masking) или «выравнивания» (leveling). Эти свойства позволяют конфигурировать процессор так, чтобы он отображал другие марку, модель и функциональность, чем он есть на самом деле. Эта функция позволяет вам создавать пулы ресурсов с разнородными ЦП, но при этом безопасно поддерживать живую миграцию.
Условия создания гетерогенного пула:
- Процессоры сервера, вступающего в пул, должны быть от того же поставщика (AMD, Intel), что и процессоры на серверах, которые уже находятся в пуле. Однако идентичность семейства, модели и версии не обязательна.
- Процессоры сервера, вступающего в пул, должны поддерживать технологию FlexMigration фирмы Intel или технологию Extended Migration фирмы AMD.
- Характеристики процессоров сервера, являющихся членами пула, должны составлять подмножество набора характеристик процессоров сервера, вступающего в пул.
- сервер, вступающий в пул, и серверы, находящиеся в пуле, должны работать с одинаковыми версиями программного обеспечения Numa vServer.
Для объединения серверов host1 и host2 в гетерогенный пул ресурсов выполните следующие действия:
- Откройте консоль на сервере host2.
-
Выполните следующую команду:
где:master-address
– IP-адрес или доменное имя сервера host1;master-username
– логин администратора, присвоенный при установке Numa vServer на сервер host1;master-password
– пароль администратора, присвоенный при установке Numa vServer на сервер host1.
Любые изменения в наборе конфигураций пула не влияют на виртуальные машины, которые в данный момент работают в пуле. Работающая ВМ продолжает использовать набор конфигураций, который был применен при запуске. Этот набор конфигураций фиксируется при загрузке и сохраняется при переносе, приостановке и возобновлении операций. Если уровень пула падает, когда к нему присоединяется сервер с более низкими характеристиками, работающую виртуальную машину можно перенести на любой сервер в пуле, кроме недавно добавленного. При перемещении или миграции виртуальной машины на другой сервер в пределах или между пулами Numa vServer сравнивает набор функций виртуальной машины с набором функций сервера назначения. Если установлено, что наборы функций совместимы, виртуальная машина может мигрировать. Это позволяет виртуальной машине свободно перемещаться внутри и между пулами независимо от того, какие функции использует виртуальная машина.
При создании гетерогенного пула маскирование процессора и выравнивание процессора по функциональным возможностям осуществляется автоматическом режиме и не требует ввода дополнительных команд и конфигураций.
Присвоение имени пулу ресурсов#
По умолчанию серверы Numa vServer принадлежат безымянному пулу или пулу, имеющего имя мастер сервера. Для присвоения нового имени пулу ресурсов выполните команду:
pool_uuid
воспользуйтесь функцией автодополнения (клавиша Tab) или командой xe pool-list
.
Добавление системы хранения с общим доступом#
Подсказка
Полный список поддерживаемых типов хранилищ приведен в разделе Создание и настройка хранилищ данных.
В данном разделе описывается пример создания хранилища данных с общим доступом на существующем сервере NFS.
Для добавления общего NFS-хранилища к пулу ресурсов через CLI Numa vServer выполните следующие действия:
- Откройте консоль на любом сервере в пуле.
-
Создайте хранилище данных на
<server:/path>
:где параметр
device-config:server
– адрес сервера, на котором запущен сервер NFS, параметрdevice-config:serverpath
– путь к каталогу на сервере NFS. После установки параметраshared=true
общее хранилище будет автоматически присоединено к каждому серверу в пуле и в дальнейшем любые подключаемые к пулу серверы будут присоединены к этому хранилищу. UUID созданного хранилища данных будет выведен на экран. -
Узнайте UUID пула:
-
Задайте хранилище по умолчанию в качестве места хранения для участников пула:
После выполнения данной команды все будущие ВМ будут создавать свои диски в общем хранилище (см. раздел Создание и настройка хранилищ данных для получения информации по созданию других типов общих хранилищ).
Управление серверами в пуле ресурсов#
Выключение и перезапуск сервера#
Рекомендуем использовать команды xe для выключения или перезапуска серверов Numa vServer. Не используйте аппаратные методы сброса для выключения и/или перезапуска серверов во время их нормальной работы. Это может привести к неожиданному поведению серверов и пула.
Чтобы завершить работу или перезапустить сервер, используйте следующие команды:
- Запретите запуск или миграцию любых новых виртуальных машин на выбранный сервер:
- При необходимости перенесите все работающие виртуальные машины с сервера:
-
Выключите или перезапустите хост с помощью одной из следующих команд:
- Чтобы корректно завершить работу хоста:
- Для корректной перезагрузки хоста:
- Чтобы корректно завершить работу хоста:
Вывод сервера из пула ресурсов#
Внимание!
- Перед выводом сервера из пула убедитесь, что все ВМ, запущенные на этом сервере, выключены или перенесены на другие серверы, иначе сервер нельзя будет вывести из пула.
- Нельзя извлекать сервер, если он содержит важные данные на его локальном диске, так как все данные будут удалены после извлечения. Если нужно сохранить эти данные, следует скопировать ВМ в общее хранилище пула командой:
Для вывода сервера из пула ресурсов выполните следующие действия:
- Откройте консоль на любом сервере в пуле.
- Узнайте UUID сервера:
- Извлеките выбранный сервер из пула:
После вывода сервера из пула, сервер будет перезагружен, переинициализирован и возвращен в исходное состояние (состояние после инсталляции).
После извлечения сервера из пула сохранённые на нём ВМ будут отображены в базе данных пула и видны другими участникам пула. Они не могут быть запущены, пока местоположения ассоциированных с ними виртуальных дисков в общей хранилище не станут видны серверам пула или пока диски не будут удалены. По этой причине рекомендуется перемещать любое локальное хранилище в общее хранилище при вводе нового сервера в пул, это позволит вывести из пула любой отдельный сервер без потери данных.
Подготовка серверов пула к обслуживанию#
Перед проведением на сервере, входящего в пул, операций по обслуживанию необходимо заблокировать данный сервер (это предотвратит несанкционированный старт ВМ на нем), затем переместить его ВМ на другой сервер пула.
Примечание
Перевод в режим обслуживания мастера пула приведет к потере данных циклической базы данных за последние 24 часа для недействующих ВМ. Причиной является синхронизация резервных копий, которая происходит каждые 24 часа.
Для подготовки участника пула к обслуживанию и возобновления его функционирования после проведения обслуживания выполните следующую последовательность действий:
- Заблокируйте сервер:
- Переместите ВМ к другим серверам в пуле.
- Выполните требуемые операции по обслуживанию сервера.
- После выполнения операций по обслуживанию разблокируйте сервер:
После разблокировки обслуженного сервера на нем можно запустить ВМ.