АйТи Фреш
Главная / Статьи / Серверы и хостинг
Серверы и хостинг

Application Backup Repository в Veeam 13.1: как защитить дампы приложения, которое умеет писать только в сетевую папку

Автор: Семёнов Евгений Сергеевич, директор ООО «АйТи-Фреш» · · ~27 мин чтения
Application Backup Repository в Veeam 13.1: как защитить дампы приложения, которое умеет писать только в сетевую папку
Иллюстрация к статье «Application Backup Repository в Veeam 13.1: как защитить дампы приложения, которое умеет писать только в сетевую папку».

Приложение делает свой родной дамп и кладёт его в сетевую папку. Плагина под Veeam для него нет и не будет. Папка живёт на дешёвом NAS, доступна на запись той же учёткой, что и само приложение, и потому доступна шифровальщику, кривому скрипту ротации и уволенному админу. В Veeam 13.1 под этот сценарий сделали Application Backup Repository. Ниже — как я его разворачивал на боевом стенде, какие поля в мастере реально важны, где я споткнулся и сколько это стоит в лицензиях.

«Дамп есть, а бэкапа нет» — как это выглядит на практике

Звонок в пятницу вечером: товароучётная система после обновления не поднимается, откатите базу на вчера. Идём в сетевую папку, куда три года складывались дампы. Папка на месте. Файлов в ней — один, сегодняшний, и он битый, потому что процесс дампа падал последние двое суток. Разбор занял двадцать минут: месяцем раньше кто-то поправил скрипт ротации, переменная с путём не подставилась, и строка вида find $BACKUP_DIR -mtime +7 -delete отработала от корня шары. Никто ничего не заметил, потому что мониторился ровно один факт — «скрипт завершился с кодом 0». Он и завершался с нулём.

Я вижу этот сюжет с завидной регулярностью, и вариаций три. Первая — как выше: собственная автоматизация съела собственные же бэкапы. Вторая — шифровальщик прошёлся по сети и накрыл шару вместе с продом, потому что учётка приложения имеет туда полный доступ по определению. Третья, самая обидная: NAS отработал свои шесть лет и умер, а второй копии никогда и не было, потому что «там же бэкапы, они и есть копия».

Общий корень один. У приложения нет плагина под систему резервного копирования. Оно умеет ровно одно действие — положить свой родной экспорт в каталог. Всё, что дальше, никто не проектировал: каталог просто «есть». В Veeam Backup & Replication 13.1 (документация на момент написания относится к билду 13.1.1.18) под этот кейс появился отдельный тип репозитория, Application Backup Repository, дальше ABR. Он не делает бэкап вместо приложения. Он делает так, чтобы папка перестала быть просто папкой.

Если приложение пишет дампы в сетевую папку и вы не можете назвать, где лежит вторая копия этих дампов и кто физически не может их удалить — бэкапа у вас нет. Есть привычка.

Что такое Application Backup Repository и чем он точно не является

ABR — это, если коротко, «умная» NFS-шара, поднятая на Veeam Hardened Repository, который развёрнут из ISO образа Veeam Infrastructure Appliance (VIA). VIA — это собственный Linux-дистрибутив Veeam в формате JeOS, загрузочный ISO, где нет ничего лишнего: только то, что нужно для роли. Когда вы создаёте ABR, Veeam выделяет на ZFS-пуле отдельный dataset, экспортирует его по NFS и сам открывает нужные порты в фаерволе аплайнса. Приложение монтирует эту шару и пишет туда свои дампы ровно так же, как писало на NAS, — оно вообще не в курсе, что рядом есть Veeam.

Дальше начинается то, ради чего всё затевалось. По расписанию, которое вы задали в репозитории, VBR снимает снимок этого dataset. Снимок фиксирует полное состояние шары на момент времени и становится одной точкой восстановления. Сразу после создания Veeam накладывает на снимок hold на срок, равный сроку retention: удалить снимок раньше нельзя ни из консоли, ни руками с хоста. Затем репозиторий отправляет на backup-сервер уведомление о рескане, VBR подтягивает данные о новой точке, пишет их в конфигурационную БД и показывает в консоли.

И теперь честно про границы. ABR — не приложение резервного копирования. Он не знает, что у вас за файлы, не умеет их квиесцировать, не запускает pg_dump и не проверяет целостность архива. Расписание дампов, их формат, полнота и корректность — по-прежнему на вашей стороне. Veeam берёт на себя только хранение: снимки, неизменяемость, права доступа и копирование дальше. Это не замена плагину. Это замена папке на NAS.

Отличие от привычного NFS-репозитория тоже стоит проговорить, потому что путаются постоянно. В классическом NFS-репозитории Veeam выступает клиентом к чужой шаре и складывает туда свои VBK/VIB. В ABR всё наоборот: Veeam сам является NFS-сервером, а на шаре лежат чужие файлы в чужом формате, которые Veeam даже не парсит.

Режим ABR не включается сам. В What's New 13.1 сказано прямо: функция opt-in, её явно включают на вновь установленных Hardened Repository, а на существующих инсталляциях обновлением она НЕ активируется. Включение идёт через запрос с одобрением Security Officer. Если вы обновились и не видите нового типа репозитория — вы ничего не сломали; планируйте свежую установку VIA под ABR.
Application Backup Repository в Veeam 13.1: как защитить дампы приложения, которое умеет писать только в сетевую папку — схема
Схема к статье. Открыть схему в полном размере

Стенд детского магазина «Растём вместе»: железо, установка VIA и включение режима

Разбор делаю на живом внедрении. Детский магазин «Растём вместе»: 43 рабочих места — торговый зал, склад, пункт выдачи интернет-заказов и небольшой офис. Хозяйство, которое требовалось защитить: товароучётная система на Ubuntu 22.04 с PostgreSQL 16 (ночной pg_dump -Fc, около 12 ГБ на выходе), Proxmox VE с шестью LXC-контейнерами под сайт, обмен с маркетплейсами и вспомогательные сервисы (vzdump раз в сутки), и конфиги сетевого железа — 7 коммутаторов и роутер, которые собирает oxidized. Всё это годами складывалось на один QNAP, часть по SMB, часть по NFS, ротация — самописными скриптами.

Под ABR взяли отдельную машину: HP DL380 Gen9, один E5-2630 v4, 48 ГБ памяти, контроллер P440ar с батарейкой, шесть дисков SAS 4 ТБ в аппаратном RAID6. Формальные требования Veeam к ABR заметно скромнее — минимум 4 ядра (vCPU) от 1 ГГц, 8 ГБ RAM, первый диск от 120 ГБ и сеть от 1 Гбит/с. Но 8 ГБ — это «чтобы включилось»: под ZFS память нужна как воздух, и я бы ниже 32 ГБ на боевом стенде не опускался. Первый диск сделали 200 ГБ, потому что на нём живут JeOS, софт VBR и кэш instant recovery — 120 ГБ там впритык.

Стенд ABR у «Растём вместе»
----------------------------------------
Шасси      : HP DL380 Gen9, 1 x E5-2630 v4, 48 GB RAM
Контроллер : Smart Array P440ar + FBWC 2 GB (кэш с батареей/конденсатором)
Диск 1     : 200 GB (JeOS + VBR + instant recovery cache), мин. по докам 120 GB
Пул данных : 6 x 4 TB SAS -> RAID6 -> один ZFS pool ~14 TB
Сеть       : 2 x 1 GbE LACP в сегмент серверов (мин. по докам 1 Гбит/с)
Софт       : Veeam Infrastructure Appliance ISO 13.1, билд 13.1.1.18

Дальше — ограничение, которое ломает планы чаще всего. ABR нельзя разместить на удалённых дисках по iSCSI или Fibre Channel. Только локальные диски и аппаратный RAID, точка. То есть идея «а положим-ка мы это на нашу СХД, там полки и репликация» не пройдёт: аплайнс её просто не увидит. Дополнительные пустые диски при развёртывании можно автоматически собрать в один storage pool, но это должны быть локальные диски. И да, контроллер с кэшем на батарее или конденсаторе Veeam рекомендует прямым текстом — по производительности и по надёжности.

Два числа по заполнению пула, которые надо занести в мониторинг сразу: при заполнении выше 80 % начинает деградировать производительность, при 97 % создание снимков ПРЕКРАЩАЕТСЯ. Второй порог — это тихая потеря защиты: дампы продолжат писаться, а точек восстановления не будет. Алерт ставьте на 75 %, не на 90 %.
Порядок действий: Стенд детского магазина «Растём вместе»: железо, установка VIA и включение режима — схема
Порядок действий: Стенд детского магазина «Растём вместе»: железо, установка VIA и включение режима. Открыть схему в полном размере

Мастер репозитория: ZFS-пул, mount path, права и версии NFS

New Application Backup Repository, шаг Repository. Здесь три вещи. Поле ZFS pool — выбираем пул, под полем сразу видно ёмкость и свободное место. Поле Mount path — путь, по которому шара будет смонтирована на самом репозитории. Под полем Veeam показывает полный путь монтирования и даёт кнопку Copy path: вот его и отдавайте владельцу приложения, не собирайте путь руками по кусочкам, ошибётесь в регистре — потом полдня будете ловить «permission denied».

Права доступа по умолчанию — deny all. Ни один NFS-клиент не подключится, пока вы явно не разрешите. Разрешения добавляются в таблицу «Grant permissions to access the NFS share» кнопкой Add: в окне Add host or IP mask вводится либо полное DNS-имя (erp01.shop.example), либо маска с подстановкой (*.shop.example), либо подсеть, и рядом выбирается Permission — Read или Read/Write. Мы дали Read/Write только самому серверу учётной системы и Read — рабочей станции инженера, чтобы он мог глазами проверить, что дамп на месте, и при этом ничего не мог удалить.

# монтирование ABR-шары на сервере учётной системы (Ubuntu 22.04)
# ВАЖНО: <путь_из_Copy_path> — ровно то, что выдала кнопка Copy path в мастере
mkdir -p /mnt/backup/erp
mount -t nfs -o vers=4.2,hard,timeo=600,retrans=2,noatime \
  10.20.30.10:<путь_из_Copy_path> /mnt/backup/erp

# в /etc/fstab, чтобы переживать перезагрузку
10.20.30.10:<путь_из_Copy_path> /mnt/backup/erp nfs vers=4.2,hard,timeo=600,retrans=2,_netdev 0 0

Версии NFS — самое неочевидное место, и именно на нём я потерял вечер. Если права раздаются по хосту или IP-маске, поддерживаются NFSv3, NFSv4.1 и NFSv4.2. Если включаете Kerberos-аутентификацию — только NFSv4.1 или NFSv4.2, и хост ABR обязан быть введён в домен. А вот если клиент — Windows со штатным Client for NFS, то доступен ТОЛЬКО NFSv3, из-за ограничений самой ОС. В магазине oxidized крутится на Linux, а вот выгрузку старой программы лояльности делает Windows-сервер — там пришлось делать отдельный ABR под NFSv3 и править реестр.

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default
  AnonymousUid = 399   (DWORD 32-bit, десятичное)
  AnonymousGid = 399   (DWORD 32-bit, десятичное)

Ещё две тонкости, которые надо знать заранее. Первая: когда доступ раздан по хосту/IP без Kerberos, все операции чтения и записи на шаре Veeam выполняет от служебного пользователя veeam-usr-abr-nfs. То есть владельцем файлов будет он, а не ваш postgres, и наивные проверки прав в скриптах ротации на этом ломаются. При Kerberos identity пользователя сохраняется. Вторая: ограничения по IP и по Kerberos комбинируются логическим И. Если в списке IP есть хотя бы один адрес, керберос-пользователь с другого адреса получит отказ. Если IP не указаны совсем, в списке будет значиться «All hosts are allowed» — и керберос-пользователь зайдёт откуда угодно.

Не оставляйте список IP пустым «на время тестов» при включённом Kerberos. Пустой список — это не «пока никого», это «All hosts are allowed», то есть шара открыта из любой точки сети для любого валидного доменного пользователя из списка.

Расписание снимков, retention и что здесь на самом деле означает иммутабельность

Шаг Schedule. Первым делом — чекбокс «Create repository snapshots». Если его не поставить, снимки не создаются, и — внимание — политика retention к репозиторию тоже не применяется. Вариантов расписания три: Daily at this time (ежедневно в указанное время, по будням или с заданной периодичностью дней), Monthly at this time (раз в месяц в конкретные дни) и Periodically every (с интервалом внутри суток, с опциональным окном разрешённых часов).

У периодического расписания есть механика, о которую спотыкаются: Veeam всегда отсчитывает интервалы от 12:00 AM. Поставили интервал 4 часа — снимки будут в 00:00, 04:00, 08:00, 12:00, 16:00, 20:00, и никак иначе. Сдвинуть можно только полем Start time within an hour или окном разрешённых часов: если запрещённый интервал закончился, Veeam сделает снимок немедленно и дальше пойдёт по сетке. И отдельно: расписание работает по локальному времени хоста репозитория, а не backup-сервера. Проверьте таймзону аплайнса до того, как будете объяснять клиенту, почему «ночной» снимок случился в обед.

Поле Retention policy — количество дней хранения снимков. Здесь же спрятан главный смысл всей фичи: этот же срок является сроком неизменяемости. Veeam накладывает на снимок hold ровно на указанное количество дней, и до истечения срока снимок не удалить — ни из консоли VBR, ни с самого хоста, ни скриптом, ни под рутом. Вот это и есть та самая разница между «папкой на NAS» и защищённым хранилищем: скрипт ротации, который в магазине когда-то съел месяц дампов, физически не смог бы тронуть точки восстановления.

Как я нарезал в «Растём вместе». Дамп учётной системы делается раз в сутки в 01:30, после закрытия кассовых смен и ночного обмена с сайтом, снимки ABR — Periodically every 6 hours, retention 21 день. Получается 84 точки восстановления при одном новом дампе в сутки. Наивно ожидалось, что снимки почти ничего не займут: новых данных-то один файл в день. По факту за три недели пул под этот ABR разросся до ~350 ГБ вместо расчётных 250 ГБ — потому что pg_dump -Fc даёт сжатый поток, который между днями практически не дедуплицируется, и каждый суточный дамп ложится целиком. Планируйте объём по формуле «размер дампа × число дней retention × коэффициент 1,4», а не по надеждам на ZFS.

Отдельно есть ручные снимки: Backup Infrastructure → Application Backup Repositories → выбрать репозиторий → Backup now. Ретеншен у них тот же, что в мастере, и как точка восстановления они ничем не отличаются от плановых. Пользуюсь этим перед каждым обновлением приложения — тридцать секунд, а нервов экономит много.

Veeam прямо пишет в ограничениях: из-за application-agnostic природы снимка консистентность и quiescence НЕ гарантируются, а пост-восстановительные операции — ваша ответственность, поддержка по конкретным пользовательским сценариям не оказывается. Переводя на русский: снимок ловит состояние файлов на шаре, а не состояние вашей БД. Первый заход у нас дал две точки с недописанным дампом. Лечится тем, что приложение пишет во временное имя и делает rename в финале, — и расписанием снимков со сдвигом относительно окна выгрузки.
Памятка: Расписание снимков, retention и что здесь на самом деле означает иммутабельность — схема
Памятка: Расписание снимков, retention и что здесь на самом деле означает иммутабельность. Открыть схему в полном размере

Восстановление: revert против export — и почему «один ABR = одно приложение»

Восстановление живёт в мастере Instant Application Backup Repository Recovery, и на шаге Restore Mode есть ровно два варианта. Revert snapshot — снимок экспортируется по оригинальному NFS-пути, доступен на чтение и запись, права наследуются оригинальные, а данные, которые сейчас лежат в исходной папке, перезаписываются. Важная деталь: сам откат ничего из цепочки не удаляет — по завершении сессии восстановления все существующие снимки остаются доступны как точки восстановления. Второй вариант — Export snapshot via temporary path: Veeam монтирует выбранный снимок как отдельную временную NFS-шару, доступную только для чтения, оригинальная папка не трогается вообще, а права на временный путь настраиваются отдельно на шаге Permissions.

В девяти случаях из десяти нужен export. Приходит инженер и говорит: «дай мне дамп за прошлый вторник» — вы экспортируете снимок во временный путь, он забирает файл, вы закрываете сессию, прод при этом даже не икнул. Revert нужен в двух ситуациях: шару зашифровали целиком или её содержимое снесли, и надо вернуть всё состояние разом.

А вот дальше — самое важное проектное следствие, и его надо понять до того, как вы начнёте создавать репозитории. Revert откатывает ВЕСЬ dataset целиком, всю шару. Именно поэтому в ограничениях Veeam стоит прямое требование: под каждое приложение — свой отдельный ABR, и нельзя настраивать несколько приложений на запись в один репозиторий. Технически это возможно, но делает невозможным гранулярное восстановление отдельного приложения после revert.

Мы на этом обожглись ровно так, как описано. Изначально, экономя лицензии, сложили в один ABR и дампы учётной системы, и vzdump с Proxmox, и конфиги коммутаторов. Через две недели подрядчик накатил неудачное обновление учётной системы, потребовался откат на позавчерашнюю точку — и выяснилось, что вместе с базой уедут назад и конфиги двух дней, включая свежий VLAN для терминалов пункта выдачи. В итоге разложили на три отдельных ABR, каждый со своим расписанием и своим сроком хранения. Стоило это трёх лицензий вместо одной, но иначе решение просто не работает как решение.

И маленькая история про тестовое восстановление, потому что тесты надо делать до боевого. Учебный revert делали в 11 утра, забыв, что накануне подрядчик повесил внеплановую выгрузку остатков для маркетплейса. Процесс, писавший в примонтированную шару, получил под собой подменённый экспорт и красиво упал, оставив мусор. Вывод простой: перед revert останавливаем пишущий процесс и, по-хорошему, размонтируем шару на клиенте.

Revert перезаписывает данные в оригинальной папке. Останавливайте приложение перед откатом. И проведите учебное восстановление на тестовом ABR до того, как решение уйдёт в бой, — стоимость репетиции нулевая, стоимость премьеры без репетиции вы уже знаете.

Backup Copy, лицензии и куда я советую тратить силы в первую очередь

ABR сам по себе — это одна копия на одной железке в одной стойке. Правило 3-2-1 он не закрывает, и делать вид, что закрывает, нельзя. Закрывается оно Backup Copy Job: в мастере New Backup Copy Job на шаге Objects выбирается сам application backup repository, и дальше Veeam инкрементально переносит содержимое снимков в обычную цепочку VBK/VIB на другой репозиторий — hardened-репозиторий на второй площадке, объектное хранилище, Veeam Data Cloud Vault. Оттуда данные уже штатно уезжают на ленту, если вам нужен настоящий air gap. В «Растём вместе» копия уходит на второй hardened-репозиторий на удалённой площадке, ленты у магазина нет и для его масштаба не нужно.

Теперь про деньги, потому что это решающий фактор. По Considerations and Limitations один ABR потребляет одну лицензию Veeam Universal License на Veeam Data Platform Advanced или Premium — Foundation для ABR не годится. Socket-based лицензирование не поддерживается вообще — если у вас старая сокетная лицензия, ABR вам недоступен, и это надо выяснить до проектирования, а не после. Три приложения = три ABR = три VUL. И ещё: как только лицензия у ABR отзывается, расписание снимков автоматически отключается, ручное создание снимков тоже становится недоступно. То есть закончившаяся лицензия — это не «работает с предупреждением», это остановка защиты.

Где решение спорное, скажу прямо. Если у приложения есть родной плагин или интеграция Veeam — Oracle RMAN с плагином, PostgreSQL, MySQL, SAP HANA, MS SQL — берите плагин, а не ABR. Плагин знает про транзакции, про журналы, про point-in-time; ABR не знает ничего, он про файлы на шаре. ABR — инструмент для того, у чего плагина нет и не появится: АСУ ТП, СКУД, видеоаналитика, самописная учётка от подрядчика, который растворился, сетевое железо, экспорт LXC. Не тащите его туда, где есть решение поумнее.

У плагинов и требования к хранилищу другие. Veeam Plug-ins для Oracle RMAN, SAP HANA и Microsoft SQL Server пишут не в NFS-шару, а в обычные репозитории Veeam: backup repository или scale-out backup repository, в том числе в объектное хранилище как основной репозиторий — Veeam Data Cloud Vault, Amazon S3, S3-совместимое, Google Cloud Storage, Azure Blob, IBM Cloud, Wasabi, 11:11. Доступ плагина к объектному хранилищу всегда идёт через прокси-компонент — gateway server или mount server (direct connection), и при смене режима подключения плагин должен сначала связаться с backup-сервером, до этого его задания падают. Для S3-совместимого хранилища права на бакет выставляются вручную, а для иммутабельности нужны Versioning и Object Lock с отключённым default retention. Если SQL крутится внутри ВМ, альтернатива обоим вариантам — image-level бэкап с application-aware processing и восстановление через Veeam Explorer for Microsoft SQL Server.

И ещё одна развилка — где живёт retention. В ABR срок хранения задаёт только Veeam: число дней в поле Retention policy, оно же срок hold на снимке, а дампы внутри шары приложение может ротировать как угодно — старые версии всё равно останутся в снимках. У плагинов срок хранения задаётся в политике на стороне Veeam (для RMAN по умолчанию 7 дней, плюс опционально GFS), но приложение должно этому не мешать: для Oracle документация требует, чтобы CONTROL_FILE_RECORD_KEEP_TIME был больше recovery window, иначе записи о бэкапах перезаписываются раньше, чем retention признает их устаревшими. Две политики хранения, которые спорят друг с другом, — классическая причина «бэкапы есть, а восстановить нечего».

И приоритеты, если внедрять начинаете завтра. Первым делом — разложить, какие приложения вообще пишут дампы в папки, и кто имеет к этим папкам доступ на запись. Это бесплатно и уже даёт половину картины. Вторым — под самое ценное поднять один ABR и настроить нормальный retention с иммутабельностью. Третьим — Backup Copy на вторую площадку. А вот на что можно временно забить: на Kerberos (права по IP-маске в изолированном серверном сегменте — вполне рабочая первая итерация), на тонкую настройку почтовых уведомлений и на красивое расписание с окнами разрешённых часов. Это доделывается потом, за час.

Практический вывод: ABR не делает бэкап лучше — он делает так, что уже существующий дамп нельзя уничтожить. Это ровно тот слой, которого не хватало приложениям без плагина. Но качество самого дампа, его консистентность и проверку восстановимости никто с вас не снимал.
Порядок действий: Backup Copy, лицензии и куда я советую тратить силы в первую очередь — схема
Порядок действий: Backup Copy, лицензии и куда я советую тратить силы в первую очередь. Открыть схему в полном размере

Частые вопросы

Нужно ли покупать отдельную лицензию под каждый ABR?

Да. Один application backup repository потребляет одну лицензию Veeam Universal License на Veeam Data Platform Advanced или Premium. Сокетное лицензирование не поддерживается вообще. Поскольку под каждое приложение нужен свой репозиторий, три защищаемых приложения — это три VUL. И помните: при отзыве лицензии расписание снимков автоматически отключается, ручное создание снимков тоже перестаёт работать.

Можно ли разместить ABR на СХД, подключённой по iSCSI или Fibre Channel?

Нет. Veeam Infrastructure Appliance поддерживает под ABR только локальные диски и аппаратный RAID; удалённые iSCSI- и FC-устройства прямо перечислены в ограничениях. Планируйте локальную дисковую полку в сервере с RAID-контроллером, у которого кэш защищён батареей или конденсатором. Отказоустойчивость на уровне площадки закрывается не СХД, а Backup Copy Job на второй репозиторий.

Что будет, если несколько приложений всё-таки пишут в один ABR?

Технически работать будет, снимки создадутся. Проблема вылезет при восстановлении: revert откатывает весь dataset целиком, то есть все приложения разом. Вернуть данные только одного приложения на нужную точку вы не сможете. Именно поэтому документация требует выделять отдельный ABR под каждое приложение. Если очень нужно достать один файл, спасает режим Export snapshot via temporary path — он монтирует снимок отдельно и только на чтение.

Какая версия NFS нужна и почему у Windows-клиента всё иначе?

При раздаче прав по хосту или IP-маске поддерживаются NFSv3, NFSv4.1 и NFSv4.2. При включённой Kerberos-аутентификации требуется NFSv4.1 или NFSv4.2, а хост ABR должен быть введён в домен. Штатный Windows Client for NFS умеет только NFSv3 — это ограничение самой ОС. Для Windows-клиентов дополнительно нужно прописать в HKLM\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default параметры AnonymousUid и AnonymousGid со значением 399 (DWORD, десятичное), иначе аутентификация служебного пользователя аплайнса будет ломаться.

Гарантирует ли ABR консистентность дампа?

Нет, и Veeam это прямо пишет. Процедура снимка application-agnostic: она фиксирует состояние файлов на шаре, а не состояние базы. Если снимок попал на момент, когда дамп ещё пишется, вы получите точку с недописанным файлом. Лечится двумя способами: приложение пишет во временное имя и делает переименование по завершении, а расписание снимков сдвигается относительно окна выгрузки. Пост-восстановительные операции — тоже ваша зона ответственности, официальной поддержки по конкретным сценариям приложения не будет.

Мы обновились до 13.1, но нового типа репозитория не видим. Что не так?

Скорее всего, всё так. Режим ABR — явный opt-in: по What's New он включается на вновь установленных Hardened Repository и не активируется на существующих инсталляциях при обновлении, поэтому надёжнее развернуть под ABR свежий VIA. Дальше нужно зайти в Veeam Host Management, в разделе Backup Infrastructure нажать Submit Request напротив пункта «Allow this host to function as both a Hardened and an Application Backup repository» и дождаться одобрения Security Officer (если такая учётка не настроена, режим включится сразу). Причина такой процедуры — сервисы NFS увеличивают поверхность атаки хоста, поэтому Veeam требует осознанного решения.

Как вывести данные ABR за пределы одной площадки?

Через обычный Backup Copy Job: в мастере New Backup Copy Job на шаге Objects выбирается application backup repository, и содержимое снимков инкрементально переносится в стандартную цепочку VBK/VIB на другой репозиторий — hardened, объектное хранилище или Veeam Data Cloud Vault. Из этой цепочки данные штатно выгружаются на ленту, если нужен физический air gap.

Столкнулись с похожей задачей? Обращайтесь — решим

Если у вас происходит что-то из описанного в этой статье — или любая другая проблема с ИТ-инфраструктурой, — обращайтесь в любое время. Мои специалисты и я лично разберём ситуацию, найдём настоящую причину и доведём до решения.

Возьмёмся и за разовую задачу, и за постоянное обслуживание. Первичная консультация — бесплатно и без обязательств.

📞 +7 903 729-62-41 💬 MAX: +7 903 729-62-41 ✈ Telegram @ITfresh_Boss

С уважением, Семёнов Евгений Сергеевич, директор «АйТи Фреш» — IT-аутсорсинг для компаний до 50 рабочих мест, 15+ лет практики

Источники

© ООО «АйТи-Фреш» · Москва · Все статьи