@tgarl

Как делать периодический бекап сайта если свободного места почти нет?

Ситуация абсурдная. Есть сайт, занимает 400-430Гб на сервере из 500 возможных. Нужно настроить бекапирование 3 раза в неделю. Внешнего второго сервера нет, есть внутренний, без выхода наружу на котором и хотим хранить.
Т.е. в теории я могу к себе локально скачивать бекап(моего терабайтника хватит) и заливать его после уже на портал по внутренней сети. Но чтобы скачать бекап его нужно как-то создать, на что нет места. Вроде как есть утилита rsinc для centos, но ей нужен доступ куда будет писать, не подходит получается. Если просто ставить скачаться сайт локально пофайлово через ssh - это треш какой-то, думал разделить по папкам, запекапил, скачал удалил следующую запустил, но одна папка upload бекапится более 3 часов и место тю-тю.

Как решить задачу?
  • Вопрос задан
  • 70 просмотров
Пригласить эксперта
Ответы на вопрос 5
попросить денег на новый диск
Ответ написан
Adamos
@Adamos
Вроде как есть утилита rsinc для centos, но ей нужен доступ куда будет писать, не подходит получается

Херня какая-то получается.
Вообще-то rsync - более рабочее решение, чем велосипеды Битрикса. И нужен ей не "доступ, куда писать", а "доступ, откуда" - то есть к сайту.
Ответ написан
@rPman
Вроде как есть утилита rsinc для centos, но ей нужен доступ куда будет писать
из-за вот этой фразы непонятно что у вас не получается.

Если на машине получателе установить rsync как демон, то не потребуется даже ssh подключение, никаких накладных расходов тоже не будет

Так же вместо rsync можно использовать старейшую программу для создания архивов - tar, отправляя результат в процессе его создания на целевую машину, любым доступным способом (смонтировать сетевой диск, по ssh или даже netcat), кстати хранить архив tar-ом так же вполне нормально

Я успешно пользовался tar-ом и netcat, перемещая архив между серверами с разными ОС (linux/windows), к сожалению с rsync тогда могли бы возникнуть проблемы, поэтому пользуйся инструментом что для этого создавался.

p.s. если бы у тебя была файловая система btrfs, то можно было бы создавать снапшоты, сохраняя последний и удаляя все старее, тогда можно было бы одной командой получать накопившуюся разницу в виде файла, который можно как хранить и передавать, так и применять на сторонней машине (там так же должна быть btrfs).
https://btrfs.wiki.kernel.org/index.php/Incrementa...

Такие инкрементальные бакапы самые быстрые, так как затрагивают только те данные, что были изменены (причем посекторно), само собой полную копию данных, в развернутом виде лучше держать (это если появилось желание в принципе держать только список этих diff-ов, начиная с первого начального состояния - в этом случае восстановление файла потребовало бы применение всей истории бакапов, что очень долго, если их накопится сотни), применение патча снапшота так же быстрое.

Ни одна другая технология резервного копирования не может быть быстрее, удобнее и проще, но есть нюанс, сама файловая система btrfs добавляет накладных расходов на запись (не сильно заметные на ssd но поговаривают что для баз данных с частыми записями - критичные), поэтому было бы не плохо, если бы перед конвертированием файловой системы на боевом сервере, провести нагрузочное тестирование на другом.
Ответ написан
Комментировать
@AUser0
Чем больше знаю, тем лучше понимаю, как мало знаю.
Сделать архивирование tar-ом с сохранением результата по SSH на другой компьютер/сервер, да даже на принтер, служба безопасности порой такие озорники!
Ответ написан
подключите облако и грузите в него. там просто все
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы