Кто-нибудь есть или знает хороший шаблон/план для автоматического обновления сервера? В этом случае я обновляю сервер python/django, но мне придется применить это обновление ко многим машинам и хочу быть уверенным, что операция полностью проверяется и восстанавливается, если что-то пойдет не так.Сценарий обновления сервера
Am изображая что-то вдоль линий:
- удаленно получать новый код
- проверить код загрузки (например, хэш-файлов)
- снести сервер, отображение «вы обновляете диалог»
- резервная база данных
- резервный код каталога
- применять новые обновления кода
- проверьте обновление кода (например, хэш-файлов)
- применить обновление базы данных (при необходимости)
- запускать тесты
- если успех
- сервер запуска
- проверить обновления сервера
- еще
- восстановить старую базу данных
- восстановление старого кода
- сообщить об ошибке
- сервер запуска
- проверить восстановление сервера
Я уверен, что это не является исчерпывающим, и есть много других условий ошибки, чтобы рассмотреть, но мне интересно, если что-то вроде этого уже существует в качестве формализованного контрольного перечня процессов/передового опыта? В идеале, все это, конечно, должно выполняться одним вызовом сценария.
Возможно, вам больше повезло узнать об этом на http://serverfault.com –