План відновлення після катастроф¶
Обсяг та цілі¶
Цей план стосується відновлення після катастрофічних подій, що впливають на доступність сервісу Weblate, цілісність даних або безперервність роботи.
Примітка
Цей план спеціально розроблений для розгортання Weblate компанією Weblate s.r.o., але його можна аналогічно застосувати до інших розгортань.
Визначень¶
Лихо: Будь-яка незапланована подія, що призводить до повної або значної втрати послуг, даних або функціональності системи. Прикладами є збій обладнання, пошкодження даних, збій інфраструктури або зловмисна атака.
Цільова точка відновлення (RPO): Максимально допустимий інтервал втрати даних: 24 години.
Цільовий час відновлення (RTO): Максимально прийнятний час для відновлення повного сервісу: 8 годин.
Критичні компоненти¶
Рівень застосунку: Застосунок Weblate на Python/Django, фонові виконавці (Celery) та заплановані завдання.
Рівень даних: База даних PostgreSQL, репозиторії перекладів (Git) та журнали.
Інфраструктура: Веб-сервер (NGINX/Apache), зворотний проксі-сервер, томи сховища, конфігурація SSL/TLS та додаткова система ведення журналу SIEM.
Політика резервного копіювання¶
Автоматичне створення резервних копій за допомогою BorgBackup гарантує, що всі основні компоненти (база даних, дані та конфігурація) щоденно створюють резервні копії. Резервні копії зберігаються у двох географічно різних місцях. Політика зберігання резервних копій гарантує, що останні резервні копії будуть доступні щодня і зберігатимуться протягом шести місяців.
Процедури відновлення¶
Сценарій збою: повна втрата хоста/системи¶
Підготовка нового хоста.
Bootstrap Weblate з використанням програмного забезпечення для налаштування.
Відновлення резервної копії Weblate після Відновлення з BorgBackup.
Перезапустіть контейнер Weblate.
Перевірте функціональність та виконайте перевірки на узгодженість.
Сценарій збою: пошкодження бази даних або втрата обсягу даних¶
Зупиніть Weblate, щоб запобігти подальшим операціям запису.
Відновлення резервної копії Weblate після Відновлення з BorgBackup.
Перезапустіть служби та перевірте узгодженість перекладу й даних користувача.
Сценарій невдачі: зловмисне втручання або програма-вимагач¶
Ізолюйте уражений хост від мережі.
Визначити останню відому справну резервну копію (до зараження).
Виконайте кроки з Сценарій збою: повна втрата хоста/системи, щоб розгорнути систему на новому хості.
Валідація та тестування¶
Перевірка резервних копій: Щомісячне тестування відновлення резервних копій Weblate.
Тренування з відновлення після аварій: Проводьте принаймні щорічно, включаючи повне відновлення до проміжного середовища.
Автоматизовані перевірки цілісності: BorgBackup забезпечує цілісність резервних копій архівів.
Кроки після відновлення¶
Переконайтеся, що всі служби працюють та доступні.
Повідомляти користувачів та зацікавлених сторін про статус відновлення.
Задокументуйте часову шкалу, першопричину та отримані уроки.
Застосуйте оновлення або зміни інфраструктури, щоб запобігти повторенню.
Дотримуйтесь Політика розкриття інформації про вразливості у випадку, якщо була задіяна вразливість.