Контроль целостности образов дисков и конфигурации ВМ

Задача контроля целостности состоит из двух частей:

  • Контроль целостности дисков во время хранения ВМ в выключенном состоянии. Контроль осуществляется путём вычисления и проверки контрольных сумм файлов (далее ‒ КС), в которых физически хранятся образы виртуальных дисков.
  • Сохранение настроек ВМ неизменными вне зависимости от состояний ВМ. Для этого производится подсчёт КС для параметров ВМ, которые имеют непосредственное отношение к работе ВМ. Речь идёт о таких параметрах, как объём оперативной памяти, количество процессоров, перечень подключённых дисков и др. Второстепенные параметры (название ВМ, комментарий, описание и пр.), не влияющие на работу BM, не используются при контроле целостности конфигурации BM.

Существуют определённые ограничения на использования контроля целостности дисков:

  • Не поддерживается контроль ВМ с установленным свойством "Без сохранения состояния" ("Stateless").
  • Не поддерживаются снимки (snapshots) дисков.
  • Поддерживаются только домены хранения дисков ВМ на базе NFS и GlusterFS.

Активация режимов контроля целостности ВМ

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

Для активации контроля для заданной ВМ необходимо включить в окне "Параметры виртуальной машины" во вкладке "Настраиваемые пользователем параметры" соответствующие параметры: integrity_disks_control, integrity_configuration_control или integrity_control.

Контроль целостности включён, если параметр установлен в true. И выключен в иных случаях (параметр не установлен или установлен в false). Третий пользовательский параметр integrity_control является устаревшим аналогом параметра integrity_disks_control, он настоятельно не рекомендуется к использованию.

Условия выполнения тех или иных действий по контролю КС дисков ВМ представлены в таблице 1.

Например, при контроле целостности дисков запуск ВМ разрешён при подтверждённых КС у всех дисков. Также запуск ВМ разрешён, если сохранённых КС нет (например, в случае первичного запуска). Сохранённых КС также не будет, если ВМ запускалась с отключённой функцией контроля КС (КС специально сбрасываются при выключении ВМ, иначе они окажутся устаревшими и в дальнейшем приведут к запрету на включение ВМ).

При контроле целостности конфигурации условия и действия аналогичны, за одним исключением: подсчёт и сохранение КС производится не при выключении ВМ, а при её включении.

Действия по контролю целостности конфигурации ВМ представлены в таблице 2.

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

Для сигнализации прохождения (или не прохождения) проверки КС у ВМ автоматически обновляется свойство "Описание (Description)". К свойству добавляется подстрока вида "Integrity control: ... ;", например "Integrity control: Disks - valid, Configuration - valid;". Если в силу определённых условий контроль не был проведён, строка-маркер удаляется.