Контроль целостности образов дисков и конфигурации ВМ
Задача контроля целостности состоит из двух частей:
- Контроль целостности дисков во время хранения ВМ в выключенном состоянии. Контроль осуществляется путём вычисления и проверки контрольных сумм файлов (далее ‒ КС), в которых физически хранятся образы виртуальных дисков.
- Сохранение настроек ВМ неизменными вне зависимости от состояний ВМ. Для этого производится подсчёт КС для параметров ВМ, которые имеют непосредственное отношение к работе ВМ. Речь идёт о таких параметрах, как объём оперативной памяти, количество процессоров, перечень подключённых дисков и др. Второстепенные параметры (название ВМ, комментарий, описание и пр.), не влияющие на работу 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;". Если в силу определённых условий контроль не был проведён, строка-маркер удаляется.