Как запланировать процесс резервного копирования / восстановления сервера

376
susik

У меня есть два сервера Windows, расположенных в разных географических местах. Один сервер используется в качестве файлового сервера ( то есть общее местоположение и имеет дерево каталогов с около 60 ГБ файлов ).

Мне нужно иметь такое же дерево каталогов на другом сервере в другом городе и синхронизировать эти файлы. Они не должны быть «живой» синхронизацией ( т. Е. Это может быть несколько часов или дневной дифференциал, но они должны быть своего рода «близким» контентом ). Есть несколько утилит, которые могут синхронизировать файлы, но я хочу начать с утилиты Windows Server Backup and Restore .

Мой план

Мой план - создавать резервную копию один раз в день, а затем восстанавливать ее на другом сервере. Я думаю, что таким образом они будут синхронизированы. Поскольку местом назначения является удаленный / сетевой сервер, он удалит предыдущие резервные копии, и у меня будет только одна резервная копия за раз, и это будет хорошо. Я вижу, что это создает папку с именем WindowsImageBackupна целевом сервере.

Вопрос: Я знаю, как настроить и запланировать процедуру резервного копирования, но могу ли я настроить автоматический процесс восстановления по расписанию на конечном сервере ?

  • Я имею в виду, например, резервное копирование в полночь (это займет несколько часов), а через несколько часов целевой сервер начнет процесс автоматического восстановления из этой последней резервной копии .

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

2
У меня нет времени на тестирование, если вы пытаетесь автоматизировать восстановление wbadmin резервной копии файла с резервной копией пути UNC, что-то с этим синтаксисом должно работать: `wbadmin start recovery -version: MM / DD / YYYY-чч: мм - itemtype: File -items: -recursive -BackupTargt: \\\\ -RecoveryTarget:`но вы захотите использовать параметр` -quiet`, а также вам нужно будет найти способ динамически получить идентифицированную версию, установленную в переменную, для соответствующего помещения в команду ... `wbadmin get version -backuptarget : \\\\| findstr / i "идентификатор" ` Pimp Juice IT 5 лет назад 1
Оформить заказ Bvckup2. стоит несколько баксов. Задача Расписание робокопии для бесплатной версии Tim 5 лет назад 0
Ну, я ценю ваши предложения. Я поиграю с wbadmin и посмотрю, смогу ли я заставить его работать. Что касается версии резервного копирования, я не думаю, что это должно быть проблемой в моем случае, так как, когда я делаю резервное копирование удаленно (мой случай), он сохраняет только одну последнюю версию. susik 5 лет назад 0
Я играл с Robocopy, и он сделал свою работу. Большое спасибо за предложения. Билет может быть закрыт susik 5 лет назад 0
Ну .... спасибо за вашу помощь !! Работает отлично! Единственным недостатком является то, что в случае, если у меня много файлов в каталоге, копирование на сервер занимает несколько дней. Любая другая идея вместо robocopy, когда у меня есть миллион файлов? Спасибо susik 5 лет назад 0
Может быть, я должен использовать утилиту tar вместо robocopy в этом случае? Я не могу ждать 2 дня, пока он не закончится susik 5 лет назад 0
Большое спасибо за попытку помочь мне. Вы правы в своих предположениях. Я копирую 2 папки. Оба имеют практически одинаковый размер ~ 2,5 Гб. Первый имеет ~ 136 тыс. Файлов, а второй - около миллиона. Второй вопрос. Эти файлы являются файлами .dat. Это мой текущий скрипт: @echo off SET SRC1 = \\ vhabosapp3gen \ FS_REPO SET DST1 = \\ vhapthsql12gen.v04.med.va.gov \ FS_REPO SET LOG = \\ vhabosfpc1gen \ lims \ LimsLZ \ tools \ logs \ Boston_Pts_SMS. log SET OPT = / S / NP / R: 5 / LOG +:% Log% / TS / FP SET CMD1 = robocopy% SRC1%% DST1%% OPT%% CMD1% Я также использую Cygwin. Как я мог tar / zip? susik 5 лет назад 0
@PimpJuiceIT, я имею в виду, что пакет должен взять tar или zip на * исходном * сервере и конечном сервере и быть удаленным в конце (или, по крайней мере, перезаписанным новым tar или zip). Не могли бы вы дать мне пример, используя мой текущий пакетный файл, который я вставил выше? Если пакет не является хорошим выбором для этого, может быть, лучше использовать Python? Потому что в любом случае после использования robocopy я запускаю скрипт python, чтобы убедиться, что все скопировано. Я делаю это, сравнивая количество файлов в исходной и целевой папках. Еще раз спасибо. Ценить это .. susik 5 лет назад 0
1. оба исходных файла / папки меняются очень часто, поэтому я копирую их ночью. На этот раз они не меняются. На самом деле к этим миллионам добавляются несколько сотен ежедневно. В \ FS_REPO есть несколько подкаталогов (3-4 уровня). 2. Ну, не уверен в этом. Я не думаю, что смогу оставить его в архиве, потому что причина этих файлов в том, что они используются, когда приложение запрашивает некоторые данные, и я предполагаю, что они должны быть «готовы к использованию» как есть. На самом деле это веб-приложение, которое хранит данные в \ FS susik 5 лет назад 0
Будет ли это решение на основе сценариев иметь смысл или что-то, что вы могли бы проверить или применить (https://content.spiceworksstatic.com/service.community/p/post_attachments/0000173583/57ee67d2/attached_file/copy_script.txt)? Я нашел это по сообщению на https://community.spiceworks.com/topic/1691932-fastest-way-to-copy-millions-of-little-files-fastcopy, и кажется, что RC работает намного лучше с тоннами файлов и тому подобное. В противном случае, звучит так, как будто вам нужно сжать все файлы до единой структуры хранения zip-файлов, а затем настроить ее для извлечения той же структуры в месте назначения и перезаписи, верно? Pimp Juice IT 5 лет назад 0
Я проверю ссылку, которую вы предоставили. Я планирую проверить рабочий процесс tar и скопировать. Вот мой план, прежде чем я внедряю его в производство: 1. создайте папку, например, d: \ mytarS. Создайте несколько подпапок и файлов на исходном сервере. 2. tar эта папка egstar 3. Скопируйте этот s.tar на конечный сервер, например d: \ mytarD \ s.tar. 4. Создайте структуру d: \ mytarD так же, как у меня на исходном сервере в d: \ mytarS. 5. Откройте s.tar. 6. Добавьте несколько файлов к источнику и повторите процесс. Я хочу убедиться, что рабочий процесс работает как положено. Сначала я попробую это в партии. Если я столкнусь с проблемой, я попробую скрипт на python susik 5 лет назад 0
Давайте [продолжим это обсуждение в чате] (https://chat.stackexchange.com/rooms/79724/discussion-between-susik-and-pimp-juice-it). susik 5 лет назад 0

2 ответа на вопрос

0
Pimp Juice IT

Подумайте об использовании Robocopy вместо

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

См. Аналогичный вопрос, на который был дан подробный ответ с использованием Robocopy с синтаксисом и тому подобным в посте « Копирование WindowsImageBackup в командной строке », но он может быть более целесообразным и быстрее выполнять копирование только тех файлов, которые изменяются после первой начальной синхронизации, чем как вы говорите, с полным резервным копированием и последующим копированием.


WBAdmin Восстановить UNC-путь к резервной копии файла

Если вы пытаетесь автоматизировать wbadmin восстановление резервной копии файла с резервной копией пути UNC, что-то с этим синтаксисом (или близко к нему) должно работать:

  • wbadmin start recovery -version:MM/DD/YYYY-hh:mm -itemtype:File -items:<RecoveryPath> -recursive -BackupTargt:\\<Server>\<Share>\<Folder> -RecoveryTarget:<RecoverPath> 

Вы захотите использовать -quietпараметр, а также вам нужно будет найти способ динамически получить идентификатор версии, установленный в переменную, для соответствующего добавления в команду

  • wbadmin get versions -backuptarget:\\<Server>\<Share>\<Folder>| findstr /i "identifier" 

Дополнительные ресурсы

Ну, я застрял в игре robocopy и утилите tar. Это займет несколько дней, что в моем случае неприемлемо. Я делаю ночное резервное копирование Windows Server из этой исходной папки в другую папку. Мой вопрос: могу ли я восстановить эту резервную копию на моем «конечном» сервере? Это должно быть сделано автоматически: либо с помощью процедуры резервного копирования / восстановления Windows, либо с помощью wbadmin. Это выполнимо? Спасибо susik 5 лет назад 0
Как я уже упоминал ранее, как robocopy, так и tar работают, но это займет несколько дней. Позвольте мне еще раз подвести итог моей цели. У меня есть сервер SRC с папкой, расположенной в C: \ Program Files \… \ FS_REPO. Он состоит из около миллиона текстовых файлов. У меня есть другой сервер DST, который имеет то же приложение, что и SRC. В случае необходимости я буду использовать DST в качестве сервера «теплого резервирования». Одним из условий является то, что FS_REPO на SRC и DST имеет одинаковые файлы. Новые файлы добавляются в SRC все время (кроме, вероятно, ночью). Отсюда моя цель: ночью скопировать эти файлы из SRC в DST. susik 5 лет назад 0
Примечание: меня не волнует управление версиями, поэтому нет необходимости использовать его в качестве параметра. Я ожидаю, что это может быть проще / надежнее / быстрее, чем tar или robocopy. Не могли бы вы помочь мне с этим? Ценю твою помощь .. susik 5 лет назад 0
еще раз спасибо. Это определенно не приоритет для меня. Я просто хочу завершить это. Цель состоит в том, чтобы установить сервер «теплого резервирования», и я сейчас нахожусь в процессе синхронизации серверов Production и Warm Standby. susik 5 лет назад 0
-1
sarah tom

У меня уже была такая же проблема, и я предлагаю вам использовать инструменты резервного копирования, такие как robocopy или gs richcopy, которые я предпочел и использовал, у них есть много опций и, конечно же, они помогают мне планировать копирование. читать больше на https://en.wikipedia.org/wiki/GS_RichCopy_360#Supported_Operating_Systems

Добро пожаловать в Супер пользователя! Спасибо за ваш вклад. Пожалуйста, прочитайте [Как я рекомендую программное обеспечение в моих ответах?] (// meta.superuser.com/a/5330), обращая особое внимание на элементы, выделенные * жирным шрифтом *. После этого, пожалуйста, [отредактируйте свой ответ] (// superuser.com/posts/1350438/edit), чтобы оно соответствовало рекомендациям. robinCTS 5 лет назад 1

Похожие вопросы