Назад | Перейти на главную страницу

Отправка снимков ZFS инкрементально

Я с удовольствием использовал zfsnap с CentOS и ZFSonLinux по сценарию, аналогичному тому, как это описано на веб-сайте, но возникла проблема. К сожалению, несколько дней назад резервное копирование не выполнялось, и теперь я попал в странную ситуацию. У меня есть серия инкрементных резервных копий на моем резервном сервере ZFS с моего основного сервера ZFS и несколько новых снимков на основном сервере. К сожалению, из-за пропущенного резервного копирования и автоматического уничтожения старых снимков на главном сервере больше нет общего снимка между двумя системами для выполнения инкрементной отправки. т.е. при резервном копировании есть:

backuppool/x@snap2 
backuppool/x@snap3
backuppool/x@snap4

а на главном сервере zfs есть:

mainpool/x@snap6 
mainpool/x@snap7
mainpool/x@snap8

Есть ли способ снова синхронизировать их, или мне нужно уничтожить все при резервном копировании и выполнить полное (недостаточно места для двух полных резервных копий)? Я попытался указать отправку со ссылкой на имя snap4 на удаленном сервере резервного копирования с основного сервера, но, поскольку у основного сервера нет snap 4, он не может вычислить инкрементное. Я также попытался отправить snap4 из резервной копии на главный сервер, но похоже, что единственный способ сделать это - сделать это как полную отправку (недостаточно места), и мне нужно будет стереть существующие снимки. Удаление всей вашей истории резервного копирования при несовпадении моментальных снимков кажется довольно неудобным, есть ли какое-либо решение в этом сценарии?

Поскольку в вашей настройке нет общего базового снимка, вы не сможете выполнить инкрементный zfs send больше. Вам нужно будет уничтожить набор данных в backuppool:

zfs destroy -r backuppool/x

и повторно отправить самый последний снимок в резервную копию

zfs send mainpool/x@6 | [transfer magic] | zfs recv backuppool/x

Удаление всей вашей истории резервного копирования при несовпадении моментальных снимков кажется довольно неудобным, есть ли какое-либо решение в этом сценарии?

«Решение» состоит в том, чтобы просто не удалять исходные снимки, если только эти снимки не были проверены на успешную передачу (т. Е. Не отображаются в удаленном zfs list -tall вывод). Я понятия не имею, поддержит ли zfsnap вас в этом, но даже если этого не произойдет, вы можете использовать сценарий оболочки, выполняющий такую ​​проверку, прежде чем позволить zfsnap что-либо удалить.