Add Healthchecks service details to architecture and backup documentation, including its role as a Dead man's switch for backups. Update backup scripts to utilize systemd timers instead of cron for improved scheduling. Enhance network topology documentation to reflect Healthchecks integration in the VPS Miran setup. This update clarifies backup processes and enhances overall system reliability.
6.5 KiB
6.5 KiB
Ручной тест восстановления (уровень 3)
Пошаговые команды для полной проверки восстановления после потери данных или миграции. Выполнять периодически (раз в 6–12 месяцев) или после значительных изменений инфраструктуры.
1. Полный restore на отдельный диск
Когда нужно: проверка, что все бэкапы доступны и можно восстановить систему на новом диске.
Подготовка
- Подключить диск с достаточным объёмом (например 2 TB) или использовать временный раздел.
- Смонтировать в
/mnt/restore-test(или аналогичный путь). - Убедиться, что есть креды restic:
/root/.restic-yandex.env,/root/.restic-passwordили Vaultwarden (объект RESTIC).
Восстановление из restic (Yandex)
# Список снимков
set -a; source /root/.restic-yandex.env; set +a
export RESTIC_PASSWORD_FILE=/root/.restic-password
export AWS_DEFAULT_REGION=${AWS_DEFAULT_REGION:-ru-central1}
restic snapshots
# Восстановить основной снимок (без photos) в каталог
restic restore latest --target /mnt/restore-test --path /mnt/backup
# Восстановить фото (отдельный снимок)
restic snapshots | grep photos
restic restore <SNAPSHOT_ID> --target /mnt/restore-test --path /mnt/backup/photos
Файлы появятся в /mnt/restore-test/mnt/backup/. Проверить наличие:
proxmox/dump/dump/— vzdumpproxmox/etc-pve/— конфиги хостаdatabases/— дампы БДother/vaultwarden/— архив Vaultwardenphotos/library/— фото Immich
2. Проверка Immich (веб, загрузка фото)
Цель: убедиться, что Immich работает, веб-интерфейс доступен, загрузка фото проходит.
Подготовка
- Immich доступен по https://immich.katykhin.ru (через NPM).
- ВМ 200:
ssh admin@192.168.1.200.
Шаги
- Открыть: https://immich.katykhin.ru
- Войти под учётной записью (логин/пароль из менеджера паролей).
- Загрузить тестовое фото:
- Нажать «Upload» (или загрузить через drag-and-drop).
- Выбрать небольшое изображение (например 1–2 MB).
- Дождаться завершения загрузки и появления в библиотеке.
- Проверить: фото появилось в галерее, превью отображается, метаданные доступны.
Если Immich не загружается
- Проверить:
ssh admin@192.168.1.200 "cd /opt/immich && docker compose ps"— все контейнеры running. - Логи:
docker logs immich_server(илиimmich_upload_optimizer). - NPM: прокси на 192.168.1.200:2283.
3. Проверка Nextcloud (веб, загрузка файла)
Цель: убедиться, что Nextcloud доступен и загрузка файлов работает.
Подготовка
- Nextcloud: https://cloud.katykhin.ru
- Контейнер 101:
ssh root@192.168.1.101илиpct exec 101 -- bash.
Шаги
- Открыть: https://cloud.katykhin.ru
- Войти под учётной записью (логин/пароль из менеджера паролей).
- Загрузить тестовый файл:
- Перейти в «Files» (или «Файлы»).
- Нажать «Upload» или перетащить файл (например .txt или .pdf).
- Дождаться завершения загрузки.
- Проверить: файл отображается в списке, можно скачать.
Если Nextcloud не работает
- Проверить:
pct exec 101 -- docker ps— контейнеры nextcloud и nextcloud-db-1 running. - Логи:
docker logs nextcloud-app-1(или имя контейнера из compose).
4. Проверка GPU passthrough на VM 200
Цель: убедиться, что GPU проброшена в Immich ML и распознавание работает.
Подготовка
- VM 200:
ssh admin@192.168.1.200 - В Immich: включить ML (Settings → Machine Learning).
Шаги
-
Проверить GPU в контейнере ML:
ssh admin@192.168.1.200 cd /opt/immich docker exec immich_machine_learning nvidia-smiОжидаемый вывод: информация о GPU (модель, память, драйвер).
-
Проверить распознавание в Immich:
- Загрузить фото с лицами или объектами.
- Дождаться обработки ML (иконка «Scan» в интерфейсе).
- Проверить: объекты/лица распознаны, теги добавлены.
-
Если nvidia-smi не работает:
- На хосте Proxmox: проверить
hostpci0в конфиге VM 200:cat /etc/pve/qemu-server/200.conf - Убедиться, что PCI-устройство GPU передано в ВМ (
hostpci0: 0000:xx:00.0и т.п.). - Перезапустить ВМ при необходимости:
qm stop 200 && qm start 200.
- На хосте Proxmox: проверить
5. Дополнительные проверки (по желанию)
- Vaultwarden: https://vault.katykhin.ru — вход, синхронизация.
- Gitea: https://git.katykhin.ru — вход, список репозиториев.
- Paperless: https://docs.katykhin.ru — вход, поиск документов.
- Galene: https://call.katykhin.ru — вход в комнату.
Связанные документы
- backup-howto — восстановление из vzdump, restic, дампов БД, расписание таймеров.
- container-200 — VM 200 (Immich), GPU, пути.
- architecture — хост, IP, доступ.