Квоты и политика соглашения об уровне обслуживания

Что такое Quota

Quota — это утилита ограничения ресурсов, предоставляемая РОСА Виртуализация. Quota может быть описана в виде слоя ограничений, располагающегося поверх слоя ограничений, налагаемых полномочиями пользователей.

Quota является объектом дата-центра.

Quota предоставляет возможность администраторам окружений Cистемы РОСА Виртуализация ограничивать доступ пользователей к памяти, ЦП и хранилищам. Quota определяет объем ресурсов памяти и хранилища, который администраторы могут выделить пользователям. В итоге пользователи могут расходовать только те ресурсы, которые им были выделены.

Существует два различных типа квот:

  • Quota времени выполнения ограничивает потребление ресурсов времени выполнения, таких как ЦП и память;
  • Quota хранилища ограничивает доступный объем хранилища.

У Quota, как и у SELinux, есть три режима, представленных в таблице 70.

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

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

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

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

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

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

Для возможности запуска ВМ этой ВМ должна быть присвоена квота.

Для создания снимка ВМ диску, связанному с этой ВМ, должна быть присвоена квота.

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

Общие и индивидуальные квоты

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

Для пользователей Active Directory можно настроить групповые квоты. Если группе из десяти пользователей будет назначена квота в 1 ТБ в хранилище, а один из этих десяти пользователей заполнит весь этот объем, то в таком случае квота будет превышена для всей группы, и ни один из десяти пользователей не сможет использовать хранилище, связанное с этой группой.

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

Расчет квот

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

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

Пример расчета квоты:

Пользователь запустил ВМ с 1 виртуальным ЦП и 1024 МБ памяти. Это действие потребляет 1 виртуальный ЦП и 1024 МБ квоты, выделенной этому пользователю. После остановки этой ВМ 1 ЦП и 1024 МБ ОЗУ возвращаются обратно в квоту, присвоенную этому пользователю. Потребление квоты времени выполнения считается только во время фактического времени выполнения потребителя. Пользователь создает виртуальный диск тонкого резервирования размером в 10 ГБ. Фактическое потребление дискового объема может указывать, что используется только 3 ГБ. Но потребление квоты, тем не менее, будет составлять 10 ГБ, т.е. максимальный потенциал роста этого диска.

Включение и изменение режима квот в дата-центре

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

Для тестирования квоты и проверки соответствия ожиданиям используется режим "Аудит". Для создания или изменения квоты режим "Аудит" необязателен.

Последовательность действий по включению и изменению режима квот в дата-центре:

  1. нажать "Ресурсы → Дата-центры" и выбрать дата-центр;
  2. нажать кнопку Изменить;
  3. в выпадающем списке "Режим квоты" изменить режим на "Принудительный";
  4. нажать кнопку OK.

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

Создание новых политик квотирования

Если администратор включил режим квоты либо в режиме "Аудит", либо в режиме "Принудительный", то теперь необходимо настроить политику квоты для управления потреблением ресурсов в дата-центре.

Последовательность действий по созданию новых политик квотирования:

  1. нажать "Администрирование → Квота";
  2. нажать кнопку Добавить;
  3. заполнить поля "Название" и "Описание";
  4. выбрать "Дата-центр";
  5. в секции "Память и ЦП" с помощью зеленого бегунка настроить "Порог кластера";
  6. в секции "Память и ЦП" с помощью голубого бегунка настроить "Льготу кластера";
  7. активировать переключатель "Все кластеры" или переключатель "Конкретные кластеры". При выборе переключателя "Конкретные кластеры" отметить кластеры, для которых нужно добавить политику квоты;
  8. нажать кнопку Изменить, чтобы открыть окно "Изменить квоту";
  9. в поле "Память" активировать либо переключатель "Без ограничений", чтобы не ограничивать использование ресурсов памяти в кластере, либо активировать переключатель "Ограничить до", чтобы указать объем памяти, установленный для этой квоты. При выборе переключателя "Ограничить до" указать объем памяти в МБ в поле "МБ";
  10. в поле "ЦП" активировать либо переключатель "Без ограничений", либо переключатель "Ограничить до", чтобы указать объем ЦП, установленный для этой квоты. При выборе переключателя "Ограничить до" указать число виртуальных ЦП в поле "ЦП";
  11. нажать кнопку OK в окне "Изменить квоту";
  12. в секции "Хранилище" с помощью зеленого бегунка настроить "Порог хранилища";
  13. в секции "Хранилище" с помощью голубого бегунка настроить "Льготу хранилища";
  14. активировать переключатель "Все домены хранилищ" или "Конкретные домены хранилищ". При выборе переключателя "Конкретные домены хранилищ" отметить домены хранения, для которых нужно добавить политику квоты;
  15. нажать кнопку Изменить, чтобы открыть окно "Изменить квоту";
  16. в поле "Квота хранилища" активировать либо переключатель "Без ограничений", чтобы не ограничивать использование ресурсов хранилища, либо активировать переключатель "Ограничить до", чтобы указать объем хранилища, до которого пользователи будут ограничены квотой. При выборе переключателя "Ограничить до" указать объем размера квоты на хранилище в ГБ в поле "ГБ";
  17. нажать кнопку OK в окне "Изменить квоту";
  18. нажать кнопку OK в окне "Новая квота".

Описание параметров порога квоты

Параметры квот представлены в таблица 71.

При квоте, установленной в 100 ГБ со льготой в 20%, потребителям будет запрещено использование хранилища после того, как используемый ими объем хранилища достигнет 120 ГБ. Если та же самая квота имеет значение порога в 70%, тогда потребителям выводится предупреждение в момент, когда используемый ими объем превысит 70 ГБ (но остается возможность потреблять хранилище до тех пор, пока потребляемый объем не достигнет 120 ГБ).

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

Присвоение квот объектам

Для присвоения квот виртуальным машинам нужно:

  1. нажать "Ресурсы → ВМ" и выбрать виртуальную машину;
  2. нажать кнопку Изменить;
  3. в выпадающем списке "Квота" выбрать квоту, которую будет потреблять выбранная ВМ;
  4. нажать кнопку OK.

Присвоение квоты диску

Для присвоения квоты диску требуется:

  1. нажать "Ресурсы → ВМ" ;
  2. нажать на имя ВМ, чтобы перейти к подробному просмотру;
  3. перейти на вкладку "Диски" и выбрать диск, который планируется связать с квотой;
  4. нажать кнопку Изменить;
  5. в выпадающем списке "Квота" выбрать квоту, которую будет потреблять выбранный виртуальный диск;
  6. нажать кнопку OK.

Примечание — Для работы ВМ необходимо, чтобы для всех объектов, связанных с этой ВМ, была выбрана квота. Если квота для всех объектов не будет выбрана, ВМ не будет работать. Ошибка, которую выдает при этом диспетчер виртуализации, является очень общей, что затрудняет нахождение ее связи с отсутствием присвоения квот объектам, связанным с виртуальной машиной. Нельзя сделать снимок ВМ, которой не была присвоена квота. Нельзя сделать шаблон на базе ВМ, виртуальным дискам которой не были присвоены квоты.

Использование квот для ограничения потребления ресурсов пользователем

Данная последовательность действий показывает, как с помощью квот ограничить доступные пользователю ресурсы.

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

  1. выбрать "Администрирование → Квота";
  2. нажать на название целевой квоты, чтобы перейти к подробному просмотру;
  3. перейти на вкладку "Потребители";
  4. нажать кнопку Добавить;
  5. в поле "Поиск" ввести имя пользователя, которого нужно связать с квотой;
  6. нажать кнопку Выполнить;
  7. установить флажок рядом с именем пользователя;
  8. нажать кнопку OK.

Через некоторое время пользователь появится во вкладке "Потребители".

Редактирование квот

Данная последовательность действий показывает, как изменять существующие квоты.

Последовательность действий по редактированию квот:

  1. нажать "Администрирование → Квота" и выбрать квоту;
  2. нажать кнопку Изменить;
  3. внести необходимые изменения;
  4. нажать кнопку OK.

Удаление квот

Данная последовательность действий показывает, как удалять квоты.

Последовательность действий по удалению квот:

  1. нажать "Администрирование → Квота" и выбрать квоту;
  2. нажать кнопку Удалить;
  3. нажать кнопку OK.

Принудительное применение политики соглашения об уровне обслуживания

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

Последовательность действий по принудительному применению политики соглашения об уровне обслуживания

  1. нажать "Ресурсы → ВМ";
  2. нажать кнопку Создать или выбрать ВМ и нажать кнопку Изменить;
  3. перейти на вкладку "Выделение ресурсов";
  4. указать "Ресурсы ЦП" с возможными значениями:
  • "Высокое" ‒ ВМ получают в два раза больше ресурсов, чем ВМ, для которых указано "Среднее" значение;
  • "Среднее" ‒ ВМ со "Средним" значением получают в два раза больше ресурсов, чем ВМ, для которых указано "Низкое" значение;
  • "Низкое";
  • "Отключено" ‒ указывает, что для расчета распределения долей демон VDSM должен использовать старый алгоритм; как правило, число долей, распределяемых в этих условиях, равно "1020".

Потребление ресурсов ЦП пользователями теперь управляется настроенной политикой.