Проверка целостности приложения при его запуске
Tarantool Database поддерживает контроль целостности компонентов приложения во время его работы.
Для этого при упаковке архива приложения утилита tt CLI генерирует файлы с хешами всех компонентов приложения,
используя опцию --with-integrity-check.
При запуске Tarantool DB с опцией --integrity-check экземпляры кластера периодически сверяют эти хеши
и при обнаружении изменений переходят в нерабочее состояние (статус узла NOT RUNNING при вызове команды tt status).
Проверка целостности также поддерживается при использовании централизованного хранилища конфигурации на основе etcd или Tarantool (TbCS): в этом случае проверяется и конфигурация кластера, загруженная в хранилище.
Для включения проверки целостности выполняются следующие шаги:
- Создание ключевой пары (приватный и публичный ключи).
- Упаковка приложения с опцией
--with-integrity-check— при этом tt CLI подпишет хеши компонентов приватным ключом. - Запуск приложения с опцией
--integrity-checkс указанием публичного ключа. При необходимости задается период проверки с помощью опции--integrity-check-period. По умолчанию проверка запускается раз в 24 часа.
Если во время работы приложения будет изменен какой-либо компонент или конфигурация, кластер в течение заданного интервала обнаружит нарушение целостности и перейдет в нерабочее состояние.