Для улучшения работы сайта мы используем файлы cookies. Оставаясь на сайте, вы соглашаетесь с политикой обработки персональных данных.

Управление кластерами

1. Введение в кластеры

Кластер - логическая группа хостов с общими доменами хранения и ЦП одного типа (Intel или AMD). Если модели ЦП хостов относятся к разным поколениям, то используются только те функции, которые присутствуют во всех моделях.

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

Количество хостов и количество виртуальных машин, относящихся к кластеру, отображаются в списке результатов поиска как Количество хостов (Host Count) и Количество ВМ (VM Count) соответственно.

В кластерах выполняются виртуальные машины или серверы хранения Gluster.

При развертывании гиперконвергентной среды эти функции могут быть включены для кластера одновременно.

Во время установки ПО «zVirt Max» создает кластер Default в центре данных Default.

zvirt arch 2
Рисунок 1. Кластер

2. Задачи, относящиеся к кластеру

Некоторые параметры кластеров не применимы к кластерам Gluster.

2.1. Создание нового кластера

Центр данных может содержать несколько кластеров, а кластер может содержать несколько хостов. Все хосты в кластере должны иметь одинаковую архитектуру ЦП. Чтобы оптимизировать типы ЦП, создавайте хосты до создания кластера. После создания кластера хосты можно сконфигурировать, нажав кнопку Помощник (Guide Me).

Порядок действий:
  1. Нажмите Ресурсы (Compute)  Кластеры (Clusters).

  2. Нажмите Новый (New).

  3. В выпадающем списке выберите Центр данных (Data Center), к которому будет относиться кластер.

  4. В поле Имя (Name) введите имя кластера.

  5. В поля Описание (Description) и Комментарий (Comment) введите описание кластера и, при необходимости добавьте комментарий.

  6. В выпадающем списке Сеть управления (Management Network) выберите сеть, чтобы назначить роль сети управления.

  7. Выберите Архитектура ЦП (CPU Architecture). При выборе x86_64 становится доступным выбор Тип чипсета/ПО (Chipset/Firmware Type).

  8. В качестве Типа ЦП (CPU Type) выберите самое старое семейство ЦП среди хостов, которые войдут в кластер. Типы ЦП перечисляются от самого старого к самому новому.

  9. В выпадающем списке выберите Тип чипсета/ПО (Chipset/Firmware Type) для создаваемых виртуальных машин и шаблонов в кластере.

  10. Установите флажок Изменить существующие ВМ/шаблоны с чипсетом I440fx на чипсет Q35 с BIOS (Change existing VMs/Templates from I440fx to Q35 Chipset with BIOS) при необходимости.

  11. В выпадающем списке выберите Версию совместимости (Compatibility Version) кластера.

  12. В выпадающем списке выберите Тип коммутатора (Switch Type).

  13. Выберите Тип межсетевого экрана (Firewall Type) для хостов в кластере: Firewalld (по умолчанию) или iptables.

  14. В выпадающем списке выберите Провайдер сети по умолчанию (Default Network Provider)

  15. Установите Максимальный порог памяти логирования (Maximum Log Memory Threshold)

  16. Установите флажок Включить службу Virt (Enable Virt Service), чтобы указать, будет ли кластер заполняться хостами с виртуальными машинами.

  17. Установите флажок Включить службу Virt (Enable Virt Service) или Включить службу Gluster (Enable Gluster Service), чтобы указать, будет ли кластер заполняться хостами с виртуальными машинами или узлами с включенной службой Gluster.

  18. При желании можно установить флажок Дополнительный источник генератора случайных чисел /dev/hwrng (Additional Random Number Generator source: /dev/hwrng source), чтобы указать аппаратный генератор случайных чисел, который будут использовать все хосты кластера. Устройство /dev/urandom source (предоставлено операционной системой Linux) включено по умолчанию.

  19. Откройте вкладку Оптимизация (Optimization), чтобы выбрать пороговое значение для совместного использования страницы памяти в кластере, а также при желании включите управление потоками ЦП, динамическое распределение памяти (memory ballooning), совместное использование памяти и выберите механизм её распределения на хостах кластера.

  20. Откройте вкладку Политика миграции (Migration Policy), чтобы определить политику миграции виртуальных машин в кластере.

  21. Откройте вкладку Политика планирования (Scheduling Policy), чтобы при желании настроить политику планирования и оптимизировать планировщик, включить доверенную службу для хостов кластера и резервирование высокой доступности (HA Reservation), а также выбрать политику серийных номеров.

  22. Откройте вкладку Консоль (Console), чтобы при желании переопределить глобальный SPICE-прокси (если он есть) и задать адрес SPICE-прокси для хостов кластера.

  23. Откройте вкладку Политика изоляции (Fencing policy), чтобы включить или выключить ограничение (изоляцию) в кластере, а также выберите опции, отвечающие за ограничение (изоляцию).

  24. Откройте вкладку Пул MAC-адресов (MAC Address Pool), чтобы указать пул MAC-адресов, отличный от заданного по умолчанию для кластера. Дополнительные сведения о способах создания, изменения или удаления пулов MAC-адресов см. в разделе Пулы MAC-адресов.

  25. Нажмите OK, чтобы создать кластер и открыть окно Помощник по созданию кластера (Cluster - Guide Me).

  26. Окно Помощник (Guide Me) содержит список сущностей, которые нужно сконфигурировать для кластера. Сконфигурируйте эти сущности или отложите конфигурирование, нажав Настроить позже (Configure Later). Чтобы возобновить конфигурирование, выберите кластер и нажмите Дополнительные действия (More Actions) , а затем нажмите Помощник (Guide Me).

Хосты, у которых семейство ЦП старше указанного в поле Тип ЦП (CPU Type), не могут стать частью этого кластера.
Добавлять хосты можно только к кластерам с типом межсетевого экрана firewalld.

2.2. Описание общих настроек кластера

В приведенной ниже таблице описаны настройки вкладки Общее (General) в окнах Новый кластер (New Cluster) и Изменить кластер (Edit Cluster). При нажатии кнопки OK система подсвечивает некорректно введенные значения оранжевым цветом, не давая принять изменения. Кроме того, поля снабжены подсказками, которые указывают ожидаемые значения или диапазон значений.

Таблица 1. Общие настройки кластера
Поле Описание/действие

Центр данных (Data Center)

Центр данных, в котором будет содержаться кластер. Центр данных должен быть создан до добавления кластера.

Имя (Name)

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

Описание/комментарий (Description/Comment)

Описание кластера или дополнительные примечания. Эти поля являются рекомендованными, но не обязательными

Сеть управления (Management Network)

Логическая сеть, которой будет назначена роль сети управления. По умолчанию - ovirtmgmt. Эта сеть также будет использоваться для миграции виртуальных машин, если сеть миграции не подключена к хосту-источнику или хосту-приемнику. В существующих кластерах сеть управления можно изменить, только нажав кнопку Управление сетями (Manage Networks) на вкладке Логические сети (Logical Networks) в подробном представлении

Архитектура ЦП (CPU Architecture)

Архитектура ЦП кластера. Все хосты в кластере должны иметь указанную архитектуру. В зависимости от выбранной архитектуры ЦП доступны различные типы ЦП

  • не определено (undefined): все остальные типы ЦП.

  • x86_64: ЦП типа Intel и AMD

Тип ЦП (CPU Type)

Самое старое семейство ЦП в кластере. Список типов ЦП приведен в разделе Требования к ЦП в Руководстве по планированию и требованиям (Planning and Prerequisites Guide). Его изменение после создания кластера приведет к серьезному нарушению работы. Установите тип ЦП, ориентируясь на самую старую модель ЦП хоста в кластере. Использоваться могут только те функции, которые есть во всех моделях. Для ЦП типа Intel и AMD модели ЦП перечисляются в логическом порядке от самой старой к самой новой

Версия совместимости (Compatibility Version)

Нельзя выбрать более раннюю версию, чем та, что указана для центра данных

Тип коммутатора (Switch Type)

Тип коммутатора, используемого кластером.

  • Мост (Linux Bridge) - стандартный коммутатор ПО «zVirt Max»

  • Open vSwitch (OVS)- обеспечивает поддержку сетевых функций Open vSwitch

Тип межсетевого экрана (Firewall Type)

Указывает тип межсетевого экрана для хостов в кластере: Firewalld (по умолчанию) или iptables. Добавлять хосты можно только к кластерам с типом межсетевого экрана firewalld

Провайдер сети по умолчанию (Default Network Provider)

Указывает внешнего поставщика сети по умолчанию, которого будет использовать кластер. Если выбрать ovirt-provider-ovn, то хосты, добавляемые в кластер, автоматически будут настраиваться на взаимодействие через поставщика OVN. Изменение поставщика сети по умолчанию потребует переустановки всех хостов в кластере для того, чтобы изменения вступили в силу

Максимальный порог памяти логирования (Maximum Log Memory Threshold)

Задает пороговое значение максимального потребления памяти (в процентах или в виде абсолютной величины в МБ), факт достижения которого вносится в журнал. Сообщение вносится в журнал, если использование памяти хоста превышает это процентное значение или если объем доступной памяти хоста падает ниже абсолютного значения в МБ. Значение по умолчанию - 95%

Включить службу Virt (Enable Virt Service)

При нажатии кнопки-переключателя хосты в этом кластере будут использоваться для запуска виртуальных машин

Включить службу Gluster (Enable Gluster Service)

При нажатии кнопки-переключателя хосты в этом кластере будут использоваться в качестве узлов серверов хранения ПО «zVirt Max»

Импорт существующей конфигурации Gluster (Import existing gluster configuration)

Этот флажок можно установить, только если отмечена кнопка-переключатель Включить службу Gluster (Enable Gluster Service). Эта опция позволяет импортировать существующий кластер с поддержкой Gluster и все подключенные к нему хосты в менеджер управления. Следующие параметры необходимы для каждого хоста в импортируемом кластере:

  • Имя хоста (Hostname): Введите IP-адрес или FQDN хост-сервера Gluster.

  • Публичный ключ SSH хоста (Host ssh public key (PEM)): позволяет обратиться к хосту без пароля и убедиться, что вы подключаетесь к правильному хосту.

  • Пароль (Password): Введите root-пароль, необходимый для взаимодействия с хостом.

Дополнительный источник - генератор случайных чисел (Additional Random Number Generator source)

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

2.3. Описание настроек оптимизации

Пояснения относительно памяти

Совместное использование страницы памяти позволяет виртуальным машинам использовать до 200% от выделенной им памяти благодаря использованию памяти, которая не используется в других виртуальных машинах. Этот процесс основан на том допущении, что виртуальные машины в среде ПО «zVirt Max» не будут одновременно работать на полной мощности, а значит, неиспользуемую память можно временно выделить конкретной виртуальной машине.

Пояснения относительно ЦП
  • Для процессов, не очень сильно загружающих ЦП, можно запускать виртуальные машины с общим количеством процессорных ядер, превышающим количество ядер хоста. Плюсы такого подхода следующие:

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

    • Это также позволяет конфигурировать виртуальные машины с топологиями ЦП, которые иначе были бы невозможны - например, когда количество виртуальных ядер находится в диапазоне между количеством ядер хоста и количеством потоков хоста.

  • Для достижения наилучшей производительности и особенно для процессов, сильно загружающих ЦП, на виртуальной машине следует использовать ту же топологию, что и на хосте, чтобы и для хоста, и для виртуальной машины ожидаемая работа кэша была одинаковой. Когда на хосте включена гиперпоточность, QEMU-процесс трактует гиперпотоки (hyperthreads) хоста как ядра, поэтому виртуальная машина не знает, что она работает на одном ядре с несколькими потоками. Такое поведение может повлиять на производительность виртуальной машины, поскольку виртуальное ядро, которое фактически соответствует гиперпотоку (hyperthread) в ядре хоста, может использовать один и тот же кэш вместе с другим гиперпотоком в том же ядре хоста, в то время как виртуальная машина трактует его как отдельное ядро.

В приведенной ниже таблице описаны настройки вкладки Оптимизация (Optimization) окон Новый кластер (New Cluster) и Изменить кластер (Edit Cluster).

Таблица 2. Настройки оптимизации
Поле Описание/действие

Оптимизация памяти (Memory Optimization)

  • Выключить перераспределение памяти (None - Disable memory overcommit): Отключает совместное использование страниц памяти.

  • Для серверной нагрузки - разрешить перераспределение физической памяти на 150% от системной памяти на каждом хосте (For Server Load - Allow scheduling of 150% of physical memory): Устанавливает порог совместного использования страницы памяти в значение, равное 150% от объема системной памяти на каждом хосте.

  • Для нагрузки рабочей станции - разрешить перераспределение физической памяти на 200% от системной памяти на каждом хосте (For Desktop Load - Allow scheduling of 200% of physical memory): Устанавливает порог совместного использования страницы памяти в значение, равное 200% от объема системной памяти на каждом хосте.

Симметричная многопоточность (Symmetric Multithreading)

Позволяет отключить использование гиперпоточности в ЦП (hyperhreading). При этом следующая опция Потоки ЦП (CPU Threads) становится недоступной

Потоки ЦП (CPU Threads)

Установка флажка Считать потоки как ядра (Count Threads As Cores) позволяет хостам обеспечить работу виртуальных машин с общим количеством процессорных ядер, превышающим количество ядер хоста. Если этот флажок установлен, открытые потоки хостов трактуются как ядра, которые виртуальные машины могут использовать. Например, 24-ядерная система с 2 потоками на ядро (всего 48 потоков) может запускать виртуальные машины, каждая из которых содержит до 48 ядер, а алгоритмы расчета загрузки ЦП хоста будут сравнивать нагрузку с удвоенным количеством потенциально используемых ядер.

Динамическое выделение памяти (Memory Balloon)

Если установлен флажок Включить оптимизацию динамического выделения памяти (Enable Memory Balloon Optimization), то на виртуальных машинах, работающих на хостах в этом кластере, становится возможным выделение памяти в объеме, превышающем физически доступный (memory overcommitment). Когда этот флажок установлен, менеджер избыточного выделения памяти (Memory Overcommit Manager, MoM) начинает применять динамическое выделение памяти во всех возможных ситуациях, при этом каждой виртуальной машине будет предоставлен как минимум тот гарантированный объем памяти, который был указан при её создании. Для динамического выделения памяти виртуальная машина должна иметь устройство balloon с соответствующими драйверами. Каждая виртуальная машина включает в себя такое устройство по умолчанию, если только оно не было удалено специально. Каждый хост в этом кластере получает обновление политики динамического выделения памяти, когда его статус меняется на Включен (Up). При необходимости вы можете вручную обновить политику динамического выделения памяти на хосте, не меняя статус. Смотрите Обновление политики Менеджера избыточного выделения памяти (MoM) на хостах в кластере. Важно понимать, что в некоторых сценариях динамическое выделение памяти (ballooning) может вступать в конфликт с объединением одинаковых страниц памяти (KSM). В таких случаях Менеджер избыточного выделения памяти (MoM) будет пытаться скорректировать объем выделения памяти (ballooning), чтобы минимизировать конфликты. Кроме того, в ряде сценариев динамическое выделение памяти может привести к тому, что производительность для виртуальной машины будет неоптимальной. Администраторам рекомендуется с осторожностью использовать данную опцию в целях оптимизации.

Контроль KSM

Если выбрана опция Включить KSM (Enable KSM), то MoM может запустить KSM, когда это необходимо и может дать экономию памяти, выгода от которой перевешивает затраты на ЦП.

2.4. Описание настроек политик миграции

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

Таблица 3. Описание настроек политик миграции
Политика Описание

Значение по умолчанию для кластера - «Минимальный простой» (Minimal downtime)

Переопределение в vdsm.conf по-прежнему применимо. Гостевой хук-механизм выключен.

Минимальный простой (Minimal downtime)

Политика разрешает миграцию виртуальных машин в типичных ситуациях. У виртуальных машин не должно быть значительного простоя. Процесс миграции будет прерван, если синхронизация состояния памяти слишком затянулась (зависит от итераций QEMU, максимум 500 миллисекунд).

Миграция после копирования (Post-copy migration)

Когда применяется эта политика, она приостанавливает виртуальные ЦП мигрирующей виртуальной машины на хосте-источнике, переносит только минимальное количество страниц памяти, активирует виртуальные ЦП виртуальной машины на хосте-приемнике и переносит оставшиеся страницы памяти, пока виртуальная машина работает на хосте-приемнике. Политика миграции с пост-копированием сначала пытается провести предварительное копирование, чтобы убедиться, что синхронизация состояния памяти пройдет успешно. Миграция переключается в режим с пост-копированием, если при миграции виртуальной машины затянулась синхронизация состояния памяти. Так значительно сокращается время простоя мигрируемой виртуальной машины, а также гарантируется, что миграция завершится независимо от того, насколько быстро меняются страницы памяти виртуальной машины на хосте-источнике. Это оптимальный вариант для миграции виртуальных машин в условиях интенсивного непрерывного использования, когда их невозможно перенести стандартным способом с предварительным копированием. Недостаток этой политики заключается в том, что на этапе пост-копирования виртуальная машина может сильно замедлиться из-за переноса недостающих частей памяти между хостами.

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

Приостановка при необходимости (Suspend workload if needed)

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

Очень большие ВМ (Very large VMs)

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

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

Таблица 4. Описание полосы пропускания
Политика Описание

Авто (Auto)

Полоса пропускания копируется из настройки Ограничение скорости (Мбит/с) (Rate Limit (Mbps)) в политике QoS сети хоста (Host Network QoS) в центре данных. Если ограничение скорости не установлено, то оно рассчитывается как минимальное значение скорости соединения отправляющего и принимающего сетевых интерфейсов. Если ограничение скорости не установлено, а скорости каналов недоступны, то оно определяется локальной настройкой Менеджера виртуальных рабочих мест и серверов (VDSM) на отправляющем хосте.

Гипервизор (по умолчанию) (Hypervisor default)

Полоса пропускания контролируется локальной настройкой VDSM на хосте-источнике.

Пользовательский (Custom)

Задается пользователем (в Мбит/с). Это значение делится на количество одновременных миграций (по умолчанию 2, чтобы учесть входящие и исходящие миграции). Поэтому заданная пользователем полоса пропускания должна быть достаточно большой, чтобы вместить все одновременные миграции.

Например, если Пользовательская (Custom) полоса пропускания задана в размере 600 Мбит/с, то максимальная полоса пропускания при миграции виртуальной машины на самом деле составляет 300 Мбит/с.

Политика отказоустойчивости определяет приоритет виртуальных машин при миграции.

Таблица 5. Настройки политики отказоустойчивости
Поле Описание/действие

Мигрировать ВМ (Migrate Virtual Machines)

Переносятся все виртуальные машины в заданном порядке приоритетности.

Мигрировать только ВМ в режиме высокой доступности (Migrate only Highly Available Virtual Machines)

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

Не мигрировать виртуальные машины (Do Not Migrate Virtual Machines)

Не дает переносить виртуальные машины.

Таблица 6. Дополнительные свойства
Поле Описание/действие

Включить шифрование при миграции (Enable migration encryption)

Эта настройка позволяет включить/отключить шифрование виртуальной машины в процессе миграции.

  • Значение по умолчанию (Не шифровать) (Default (Don’t encrypt))

  • Шифровать (Encrypt)

  • Не шифровать (Don’t encrypt)

Параллельные миграции (Parallel Migrations)

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

Количество соединений ВМ миграций (Количество соединений ВМ миграций)

Позволяет указать количество соединений для параллельных миграций. Активируется при выборе Custom в поле Параллельные миграции (Parallel Migrations). Допустимые значения от 2 до 255

2.5. Описание настроек политик планирования

Политика планирования позволяет задать параметры использования и распределения виртуальных машин между доступными хостами. Задайте политику планирования, чтобы включить автоматическую балансировку нагрузки между хостами в кластере. Независимо от политики планирования, виртуальная машина не запустится на хосте с перегруженным ЦП. По умолчанию ЦП хоста считается перегруженным, если нагрузка на него превышает 80% в течение 5 минут, но эти значения можно изменить с помощью политик планирования. Дополнительные сведения см. в разделе Политики планирования в Руководстве по администрированию.

Таблица 7. Свойства на вкладке политики планирования
Поле Описание/действие

Выбор политики

Выберите политику из выпадающего списка.

  • Не назначена (none): Балансировка нагрузки или распределение питания между хостами для уже работающих виртуальных машин выключены. Этот режим выбран по умолчанию. Когда виртуальная машина запущена, ресурсы памяти и загрузка ЦП равномерно распределяются между всеми хостами в кластере. Дополнительные виртуальные машины, подключенные к хосту, не запустятся, если параметры CpuOverCommitDurationMinutes, HighUtilization или MaxFreeMemoryForOverUtilized этого хоста достигли заданных значений.

  • Равномерное распределение (evenly_distributed): Распределяет нагрузку на оперативную память и ЦП равномерно между всеми хостами в кластере. Дополнительные виртуальные машины, подключенные к хосту, не запустятся, если параметры CpuOverCommitDurationMinutes, HighUtilization или MaxFreeMemoryForOverUtilized этого хоста достигли заданных значений.

  • Обслуживание кластера (cluster_maintenance): Ограничивает активность в кластере во время выполнения задач технического обслуживания. Нельзя запускать новые виртуальные машины, кроме виртуальных машин с признаком высокой доступности. В случае отказа хоста виртуальные машины с признаком высокой доступности перезапустятся в установленном порядке, и любая виртуальная машина сможет мигрировать.

  • Энергосбережение (power_saving): Распределяет загрузку ОЗУ и ЦП по подмножеству доступных хостов, чтобы снизить энергопотребление на недогруженных хостах. Если на некоторых хостах загрузка ЦП находится ниже нижнего значения загрузки дольше заданного интервала времени, то, чтобы их питание можно было отключить, все виртуальные машины переносятся с них на другие хосты. Дополнительные виртуальные машины, подключенные к хосту, не запустятся, если загрузка этого хоста достигла заданного верхнего значения загрузки.

  • Равномерное распределение ВМ (vm_evenly_distributed): Распределяет виртуальные машины равномерно между хостами, исходя из количества виртуальных машин. Кластер считается несбалансированным, если на любом из хостов запущено больше виртуальных машин, чем указано в параметре HighVmCount, и есть хотя бы один хост, количество виртуальных машин на котором выходит за предельное значение параметра MigrationThreshold.

Свойства

В зависимости от выбранной политики доступны следующие ниже свойства. При необходимости их можно изменить:

  • HighVmCount: Устанавливает минимальное количество виртуальных машин, которые должны работать на одном хосте для активизации балансировки нагрузки. По умолчанию это 10 работающих виртуальных машин на хост. Балансировка нагрузки будет включена, если хотя бы на одном хосте в кластере будет достигнуто значение параметра HighVmCount по количеству работающих виртуальных машин.

  • MigrationThreshold: Определяет "буфер" перед переносом виртуальных машин с хоста. Это максимальная разница (включительно) между количеством виртуальных машин на наиболее загруженном и наименее загруженном хостах. Кластер сбалансирован, если для каждого хоста в кластере количество виртуальных машин не выходит за пределы диапазона миграции. Значение по умолчанию - 5.

  • SpmVmGrace: Определяет количество слотов для виртуальных машин, которые должны быть зарезервированы на хостах SPM. Загрузка на хосте SPM будет ниже, чем на других хостах, т.е. эта переменная определяет, насколько меньше виртуальных машин может работать на хосте SPM по сравнению с другими хостами. Значение по умолчанию - 5.

  • CpuOverCommitDurationMinutes: Задает время (в минутах), в течение которого хост может работать при загрузке ЦП, выходящей за заданные значения, прежде чем вступит в действие политика планирования. Этот интервал времени позволяет избежать активации политики планирования и ненужной миграции виртуальных машин при временных скачках загрузки ЦП. Максимум два знака. Значение по умолчанию - 2.

  • HighUtilization: Выражается в процентах. Если в течение заданного интервала времени хост загружает ЦП на уровне верхнего предела загрузки или выше, то Менеджер управления будет переносить виртуальные машины на другие хосты кластера до тех пор, пока загрузка ЦП этого хоста не опустится ниже максимального порога. Значение по умолчанию - 80. Значение не может быть меньше 50 или больше 99.

  • LowUtilization: Выражается в процентах. Если в течение заданного интервала времени хост загружает ЦП на уровне ниже нижнего предела загрузки, то Менеджер управления будет переносить виртуальные машины на другие хосты кластера. Менеджер управления отключит питание на исходном хосте и перезапустит его снова, когда того потребует балансировка нагрузки или когда в кластере не будет достаточно свободных хостов. Значение по умолчанию - 20. Значение не может быть больше 49.

  • ScaleDown: Уменьшает влияние весовой функции Резервирование высокой доступности (HA Reservation) методом деления оценки хоста на указанную величину. Это необязательное свойство, которое может быть добавлено в любую политику, включая политику Не назначена (none).

  • HostsInReserve: Указывает количество хостов, которые должны продолжать работать, даже если на них нет запущенных виртуальных машин. Это необязательное свойство, которое может быть добавлено к политике Энергосбережение (power_saving).

  • EnableAutomaticHostPowerManagement: Включает автоматическое управление питанием на всех хостах в кластере. Это необязательное свойство, которое может быть добавлено к политике Энергосбережение (power_saving). Значение по умолчанию - верно (true).

  • MaxFreeMemoryForOverUtilized: Указывает минимальный объем свободной оперативной памяти, обязательный для хоста, в МБ. Если объем свободной оперативной памяти на хосте меньше указанного, то Менеджер управления считает хост перегруженным. Например, если установить для этого свойства значение 1 000, то хост, у которого меньше 1 ГБ свободной оперативной памяти, будет перегружен.

    Подробнее о том, как это свойство работает с политиками Энергосбережение (power_saving) и Равномерное распределение (evenly_distributed), см. в Разделе Свойства политики планирования в кластере MaxFreeMemoryForOverUtilized и MinFreeMemoryForUnderUtilized.

    Это свойство можно добавить к политикам Энергосбережение (power_saving) и Равномерное распределение (evenly_distributed). Хотя оно появляется в списке свойств для политики Равномерное распределение ВМ (vm_evenly_distributed), оно не применяется к ней.

  • MinFreeMemoryForUnderUtilized: Указывает максимальный объем свободной оперативной памяти в МБ, который будет у хоста. Если объем свободной оперативной памяти на хосте больше указанного, то Менеджер управления считает, что хост недогружен. Например, если для этого параметра установить значение 10 000, то хост, у которого больше 10 ГБ свободной оперативной памяти, будет недогружен.

    Подробнее о том, как это свойство работает с политиками Энергосбережение (power_saving) и Равномерное распределение (evenly_distributed) см. в Разделе Свойства политики планирования в кластере MaxFreeMemoryForOverUtilized и MinFreeMemoryForUnderUtilized.

    Это свойство можно добавить к политикам Энергосбережение (power_saving) и Равномерное распределение (evenly_distributed). Хотя оно появляется в списке свойств для политики Равномерное распределение ВМ (vm_evenly_distributed), оно не применяется к ней.

  • HeSparesCount: Устанавливает количество дополнительных узлов с ролью hosted engine, которые должны зарезервировать достаточно свободной оперативной памяти для запуска виртуальной машины c Менеджером управления в случае ее переноса или выключения. Другим виртуальным машинам запрещено запускаться на узле с ролью hosted engine, если из-за этого не останется достаточно свободной оперативной памяти для виртуальной машины c Менеджером управления. Это необязательное свойство, которое может быть добавлено к политикам Энергосбережение (power_saving), Равномерное распределение ВМ (vm_evenly_distributed) и Равномерное распределение (evenly_distributed) Значение по умолчанию - 0.

  • VCpuToPhysicalCpuRatio: Устанавливает пороговое значение соотношения виртуальных ЦП к физическим. Когда этот параметр установлен, при планировании виртуальной машины предпочтение отдается хостам с меньшей загрузкой процессора. Допустимые значения от 0 до 2.99.

Оптимизация планировщика (Scheduler Optimization)

Оптимизируйте планирование для взвешивания/упорядочивания хостов.

  • Оптимизировать для утилизации (Optimize for Utilization): Включает модули взвешивания в процесс планирования для обеспечения наилучшего выбора.

  • Оптимизировать для скорости (Optimize for Speed): Пропускает взвешивание хостов в случаях, когда имеется более десяти ожидающих запросов.

Включить Trusted Service (Enable Trusted Service)

Активирует интеграцию с сервером OpenAttestation. Прежде чем ее можно будет включить, введите сведения о сервере OpenAttestation с помощью инструмента engine-config.

Сервер OpenAttestation и технология Intel Trusted Execution Technology (Intel TXT) больше недоступны.

Включить резервирование ресурсов для высокодоступных ВМ (Enable HA Reservation)

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

Политика серийных номеров (Serial Number Policy)

Конфигурация политики присвоения серийных номеров каждой новой виртуальной машине в кластере:

  • Значение по умолчанию для системы (System Default): Использует общесистемные значения по умолчанию в базе данных Менеджера управления. Для конфигурирования этих значений по умолчанию, используйте инструмент конфигурации механизма, чтобы установить значения DefaultSerialNumberPolicy и DefaultCustomSerialNumber. Эти пары ключ-значение сохраняются в таблице vdc_options в базе данных Менеджера управления.

    Для политики DefaultSerialNumberPolicy
    • Значение по умолчанию: HOST_ID

    • Возможные значения: HOST_ID, VM_ID, CUSTOM

    • Пример командной строки:

      engine-config --set DefaultSerialNumberPolicy=VM_ID

      Перезапустите Менеджер управления для применения настроек.
    Для DefaultCustomSerialNumber
    • Значение по умолчанию: Фиктивный серийный номер. Возможные значения: Любая строка (ограничение: максимум 255 знаков)

    • Пример командной строки:

      engine-config --set DefaultCustomSerialNumber="My very special string value"

      Перезапустите Менеджер управления для применения настроек.
  • Идентификатор хоста (Host ID): Устанавливает серийный номер каждой новой виртуальной машины в значение, соответствующее UUID хоста.

  • Идентификатор ВМ (Vm ID): Устанавливает серийный номер каждой новой виртуальной машины в значение, соответствующее UUID виртуальной машины.

  • Пользовательский серийный номер (Custom serial number): Устанавливает серийный номер каждой новой виртуальной машины в значение, которое вы задаете в параметре Пользовательский серийный номер (Custom Serial Number).

Пользовательский серийный номер (Custom serial number)

Задает пользовательский серийный номер, который будет применен к новым виртуальным машинам в кластере.

Когда свободная память хоста падает ниже 20%, в журнал /var/log/vdsm/mom.log записывается предупреждение:

mom.Controllers.Balloon - INFO Ballooning guest:half1 from 1096400 to 1991580

/Var/log/vdsm/mom.log - это файл журнала Менеджера избыточного выделения памяти.

2.6. Свойства политики планирования в кластере MaxFreeMemoryForOverUtilized и MinFreeMemoryForUnderUtilized

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

Ниже описано, как политики планирования в кластере Равномерное распределение (evenly_distributed) и Энергосбережение (power_saving) взаимодействуют со свойствами MaxFreeMemoryForOverUtilized и MinFreeMemoryForUnderUtilized. Хотя обе политики учитывают загрузку ЦП и памяти, загрузка ЦП не имеет отношения к свойствам MaxFreeMemoryForOverUtilized и MinFreeMemoryForUnderUtilized.

Если вы зададите свойства MaxFreeMemoryForOverUtilized и MinFreeMemoryForUnderUtilized как часть политики равномерного распределения (evenly_distributed):

  • Хосты, которые имеют меньше свободной памяти, чем MaxFreeMemoryForOverUtilized, являются перегруженными и становятся хостами-источниками.

  • Хосты, которые имеют больше свободной памяти, чем MinFreeMemoryForUnderUtilized, являются недогруженными и становятся хостами-приемниками.

  • Если значение MaxFreeMemoryForOverUtilized не указано, то планировщик не переносит виртуальные машины, исходя из загрузки памяти. (Он продолжает переносить виртуальные машины, исходя из других критериев политики, таких как загрузка ЦП.)

  • Если значение MinFreeMemoryForUnderUtilized не указано, то планировщик считает, что все хосты могут становиться хостами-приемниками.

Если вы зададите свойства MaxFreeMemoryForOverUtilized и MinFreeMemoryForUnderUtilized как часть политики Энергосбережение (power_saving):

  • Хосты, которые имеют меньше свободной памяти, чем MaxFreeMemoryForOverUtilized, являются перегруженными и становятся хостами-источниками.

  • Хосты, которые имеют больше свободной памяти, чем MinFreeMemoryForUnderUtilized, являются недогруженными и становятся хостами-источниками.

  • Хосты, которые имеют больше свободной памяти, чем MaxFreeMemoryForOverUtilized, не являются перегруженными и становятся хостами-приемниками.

  • Хосты, которые имеют меньше свободной памяти, чем MinFreeMemoryForUnderUtilized, не являются недогруженными и становятся хостами-приемниками.

  • Планировщик предпочитает переносить виртуальные машины на хосты, которые не являются ни перегруженными, ни недогруженными. Если таких хостов недостаточно, планировщик может переносить виртуальные машины на недогруженные хосты. Если недогруженные хосты для этой цели не нужны, планировщик может выключить их.

  • Если значение MaxFreeMemoryForOverUtilized не задано, то никакие хосты не являются перегруженными. Поэтому хостами-источниками являются только недогруженные хосты, а хостами-приемниками - все хосты в кластере.

  • Если значение MinFreeMemoryForUnderUtilized не задано, то хостами-источниками являются только перегруженные хосты, а хостами-приемниками - хосты, которые не являются перегруженными.

    Дополнительные ресурсы
  • Описание настроек политик планирования.

2.7. Описание настроек консоли кластера

В приведенной ниже таблице описаны настройки вкладки Консоль (Console) в окнах Новый кластер (New Cluster) и Изменить кластер (Edit Cluster).

Таблица 8. Настройки консоли
Поле Описание/действие

Перезаписать адрес SPICE-прокси (Overridden SPICE proxy address)

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

Задать адрес SPICE-прокси для кластера (Define SPICE Proxy for Cluster)

Прокси-сервер, посредством которого клиент SPICE соединяется с виртуальными машинами. Адрес должен быть задан в следующем формате:

protocol://[host]:[port]

Включить VNC шифрование(Enable VNC Encryption)

Включение шифрования VNC приведет к обеспечению связи VNC по протоколу TLS(с использованием X509Vnc VenCrypt).

2.8. Описание настроек журналирования

В приведенной ниже таблице описаны настройки вкладки Журналирование (Logging) в окнах Новый кластер (New Cluster) и Изменить кластер (Edit Cluster).

Таблица 9. Настройки журналирования
Поле Описание/действие

Определить адрес Syslog-сервера

При активации позволяет указать адрес сервера сбора журналов.

Использовать TCP-соединение

При активации, для передачи файлов журналов используется протокол TCP вместо UDP. Активация возможна только при активной опции Определить адрес Syslog-сервера.

Включить шифрование

При активации обеспечивает безопасное взаимодействие с сервером Syslog. Активация возможна только при активных опциях Определить адрес Syslog-сервера и Использовать TCP-соединение.

Подробнее см. в разделе Настройка использования шифрования.

2.9. Описание настроек политик изоляции

В приведенной ниже таблице описаны настройки вкладки Политика изоляции (Fencing Policy) в окнах Новый кластер (New Cluster) и Изменить кластер (Edit Cluster).

Таблица 10. Настройки политик ограничения
Поле Описание/действие

Включить ограничения (Enable fencing)

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

Пропустить ограничение, если хост имеет аренду на хранилище (Skip fencing if host has live lease on storage)

Если этот флажок установлен, то никакие хосты в кластере, которые находятся в состоянии "не отвечает" и все еще подключены к хранилищу, не будут изолироваться.

Пропустить ограничение при проблемах подключения кластера (Skip fencing on cluster connectivity issues)

Когда этот флажок установлен, изоляция будет временно выключена, если процент хостов в кластере, испытывающих проблемы со связью, больше или равен заданному значению Threshold. Значение Threshold выбирается из следующего выпадающего списка: 25, 50, 75 и 100.

Пропустить ограничение, если блоки Gluster активны (Skip fencing if gluster bricks are up)

Эта опция доступна только при включенной функции Gluster Storage. Когда этот флажок установлен, изоляция пропускается, если брики работают и доступны с других узлов того же ранга.

Пропустить ограничение, если кворум Gluster не соблюден (Skip fencing if gluster quorum not met)

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

2.10. Задание политик управления загрузкой и питанием для хостов в кластере

Политики планирования Равномерное распределение (evenly_distributed) и Энергосбережение (power_saving) позволяют задавать приемлемые значения загрузки ОЗУ и ЦП, а также момент, в который виртуальные машины нужно переносить на хост или с хоста. Политика планирования Равномерное распределение ВМ (vm_evenly_distributed) распределяет виртуальные машины равномерно между хостами, исходя из количества виртуальных машин. Задайте политику планирования, чтобы включить автоматическую балансировку нагрузки между хостами в кластере. Подробное описание каждой из политик планирования см. в разделе Описание настроек политик планирования.

Порядок действий:
  1. Нажмите Ресурсы (Compute)  Кластеры (Clusters) и выберите кластер.

  2. Нажмите Изменить (Edit).

  3. Откройте вкладку Политика планирования (Scheduling Policy).

  4. Выберите одну из следующих политик:

    • none

    • vm_evenly_distributed

      1. Чтобы включить балансировку нагрузки, в поле HighVmCount укажите минимальное количество виртуальных машин, которое должно быть запущено хотя бы на одном хосте.

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

      3. В поле SpmVmGrace укажите количество слотов для виртуальных машин, которое должно быть зарезервировано на хостах SPM.

      4. При желании в поле HeSparesCount введите количество дополнительных узлов с ролью hosted engine, на которых нужно зарезервировать достаточно свободной оперативной памяти для запуска виртуальной машины c Менеджером управления в случае ее переноса или выключения. Дополнительную информацию см. в разделе Настройка слотов памяти.

    • evenly_distributed

      1. В поле CpuOverCommitDurationMinutes укажите время (в минутах), в течение которого хост может работать при загрузке ЦП, выходящей за заданные значения, прежде чем вступит в действие политика планирования.

      2. В поле HighUtilization укажите процент загрузки ЦП, при котором начинается миграция виртуальных машин на другие хосты.

      3. При желании в поле HeSparesCount введите количество дополнительных узлов с ролью hosted engine, на которых нужно зарезервировать достаточно свободной оперативной памяти для запуска виртуальной машины c Менеджером управления в случае ее переноса или выключения. Дополнительную информацию см. в разделе Настройка слотов памяти.

      4. Чтобы предотвратить чрезмерное использование хостом всех физических процессоров, задайте соотношение виртуальных и физических процессоров - VCpuToPhysicalCpuRatio со значением от 0 до 2.9. Когда этот параметр установлен, при планировании виртуальной машины предпочтение отдается хостам с меньшей загрузкой процессора.

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

        В рабочей среде, если соотношение VCpuToPhysicalCpuRatio хоста превышает 2.5, некоторые виртуальные машины могут быть сбалансированы по нагрузке и перемещены на хосты с более низким соотношением VCpuToPhysicalCpuRatio.

    • power_saving

      1. В поле CpuOverCommitDurationMinutes укажите время (в минутах), в течение которого хост может работать при загрузке ЦП, выходящей за заданные значения, прежде чем вступит в действие политика планирования.

      2. В поле LowUtilization укажите процент загрузки ЦП, ниже которого хост будет считаться недогруженным.

      3. В поле HighUtilization укажите процент загрузки ЦП, при котором начинается миграция виртуальных машин на другие хосты.

      4. При желании в поле HeSparesCount введите количество дополнительных узлов с ролью hosted engine, на которых нужно зарезервировать достаточно свободной оперативной памяти для запуска виртуальной машины c Менеджером управления в случае ее переноса или выключения. Дополнительную информацию см. в разделе Настройка слотов памяти.

  5. В качестве Оптимизации расписания (Scheduler Optimization) выберите для кластера одно из следующих значений:

    • Оптимизировать для утилизации (Optimize for Utilization), чтобы включить модули взвешивания в процесс планирования для обеспечения наилучшего выбора.

    • Оптимизировать для скорости (Optimize for Speed), чтобы пропустить взвешивание хостов в случаях, когда имеется более десяти ожидающих запросов.

  6. При желании установите флажок в поле Включить резервирование ресурсов для высокодоступных ВМ (Enable HA Reservation), чтобы Менеджер управления отслеживал ресурсы кластера для виртуальных машин с признаком высокой доступности.

  7. При желании выберите Политику серийных номеров (Serial Number Policy) для виртуальных машин в кластере:

    • Значение по умолчанию (System Default): Используйте системные значения по умолчанию, которые настраиваются в базе данных Менеджера управления с помощью инструмента настройки узла engine, и имена ключей DefaultSerialNumberPolicy и DefaultCustomSerialNumber. Значение по умолчанию для DefaultSerialNumberPolicy - это использовать ID хоста (Host ID). Дополнительную информацию см. в разделе Политики планирования.

    • Хост ID (Host ID): Установите серийный номер каждой виртуальной машины в значение, соответствующее UUID хоста.

    • Код ВМ (Vm ID): Установите серийный номер каждой виртуальной машины в значение, соответствующее UUID виртуальной машины.

    • Настраиваемый серийный номер (Custom serial number): Установите серийный номер каждой виртуальной машины в значение, которое вы задаете в следующем параметре Пользовательский серийный номер (Custom Serial Number).

  8. Нажмите OK.

2.11. Обновление политики Менеджера избыточного выделения памяти (MoM) на хостах в кластере

Менеджер избыточного выделения памяти управляет функциями баллунинга памяти и KSM на хосте. Относящиеся к кластеру изменения в этих функциях передаются хостам при следующем переходе хоста в состояние Включен (Up) running после перезагрузки или после режима обслуживания. Однако при необходимости важные изменения можно применить к хосту немедленно, синхронизировав политику MoM, когда хост находится в состоянии Включен (Up) running. Следующую процедуру нужно выполнить на каждом хосте по отдельности.

Порядок действий:
  1. Нажмите Ресурсы (Compute)  Кластеры (Clusters).

  2. Нажмите на имя кластера. Откроется подробное представление.

  3. Откройте вкладку Хосты (Hosts) и выберите хост, который требует обновленной политики MoM.

  4. Нажмите Политика синхронизации MoM (Sync MoM Policy).

Политика MoM на хосте обновляется без необходимости переводить хост в режим обслуживания и обратно в состояние Включен (Up) running.

2.12. Создание профиля ЦП

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

Эта процедура предполагает, что вы уже задали одну или несколько политик QoS ЦП в центре данных, к которому относится кластер.

Порядок действий:
  1. Нажмите Ресурсы (Compute)  Кластеры (Clusters).

  2. Нажмите на имя кластера. Откроется подробное представление.

  3. Откройте вкладку Профили ЦП (CPU Profiles).

  4. Нажмите Новый (New).

  5. В поля Имя (Name) и Описание (Description) введите имя и описание профиля ЦП.

  6. Выберите политику QoS, которую следует применить к профилю ЦП, из списка QoS.

  7. Нажмите OK.

2.13. Удаление профиля ЦП

Удалите существующий профиль ЦП из среды ПО «zVirt Max».

Порядок действий:
  1. Нажмите Ресурсы (Compute)  Кластеры (Clusters).

  2. Нажмите на имя кластера. Откроется подробное представление.

  3. Откройте вкладку Профили ЦП (CPU Profiles) и выберите профиль ЦП, который нужно удалить.

  4. Нажмите Удалить (Remove).

  5. Нажмите OK.

Если этот профиль ЦП был назначен каким-либо виртуальным машинам, то этим виртуальным машинам будет автоматически назначен профиль ЦП default.

2.14. Импортирование существующего кластера хранения Gluster

Можно импортировать кластер хранения Gluster и все принадлежащие ему хосты в Менеджер управления.

После указания таких сведений, как IP-адрес или имя хоста и пароль какого-либо хоста в кластере, на этом хосте через SSH будет выполнена команда gluster peer status, которая выведет список входящих в кластер хостов. Необходимо вручную проверить SSH-ключи каждого хоста и указать для них пароли. Невозможно импортировать кластер, если один из хостов в нем не работает или недоступен. Поскольку на только что импортированных хостах не установлен VDSM, скрипт начальной загрузки устанавливает все необходимые пакеты VDSM на хосты после их импорта и перезагружает их.

Порядок действий:
  1. Нажмите Ресурсы (Compute)  Кластеры (Clusters).

  2. Нажмите Новый (New).

  3. Выберите Центр данных (Data Center), которому будет принадлежать кластер.

  4. В поля Имя (Name) и Описание (Description) введите имя и описание кластера.

  5. Установите флажки в полях Включить службу Gluster (Enable Gluster Service) и Импорт существующей конфигурации gluster (Import existing gluster configuration).

    Поле Импорт существующей конфигурации gluster (Import existing gluster configuration) отображается только при установленном флажке Импорт существующей конфигурации gluster (Import existing gluster configuration).

  6. В поле Имя хоста (Hostname) введите имя хоста или IP-адрес любого сервера в кластере.

    Отображается публичный ключ SSH хоста (Host ssh public key (PEM)), чтобы можно было убедиться, что соединение устанавливается с правильным хостом. Если хост недоступен или возникла сетевая ошибка, то в поле публичный ключ SSH хоста (Host ssh public key (PEM)) будет отображаться ошибка Ошибка при получении открытого ключа SSH (Error in fetching ssh public key).

  7. Введите Пароль (Password) для сервера и нажмите OK.

  8. Откроется окно Добавить хосты (Add Hosts), и будет выведен список хостов, которые являются частью кластера.

  9. Для каждого хоста введите Имя (Name) и Root-пароль (Root Password).

  10. Если вы хотите использовать один и тот же пароль для всех хостов, то установите флажок Использовать общий пароль (Use a Common Password), чтобы ввести пароль в соответствующее текстовое поле.

    Нажмите Применить (Apply), чтобы установить введенный пароль для всех хостов.

    Убедитесь, что SSH ключи действительны, и примените изменения, нажав OK.

Скрипт начальной загрузки установит все необходимые пакеты VDSM на хосты после их импорта и перезагрузит их. Вы успешно импортировали существующий кластер хранения Gluster в Менеджер управления.

2.15. Описание настроек в окне "Добавить хосты (Add Hosts)"

В окне Добавить хосты (Add Hosts) можно указать подробные сведения о хостах, импортированных как часть кластера Gluster. Это окно появится после установки флажка в поле Включить службу Gluster (Enable Gluster Service) в окне Создать кластер (New Cluster) и указания необходимых сведений о хосте.

Таблица 11. Настройки в окне "Добавить хосты Gluster (Add Gluster Hosts)"
Поле Описание

Использовать общий пароль (Use a common password)

Установите этот флажок, чтобы использовать один и тот же пароль для всех хостов, принадлежащих кластеру. Введите пароль в поле Пароль (Password), затем нажмите Применить (Apply), чтобы установить этот пароль для всех хостов.

Имя (Name)

Введите имя хоста.

Имя/IP-адрес хоста (Hostname/IP)

В это поле автоматически подставляется FQDN или IP-адрес хоста, который вы задали в окне Создать кластер (New Cluster).

Root Password (Root-пароль)

Введите пароль в это поле, чтобы использовать разные root-пароли для каждого хоста. Это поле переопределяет общий пароль, указанный для всех хостов в кластере.

Отпечаток (Fingerprint)

Отображается отпечаток хоста, чтобы можно было убедиться, что соединение устанавливается с правильным хостом. В это поле автоматически подставляется отпечаток хоста, который вы задали в окне Создать кластер (New Cluster).

2.16. Удаление кластера

Перенесите все хосты из кластера перед его удалением.

Кластер Default удалить невозможно, так как он содержит пустой (Blank) шаблон. Однако кластер Default можно переименовать и добавить в новый Центр данных.
Порядок действий:
  1. Нажмите Ресурсы (Compute)  Кластеры (Clusters) и выберите кластер.

  2. Убедитесь в том, что в кластере нет хостов.

  3. Нажмите Дополнительные действия (More Actions) , а затем Удалить (Remove).

  4. Нажмите ОК

2.17. Оптимизация памяти

Чтобы увеличить количество виртуальных машин на хосте, можно использовать избыточное выделение памяти (memory overcommitment), при котором объем памяти, назначаемый виртуальным машинам, превышает объем ОЗУ и определяется областью подкачки.

Однако избыточное выделение памяти влечет за собой потенциальные проблемы:

  • Производительность подкачки - область подкачки работает медленнее и потребляет больше ресурсов ЦП, чем ОЗУ, что влияет на производительность виртуальных машин. Чрезмерно интенсивная подкачка может привести к перегрузке ЦП.

  • Демон остановки процессов при нехватке памяти (Out-of-memory, или OOM killer) - если на хосте заканчивается пространство подкачки, то новые процессы не могут запуститься и демон ядра OOM killer начинает завершать активные процессы (такие как гостевые процессы виртуальных машин).

Для решения этих проблем можно:

  • Ограничить избыточное выделение памяти, используя настройку Оптимизация памяти (Memory Optimization) и Менеджер избыточного выделения памяти (Memory Overcommit Manager, MoM).

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

  • Уменьшить объем виртуальной памяти, включив баллунинг памяти (memory ballooning) и Объединение одинаковых страниц памяти (Kernel Same-page Merging, KSM).

2.18. Оптимизация памяти и избыточное выделение памяти

Можно ограничить величину избыточного выделения памяти, установив настройку Оптимизация памяти (Memory Optimization) в одно из следующих значений:

  • Выключить перераспределение памяти (None) - 0%

  • Для серверной нагрузки (For Server Load) - 150%

  • Для нагрузки рабочей станции (For Desktop Load) - 200%.

Каждое значение соответствует процентной доле от объема ОЗУ. Например, если хост имеет 64 ГБ ОЗУ, выбор значения Для серверной нагрузки (For Server Load) (150%) означает, что может быть выделено дополнительно 32 ГБ и, таким образом, общий объем виртуальной памяти станет равен 96 ГБ. Если хост использует 4 ГБ из этого общего объема, то оставшиеся 92 ГБ будут доступны. Их можно назначить виртуальным машинам (Оперативная память (разделяемая) (Memory Size) на вкладке Система (System)), но оставьте какую-то часть не назначенной - в качестве запаса.

Внезапные скачки потребности в виртуальной памяти могут снизить производительность, а MoM и механизмы баллунинга памяти и KSM могут не успеть повторно оптимизировать виртуальную память. Чтобы уменьшить это воздействие, выберите ограничение, подходящее для используемых типов приложений и процессов:

  • В отношении процессов, для которых характерен скорее плавный рост потребности в памяти, выберите более высокий процент, например Для нагрузки рабочей станции (For Desktop Load) (200%) или Для серверной нагрузки (For Server Load) (150%).

  • В отношении более критичных приложений или процессов, для которых характерны скорее внезапные скачки потребности в памяти, выберите более низкий процент, например Для серверной нагрузки (For Server Load) (150%) или Выключить перераспределение памяти (None) (0%). Выбор значения Выключить перераспределение памяти (None) предотвращает избыточное выделение памяти, но позволяет MoM и механизмам баллунинга памяти и KSM продолжать оптимизировать виртуальную память.

Всегда подвергайте настройки Оптимизации памяти (Memory Optimization) стресс-тестированию в широком диапазоне условий, прежде чем развернуть конфигурацию в продуктивной среде.

Чтобы настроить Оптимизацию памяти (Memory Optimization), откройте вкладку Оптимизация (Optimization) в окне Новый кластер (New Cluster) или Изменить кластер (Edit Cluster). См. раздел Описание настроек оптимизации.

Дополнительные комментарии
  • Фактическую доступную память нельзя определить в реальном времени, поскольку степень оптимизации памяти, обеспечиваемой механизмами KSM и баллунинга памяти, все время меняется.

  • Если виртуальная машина достигла предела виртуальной памяти, в ней не смогут запуститься новые приложения.

  • При планировании количества виртуальных машин, которые будут работать на хосте, используйте в качестве отправной точки максимальный объем виртуальной памяти (объем физической памяти и настройку Оптимизация памяти (Memory Optimization)). Не учитывайте небольшие объемы виртуальной памяти, достигаемые благодаря оптимизации памяти, такой как баллунинг памяти и KSM.

2.19. Область подкачки и избыточное выделение памяти

Оценивая общий размер виртуальной памяти, отталкивайтесь от объема физической памяти и настройки Оптимизация памяти (Memory Optimization). Исключите любое уменьшение объема виртуальной памяти в результате оптимизации с помощью MoM, баллунинга памяти и KSM.

Для предотвращения состояния нехватки памяти (Out-of-memory), сделайте область подкачки достаточно большой, чтобы справиться с наихудшим сценарием и при этом иметь возможность её увеличения. Всегда подвергайте конфигурацию стресс-тестированию в широком диапазоне условий, прежде чем развернуть ее в продуктивной среде.

2.20. Менеджер избыточного выделения памяти (Memory Overcommit Manager, MoM)

Менеджер избыточного выделения памяти (Memory Overcommit Manager, MoM) решает две задачи:

  • Ограничивает избыточное выделение, применяя настройку Оптимизация памяти (Memory Optimization) к хостам в кластере, как описано в предыдущем разделе.

  • Оптимизирует память, управляя баллунингом памяти (memory ballooning) и KSM, как описано в следующих разделах.

Включать или выключать MoM не нужно.

Когда свободная память хоста падает ниже 20%, в журнал /var/log/vdsm/mom.log записывается предупреждение:

mom.Controllers.Balloon - INFO Ballooning guest:half1 from 1096400 to 1991580

/Var/log/vdsm/mom.log - это файл журнала Менеджера избыточного выделения памяти.

2.21. Баллунинг памяти (Memory Ballooning)

Виртуальные машины запускаются с полным объемом виртуальной памяти, который им выделен. Как только использование виртуальной памяти превысит объем ОЗУ, хост начинает больше полагаться на область подкачки. Если баллунинг памяти (memory ballooning) включен, он позволяет виртуальным машинам отдавать неиспользуемые части памяти. Освобожденная память может быть повторно использована другими процессами и виртуальными машинами на хосте. Уменьшение объема занимаемой памяти снижает вероятность подкачки и повышает производительность.

Пакет virtio-balloon, который устанавливает устройство баллунинга памяти и драйверы, поставляется как загружаемый модуль ядра (loadable kernel module, LKM). По умолчанию он сконфигурирован так, чтобы загружаться автоматически. Помещение модуля в черный список или его выгрузка выключает баллунинг памяти.

Устройства баллунинга памяти не координируются напрямую друг с другом; они полагаются на процесс Memory Overcommit Manager (MoM) хоста, постоянно отслеживающий потребности каждой виртуальной машины и указывающий устройству баллунинга памяти увеличить или уменьшить виртуальную память.

Пояснения относительно производительности:
  • Не рекомендуется использовать баллунинг памяти и избыточное выделение памяти для процессов, требующих стабильно высокой производительности и низкой задержки. См. Настройка высокопроизводительных виртуальных машин.

  • Используйте баллунинг памяти, когда увеличение плотности виртуальных машин (экономичность) важнее производительности.

  • Баллунинг памяти не сильно влияет на загрузку ЦП. (KSM потребляет часть ресурсов ЦП, но это потребление остается постоянным под нагрузкой).

Чтобы включить баллунинг памяти, откройте вкладку Оптимизация (Optimization) в окне Новый кластер (New Cluster) или Изменить кластер (Edit Cluster). Затем установите флажок в поле Включить оптимизацию динамического выделения памяти (Enable Memory Balloon Optimization). Эта настройка включает избыточное выделение памяти на виртуальных машинах, работающих на узлах в этом кластере. Когда этот флажок поставлен, MoM начинает применять баллунинг памяти во всех возможных ситуациях с ограничением гарантированного объема памяти для каждой виртуальной машины. См. раздел Описание настроек оптимизации.

Каждый хост в этом кластере получает обновление политики баллунинга памяти, когда его статус меняется на Включен (Up) running. При необходимости вы можете вручную обновить политику баллунинга памяти на хосте, не меняя статус. См. раздел Обновление политики Менеджера избыточного выделения памяти на хостах в кластере.

2.22. Объединение одинаковых страниц памяти (Kernel Same-page Merging, KSM)

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

Включенная функция Объединения одинаковых страниц памяти (Kernel Same-page Merging, KSM) проверяет виртуальную память на хосте, устраняет дублирующиеся страницы памяти и распределяет оставшиеся страницы памяти между несколькими приложениями и виртуальными машинами. Эти общие страницы памяти помечаются как копируемые при записи, и если виртуальной машине необходимо записать изменения на страницу, она сначала создает копию и только потом записывает свои изменения в копию.

Когда функция KSM включена, ей управляет MoM. Настраивать или управлять функцией KSM вручную не нужно.

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

KSM потребляет больше ресурсов ЦП, чем баллунинг памяти, и это потребление остается постоянным под нагрузкой. Запуск идентичных виртуальных машин и приложений на хосте дает KSM больше возможностей для объединения страниц памяти, чем запуск разнородных. Если запускаются в основном разнородные виртуальные машины и приложения, то затраты на ЦП, связанные с использованием функции KSM, могут свести на нет ее преимущества.

Пояснения относительно производительности:
  • После того, как демон KSM объединит большие объемы памяти, статистика учета памяти ядра может в конечном итоге стать противоречивой. Если в системе много свободной памяти, ее производительность можно повысить, выключив KSM.

  • Не рекомендуется использовать KSM и избыточное выделение памяти для процессов, требующих стабильно высокой производительности и низкой задержки. См. Настройка высокопроизводительных виртуальных машин.

  • Используйте KSM, когда увеличение плотности виртуальных машин (экономичность) важнее производительности.

Чтобы включить KSM, откройте вкладку Оптимизация (Optimization) в окне Новый кластер (New Cluster) или Изменить кластер (Edit Cluster). Затем установите флажок в поле Включить KSM (Enable KSM). Этот флажок позволяет Менеджеру избыточного выделения памяти запускать KSM, когда это необходимо и может дать экономию памяти, выгода от которой перевешивает затраты на ЦП. См. раздел Описание настроек оптимизации.

2.23. UEFI и чипсет Q35

Чипсет Q35 с UEFI и SecureBoot - это предварительные версии технологий, представленные для оценки (Technology Preview). Такие технологии не поддерживаются соглашениями об уровне обслуживания (SLA) продуктивной среды и могут быть функционально неполными. Не рекомендуется использовать их в продуктивной среде. Тем не менее они дают возможность раннего доступа к будущим функциям продукта, позволяя заказчикам тестировать функциональность и оставлять отзывы в процессе разработки.

Чипсет Intel Q35, используемый по умолчанию для новых виртуальных машин, включает в себя поддержку Unified Extensible Firmware Interface (UEFI), который заменяет устаревший BIOS.

Либо можно настроить виртуальную машину или кластер для использования устаревшего чипсета Intel i440fx, который не поддерживает UEFI.

UEFI имеет ряд преимуществ по сравнению с устаревшей BIOS, а именно:

  • Современный загрузчик.

  • Функцию SecureBoot, которая проверяет подлинность цифровых подписей загрузчика.

  • Таблицу разделов GUID (GPT), позволяющую использовать диски размером более 2 ТБ.

Можно установить UEFI для любой существующей виртуальной машины или задать его как Тип чипсета/ПО по умолчанию для новых виртуальных машин в кластере. Доступны следующие опции:

Таблица 12. Доступные типы BIOS
Тип BIOS Описание

Чипсет Q35 с BIOS (Q35 Chipset with BIOS)

BIOS

Чипсет Q35 с UEFI (Q35 Chipset with UEFI)

UEFI

Чипсет Q35 с UEFI SecureBoot (Q35 Chipset with UEFI SecureBoot)

UEFI с функцией SecureBoot, которая проверяет подлинность цифровых подписей загрузчика

I440FX Chipset with BIOS

Чипсет i440fx с устаревшей BIOS

Задание типа BIOS до установки ОС

Настроить виртуальную машину для использования чипсета Q35 и UEFI можно перед установкой ОС. Преобразование виртуальной машины из устаревшей BIOS в UEFI после установки ОС не поддерживается.

2.24. Настройка кластера для использования чипсета Q35 и UEFI

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

Чипсет Q35 с UEFI и SecureBoot - это предварительные версии технологий, представленные для оценки (Technology Preview). Такие технологии не поддерживаются соглашениями об уровне обслуживания (SLA) продуктивной среды и могут быть функционально неполными. Не рекомендуется использовать их в продуктивной среде. Тем не менее они дают возможность раннего доступа к будущим функциям продукта, позволяя заказчикам тестировать функциональность и оставлять отзывы в процессе разработки
Порядок действий:
  1. На Пользовательском портале или Портале администрирования нажмите Ресурсы (Compute)  Кластеры (Clusters).

  2. Выберите кластер и нажмите Изменить (Edit).

  3. Нажмите Общие (General).

  4. Определите тип чипсета/ПО по умолчанию для новых виртуальных машин в кластере, нажав на выпадающее меню Тип чипсета/ПО (Chipset/Firmware Type) и выбрав один из следующих вариантов:

    • I440FX Chipset with BIOS

    • Чипсет Q35 с BIOS (Q35 Chipset with BIOS)

    • Чипсет Q35 с UEFI (Q35 Chipset with UEFI)

    • Чипсет Q35 с UEFI SecureBoot (Q35 Chipset with UEFI SecureBoot)

  5. Если какие-либо из существующих виртуальных машин в кластере должны использовать новый тип чипсета/ПО, настройте их соответствующим образом. Дополнительную информацию см. в разделе Настройка виртуальной машины для использования чипсета Q35 с UEFI.

Поскольку изменить тип чипсета/ПО можно только перед установкой ОС, для всех существующих виртуальных машин, настроенных на использование BIOS типа Заданный для кластера по умолчанию (Cluster default), измените тип чипсета/ПО в значение, соответствующее предыдущему типу, заданному для кластера по умолчанию. В противном случае виртуальная машина может не загрузиться. Либо, как вариант, можно переустановить ОС виртуальной машины.

2.25. Настройка виртуальной машины для использования чипсета Q35 с UEFI

Чипсет Q35 с UEFI и SecureBoot - это предварительные версии технологий, представленные для оценки (Technology Preview). Такие технологии не поддерживаются соглашениями об уровне обслуживания (SLA) продуктивной среды и могут быть функционально неполными. Не рекомендуется использовать их в продуктивной среде. Тем не менее они дают возможность раннего доступа к будущим функциям продукта, позволяя заказчикам тестировать функциональность и оставлять отзывы в процессе разработки

Настроить виртуальную машину для использования чипсета Q35 и UEFI можно перед установкой ОС. Преобразование виртуальной машины из устаревшей BIOS в UEFI или из UEFI в устаревший BIOS может помешать загрузке виртуальной машины. Если вы меняете тип BIOS существующей виртуальной машины, переустановите ОС.

Если тип чипсета/ПО виртуальной машины установлен в значение Заданный для кластера по умолчанию (Cluster default), изменение тип чипсета/ПО кластера приводит к изменению тип чипсета/ПО виртуальной машины. Если на виртуальной машине установлена ОС, изменение тип чипсета/ПО кластера может привести к сбою загрузки виртуальной машины.
Порядок действий:
  1. На Пользовательском портале или Портале администрирования нажмите Ресурсы (Compute)  Виртуальные машины (Virtual Machines).

  2. Выберите виртуальную машину и нажмите Изменить (Edit).

  3. На вкладке Общие (General) нажмите Показать расширенные настройки (Show Advanced Options).

  4. Нажмите Система (System).

  5. В выпадающем меню Тип BIOS (Chipset/Firmware Type) выберите одно из следующих значений:

    • I440FX Chipset with BIOS

    • Чипсет Q35 с BIOS (Q35 Chipset with BIOS)

    • Чипсет Q35 с UEFI (Q35 Chipset with UEFI)

    • Чипсет Q35 с UEFI SecureBoot (Q35 Chipset with UEFI SecureBoot)

  6. Нажмите OK.

  7. На Пользовательском портале или Портале администрирования выключите виртуальную машину. При следующем запуске виртуальной машины она будет работать с выбранным новым типом чипсета/ПО.