Какими инструментами пользуетесь для резервного копирования?
Всем привет! Поделитесь в комментариях вашим опытом, какими инструментами пользуетесь для резервного копирования данных в организации.
Расскажу и про свой опыт. Работал в основном в небольших организациях, где не было второго админа и поэтому приходилось всё постигать самому. Сейчас работаю в компании - операторе связи. У нас своя сетевая инфраструктура в ЦОДах и небольшое количество серверов, на которых крутятся внутренние сервисы. Компания относительно молодая и первый сервер появился с моим приходом в 2022м году. Что бэкапим:
- виртуалки (Proxmox) - начинали с заимстованного доступа к PBS, со временем переехали на свой PBS. Ежедневно бэкапим все виртуалки (74 шт на сегодня). Уведомления о сбоях приходят на почту. Задания и уведомления настраиваются из самого Proxmox.
- 1С клиент-серверная (Linux), базы в Postgres, из баз вынесены двоичныt данных в локальное хранилище. Пока нет технической возможности использовать S3 как внешнее хранилище для рабочих данных (но используем для бэкапов). Бэкаплю на данный момент самописными скриптами (дамп sql, архивирование, перемещение в S3 с помощью rclone, уведомления в телеграм), ежедневно в нерабочие часы. Аналогично с хранилищем двоичных данных, каталоги архивируются и загружаются в S3. Сталкивался с проблемой, когда 1С ломала метаданные хранилища, восстанавливался из бэкапа и разбирался, проблема была устранена в платформе 8.5.
- Бухгалтерский софт на windows сервере в другой юрисдикции. У этого софта есть механизмы для бэкапа, но немного кривые + база файловая. В планировщике настроил задание, создаёт архив в локальной ФС. Как резервный вариант бэкаплю и рабочий каталог самого софта. Снапшоты снимаю с помощью KopiaUI в S3 хранилище, пинги настроены через веб-хуки в сервис Healthcecks. Он может прислать уведомление на почту или в тг, если пинг не пришёл.
- CRM Битрикс24 - бэкапится база Mysql, аналогично как в 1С
- Конфиги сетевых устройств. С самого начала мы используем Netbox для нашей сетевой инфраструктуры. Сетью я не занимаюсь (только на серверах и виртуалках), хотя доступы к железкам у меня есть. Настроен отдельный доступ для API пользователя. Все конфиги можно смотреть в интерфейсе самого Netbox. Там же прикручен плагин DanSheps/netbox-config-backup. Периодически он глючит и в добавок мы ограничены последним релизом Netbox 3.x из-за того, что у нас достаточно много самописного кода для автоматизаций и не можем обновить плагин до последних версий (хотя... было бы желание). Помимо того, что этот плагин глючит, нет возможности мониторинга. Был написан плагин, который работает поверх него, обнаруживает новые железки и для них создаёт задания для бэкапов, отдаёт данные в Zabbix для Discovery новых бэкапов, мониторит протухшие бэкапы.
- Nextcloud - пока бэкапим только виртуалку + есть корзина с удалёнными файлами. Пока этого хватало для восстановления. Был случай когда сотрудник увольнялся и удалил все свои документы (трудовой договор и т.п.), которые ещё нужны были бухгалтерии. Пришлось их восстановить. Да, у нас не ограничиваются доступы сотрудников, разве что к самим сервисам (группами в LDAP) как таковым - менеджерам доступы к железкам не нужны, такова политика компании. В перспективе думаю создавать отдельно копии на уровне ФС.
- Кодовая база - ну тут всё просто, отдельная виртуалка с GitLab CE, бэкапим её. Думаю ещё в перспективе настроить репликацию всех репозиториев.
Как сказал, компания растёт и приходится всё поднимать с нуля. Есть и дальнейшие планы для снижения RTO/RPO: 2 независимых кластера Proxmox с Ceph, репликации для VM, которые не умеют резервироваться на уровне приложений, резервирование на уровне приложений, настройка балансировщиков, NAT+VRRP, HA Proxy, синхронные/асинхронные репликации СУБД. резервирование PBS на разных площадках.
Да, использовал в прошлом и Veeam для VmWare и облачные решения типа MTS Backup, и различные Restic, BorgBackup, rsync. Тем не менее, среда разнородная, если с виртуалками всё относительно просто, то с файлами/базами начинается зоопарк. Давно есть мысли как то упростить этот процесс и перейти на одно универсальное решение. Сейчас появляются открытые решения на github для оркестрации бэкапов (backrest, borgmatic и т.п.), но пока не вижу решения, которое закрывало бы все потребности - универсальность, независимо от платформы, декларативное описание заданий, настройка уведомлений, мониторинг. До этого было ещё одно из требований - наличие веб-интерфейса для управления архивами, но этот пункт успешно закрылся S3 решением RustFS (замена MinIO. Да, он ещё в бете, но кажется вполне перспективным и пока что успешно справляется).
Спасибо, что уделили время. Буду рад услышать про ваш опыт.








