как установить windows server backup
Записки IT специалиста
Технический блог специалистов ООО»Интерфейс»
Настраиваем систему архивации Windows Server
Система архивации пришла на смену NTBackup с выходом Windows Server 2008 и на сегодняшний день является вполне зрелым и проверенным продуктом, но многие администраторы до сих пор не используют данную компоненту ОС, отдавая предпочтения альтернативным продуктам. Этому могут быть как объективные причины, так и непонимание принципов работы системы архивации Windows Server. Поэтому мы решили устранить возможные пробелы в знаниях при помощи данной статьи.
Мы довольно часто задавали знакомым системным администраторам вопрос: какие средства они используют для резервного копирования состояния своих серверов? И сильно удивлялись тому, что многие из них даже не упоминали систему архивации Windows Server. На следующий вопрос: почему они не используют этот инструмент, мы часто получали ответ, что они не понимают, как работает эта система, как управлять резервными копиями и т.д., и т.п. Отчасти причину можно назвать уважительной, когда нет понимания как работает то или иное средство то от его использования лучше отказаться.
А еще лучше разобраться как оно работает и начать применять его на практике. В новой системе архивации многие ожидают увидеть преемника привычного NTBackup, однако Microsoft полностью переработала механизм создания резервных копий и перед нами совершенно иной инструмент. Основным хранилищем резервных копий является диск, который самостоятельно размечается системой архивации и скрыт от пользователя. Также можно использовать уже размеченный том или сетевой ресурс, однако эти способы имеют свои ограничения и сводят на нет все преимущества новой технологии.
Новая система архивации самостоятельно управляет процессом резервного копирования, создавая основную и добавочные копии данных, а также сроком их хранения. Это одно из основных затруднений, которое возникает при использовании нового инструмента. Многие администраторы привыкли явно указывать тип создаваемого архива, их количество и срок хранения, поэтому не находя здесь необходимых опций они делают поспешные и неправильные выводы.
Служба архивации работает аналогичным образом, записывая копии на диск до исчерпания свободного пространства, затем самые старые копии перезаписываются. Таким образом вы всегда будете иметь постоянную глубину резервного копирования, ограниченную только объемом диска, даже резкое увеличение копируемых данных не приведет к негативным последствиям, сократится только количество доступных копий.
Здесь возникает еще одно затруднение. У многих администраторов слово диск ассоциируется только с физическим жестким диском, после чего сразу возникает масса вопросов: где взять столько дисков, как подключить их к серверам, как обеспечить хранение архивов отдельно от системы и т.д. и т.п. Да и выделять для бекапа рядового сервера даже 500 ГБ диск выглядит несколько расточительно. Поэтому самое время вспомнить о технологии iSCSI, которая позволяет сразу решить весь пласт «проблем».
Действительно, данную технологию сегодня поддерживают все системы, включая даже NAS ценовой категории чуть выше начальной, что позволяет грамотно распорядиться имеющимся дисковым пространством и организовать хранение архивов отдельно от систем. Microsoft рекомендует для хранения двух копий данных иметь в 1,5 раза больше дискового пространства, на наш взгляд данная цифра является несколько завышенной, особенно если вы копируете редко изменяемые данные, например, состояние сервера.
Мы немного забежим вперед и покажем результат архивирования тестового сервера с объемом архивируемых данных размером 29 ГБ:
Как видим, восемь копий состояния системы заняли примерно 9 ГБ, что довольно неплохо и общего объема, выделенного нами iSCSI диска в 60 ГБ, хватит примерно на три недели хранения ежедневных копий, что на наш взгляд более чем достаточно.
Для создания резервных копий используется механизм теневого копирования тома (VSS), который позволяет работать с открытыми и системными файлами, не прерывая работы системы и пользователей. Начиная с Windows Server 2012 система архивации позволяет также архивировать запущенные на хосте виртуальные машины Hyper-V и восстанавливать их состояние по отдельности. При использовании на сервере иного ПО использующего возможности теневого копирования система архивации имеет возможность сохранять журнал VSS, что обеспечит корректную работу этих служб при восстановлении.
Отдельно следует коснуться резервного копирования баз данных, если с поддерживающими теневое копирование продуктами, такими как MS SQL Server или Exchange, проблем не возникает, то со сторонними продуктами, например, PostgreSQL могут возникнуть проблемы. Механизм теневого копирования не проверяет логической целостности файлов, просто делая снимок их состояния на определенный момент времени, системы, поддерживающие VSS, умеют обрабатывать этот момент, приводя базу к непротиворечивому состоянию перед моментом создания теневой копии. Для неподдерживаемых систем мы просто получим срез базы на определенное состояние времени, при восстановлении такой базы она будет приведена в непротиворечивое состояние средствами СУБД, проще говоря будут отменены все незавершенные транзакции и может произойти потеря данных.
Исходя из вышесказанного можно сделать вывод, что система архивации Windows хорошо подходит для создания резервных копий системы и пользовательских данных, а также «родных» служб и приложений. Для архивации сложного стороннего ПО лучше использовать средства, предусмотренные производителем данного ПО.
Для того, чтобы начать использовать систему архивации Windows Server сначала нужно установить одноименный компонент, это делается через Мастер добавления ролей и компонентов.
Оснастка абсолютно типична для служб Windows Server и не вызывает каких-либо затруднений при работе с ней.
Беглый взгляд на экран сразу позволяет оценить текущие настройки и состояние службы, доступные действия сосредоточены справа. Их немного: Однократная архивация, архивация по расписанию и восстановление. Нас прежде всего интересует расписание, хотя однократная архивация тоже довольно удобный инструмент, который позволяет быстро сделать копию состояния сервера перед какими-нибудь потенциально опасными действиями, чтобы была возможность откатиться на самое их начало.
Нажав на Расписание архивации мы запустим одноименного мастера, который предлагает нам архивировать весь сервер целиком, либо указать объекты для выборочной архивации.
Заархивировать все и сразу мы всегда успеем, поэтому выберем настраиваемый тип архивации. Следующим шагом нам будет предложено выбрать объекты для архивации.
Для их добавления просто нажмите Добавить элементы.
Если выбрать Восстановление исходного состояния системы, то автоматически будут добавлены Состояние системы, системный раздел (диск C:) и служебный раздел с загрузчиком. К этим данным мы в учебных целях добавили папку с базами MS SQL, которые должны представлять некие пользовательские данные.
Перед тем как двигаться дальше не забудьте заглянуть в Дополнительные параметры, здесь можно настроить исключения, например, совсем ни к чему копировать временные файлы.
А также задать параметры службы теневого копирования, если у вас есть приложения использующие данную службу, например, MS SQL Server, то следует выбрать настройку Копировать журнал VSS, что обеспечит их нормальное взаимодействие со службой теневого копирования, в том числе и при восстановлении.
С расписанием разобрались, теперь самое время определиться с местом хранения архивов. На выбор предлагается три варианта, каждый из них довольно неплохо прокомментирован, что облегчает правильный выбор:
Как мы уже говорили, оптимальным является выделение для архивации целого диска, мы рекомендуем использовать для этой цели iSCSI диски, что позволяет решить сразу две основные задачи: оптимально использовать дисковое пространство и хранить архивы отдельно от системы.
Отдельно стоит остановиться на возможности разместить архив в сетевой папке, несмотря на жесткие ограничения этот способ удобно использовать при однократной архивации, когда нужно быстро создать архив и разместить его вне сервера.
Если вы выбрали диск, то он будет отформатирован и скрыт, это обеспечивает дополнительную защиту от возможных деструктивных воздействий, например, троянов-шифровальщиков.
На последнем шаге следует еще раз убедиться в правильности сделанных настроек и подтвердить их нажатием на кнопку Готово.
Теперь осталось дождаться указанного времени и убедиться, что процесс архивации был выполнен без сбоев. При создании расписания следует принять во внимание нагрузку на сеть и дисковую подсистему хранилища, что может приводить к снижению их производительности.
После того, как резервная копия создана будет не лишним проверить возможность восстановления из нее. Для этого выберем в оснастке одноименное действие, при этом будет запущен Мастер восстановления, который первым делом попросит указать расположение архива:
Затем указываем дату и время создания резервной копии на которую мы хотим откатиться, доступные даты подсвечиваются полужирным шрифтом.
После чего указываем, что именно мы хотим восстановить:
Как видим, это могут быть файлы и папки, виртуальные машины Hyper-V, тома, приложения и состояние системы. Отдельно следует упомянуть о приложениях. Эта функция доступна только для зарегистрированных в системе архивации приложений, которые должны уметь работать с API этой службы и поддерживать VSS. Проще говоря, в этот список попадает ограниченное количество программ, в основном от самой Microsoft, а для стороннего софта данная функция бесполезна.
В тоже время трудно переоценить возможность восстановления состояния системы, которая позволяет выполнить откат состояния ОС, не затрагивая при этом пользовательские данные. Это сильно выручает в ситуациях, когда между внесением изменений в систему и выявлением их негативного эффекта прошло какое-то время.
Восстановление состояния системы производится в два этапа каждый из которых завершается перезагрузкой.
Причем второй этап выглядит как обычная загрузка ОС и не выводит никаких сообщений, просто выполняя перезагрузку через некоторое время. Может показаться что произошла ошибка или сбой, но это не так.
Поэтому просто следует запастись терпением и дождаться сообщения об успешном завершении операции. В зависимости от скорости сети, производительности дисков и объема данных эта операция может занять значительное время.
Альтернативой восстановления состояния системы может служить восстановление на уровне тома, при этом все данные будут уничтожены и том будет приведен в состояние, в котором он находился на указанную дату. Это может оказаться полезным в случае вирусного инцидента, когда вы хотите быть уверенным, что в системе не осталось закладок вредоносного ПО, а также в случаях, когда исходный том был поврежден.
В общем и целом, данная операция ничем не отличается от восстановления тома из образа любым иным ПО, например, Acronis.
При восстановлении папок и файлов можно гибко управлять параметрами восстановления, например, сохранив обе версии файла: текущую и восстанавливаемую, это полезно в тех случаях, когда файл был случайно перезаписан, но результат текущей работы также нужен. При восстановлении можно также восстановить все права доступа на файлы и папки, что важно, если у вас используется сложная система назначения прав.
Как видим, система архивации Windows Server представляет собой весьма функциональный и удобный инструмент, позволяющий осуществлять успешное восстановление данных на любом уровне и в тоже время снимающая с администратора значительную часть забот по управлению этим процессом. Поэтому если вы еще не используете данную систему архивации, то после прочтения данного материала самое время более пристально к ней присмотреться.
Помогла статья? Поддержи автора и новые статьи будут выходить чаще:
Или подпишись на наш Телеграм-канал:
Windows Server Backup: как создать резервную копию и восстановить данные с нее? Экономный бэкап
ОС Windows Server содержит средство резервного копирования, помогающее сэкономить на покупке стороннего программного продукта. Настройка Windows Server backup занимает минимум времени.
Установка средства, используемого для выполнения резервного копирования
Для установки Windows Server backup необходимо выполнить последовательно действия:
Рис. 1. Установка компонентов
Создание копии
Откройте Диспетчер серверов, из меню Средства выберите команду Система архивации данных Windows Server.
Рис. 2. Запуск средства резервного копирования
Основное окно средства копирования показано на рис. 3. На данный момент резервная копия не создавалась.
Рис. 3. Система архивации данных Windows Server
Выберите команду Расписание архивации (данная команда будет доступна на панели справа после перехода в раздел Локальная архивация на панели слева). Для настройки расписания в Windows Server backup следуйте следующим инструкциям:
Рис. 4. Конфигурация
Рис. 5. Время создания архива
Рис. 6. Где хранить копии?
Рис. 7. Выбор диска назначения
Рис. 8. Выберите диск и нажмите Далее.
После нажатия кнопки Готово, начнется форматирование диска для архивации. Нужно дождаться завершения этого процесса. Затем мастер сообщит вам время первой архивации. Нажмите кнопку Закрыть. Архивация успешно настроена.
Рис. 10. Форматирование диска для архивации
Бэкап файлов Windows-сервера своими руками
Здесь мы рассмотрим, как сделать систему дифференциального бэкапа «из коробки» (ну почти), с привлечением минимального количества внешних модулей, в лучших традициях UNIX-way.
Будем использовать 7za.exe \ 7z, а также UNIX-like утилиту pdate.exe, чтобы со временем нам было работать также удобно, как и в ламповом *NIX, а заменой bash нам будет «простонародный» BAT. Предыстория и подробности — под катом.
Предыстория
Все началось с истории про невнимательного и бесстрашного пользователя, открывающего приходящие по личной почте файлы откройменя.exe на рабочем компьютере. К сожалению, это оказалось не какой-нибудь посредственной малварью, а вполне обычным шифратором. Но, помимо файлов юзера, которые, конечно же, восстановлению не подлежат, оказалась задета одна крошечная, но важная шара, доступ к которой был у всех.
Взглянув на сие зашифрованное непотребство, я с благодарностью вспомнил про то, что каждый день у меня делается бэкап этой (и не только этой) шары встроенными средствами Windows Server 2003 SP2 x64. Но, полистав этот бэкап, я понял, что в плане резервного копирования средствами самой Windows не все так радужно. Во-первых, полный бэкап оказался недоступен, а значит восстановить cold-data (файлы, которые меняются очень редко) вряд ли получится. Во-вторых, восстановление из созданного инкрементального бэкапа оказалось задачей нетривиальной — за каждый шаг получалось восстановить только данные, которые были изменены, и ничего более. Получается, чтобы восстановить хотя бы все измененные данные (раз полный бэкап оказался утерян), то пришлось бы перебирать по очереди все бэкапы — не совсем то, что я ожидал от инкрементального бэкапа в таком случае.
Кто то из вас может сказать — надо было проверять работоспособность бэкапа, и да, так оно и есть. Но тот из вас, кто работает в торговле, может понять, куда может уходить время админа — да-да, они самые, онлайн-кассы.
Крепко задумавшись, я вспомнил свое первое знакомство с системой инкрементального копирования fsbackup за авторством Максима Чиркова www.opennet.ru/dev/fsbackup — гибкость, простота, в то же время обилие возможностей и открытый формат хранения архивов (tar). Жаль, что система разработана под *NIX / Linux. Google также не ответил на мой вопрос про подобную систему под Windows. Самое полезное, что я нашел — это краткий гайд хабровчанина antip0d и пример скрипта для резервного копирования. Именно материал по последней ссылке я и использовал для своего скрипта.
Собираем систему
В первую очередь, скачиваем последнюю стабильную версию. На момент написания это 16.04. Наш бэкап будем хранить в 7z архиве: поддержка многопоточности, шифрованных/многотомных архивов, а скорость извлечения из 7z выше скорости упаковки в 10-20 раз!
UPD: Спасибо хаброжителю Taciturn за поправку — вы также можете использовать 7z.exe, уже установленный в вашей системе. Функциональных различий между 7z и 7za я не выявил.
Нас интересуют:
7za.exe — автономная версия 7-Zip.
7za.dll — библиотека для работы с архивами 7z
7zxa.dll — библиотека для распаковки 7z архивов.
Для 64-битных ОС используем те же файлы из каталога x64.
К сожалению, ссылка из используемого мной материала на утилиту pdate никуда не ведет, единственная найденная мной версия
pdate v1.1 build 2007.12.06
© 2005-2007 Pavel Malakhov 24pm@mail.ru
К счастью, на том же ресурсе есть краткая статья по этой программе, там же ее можно скачать.
Мной была использована следующая структура каталогов:
D:\winfsbackup — корневая директория скрипта и связанных файлов
D:\winfsbackup\7z — библиотеки и исполняемый файл 7za
D:\winfsbackup\backup — место хранения бэкапов (можно переназначить путем правки переменных, как и любые другие используемые файлы)
D:\winfsbackup\lists — списки включаемых и исключаемых файлов. О них расскажу чуть позже
D:\winfsbackup\log — логи
D:\winfsbackup\pdate
D:\winfsbackup\tmp — устанавливает рабочий каталог для временного базового архива
D:\winfsbackup\winfsbackup.bat — сам скрипт.
Логика работы
250 Гб. Для моего файлообменника в 550 Гб с преобладанием мелких файлов скорость бэкапа оказалась неудовлетворительна (почти 55 часов). Справедливости ради стоит сказать, что это не может служить сколь нибудь достоверным замером производительности — в процессе бэкапа выяснилось, что некоторые файлы недоступны (привет chkdsk), а бэкап складывался в раздел удаленного сервера, который тоже был занят операциями дискового ввода-вывода.
Первые 2 условия включены по-умолчанию, и описывают полный бэкап раз месяц + дифференциальные бэкапы. Остальные условия альтернативны, то есть при включении одного нужно выключить другое, или изменить логику работы на свой вкус.
Переменные
dm, dw, wn — соответственно день месяца, день недели и номер недели (в численном выражении).
verboseLevel — режим «говорливости», выдает информацию о том, куда будет записываться архив, и прочее. Полезно, когда вносишь в структуру скрипта серьезные изменения.
tmpDir — место сохранения временного файла. По умолчанию, 7-Zip строит новый базовый файл архива в том же самом каталоге, где и старый базовый файл архива. Определяя этот ключ, вы можете установить рабочий каталог, где будет построен временный базовый файл архива. После того, как временный базовый файл архива построен, он копируется поверх первоначального; затем временный файл удаляется.
Дифференциальный бэкап
По умолчанию, в дифференциальный бэкап помещаются файлы, которых нет в базовом архиве, а также более новые файлы. При желании, это поведение можно изменить. Описания ключей есть в стандартном файле справки 7z.
У такого подхода есть свои плюсы (которые я уже успел оценить) — быстрота разворачивания из бэкапа. В случае полного восстановления разворачиваем последний (или любой другой) имеющийся дифференциальный бэкап, а затем — полный архив, отказываясь от перезаписи имеющихся файлов.
Некоторые опции командной строки
-bsp2 — выводит строку с прогрессом выполнения в STDERR. STDOUT 7z перенаправлен в лог, прогресс, естественно, туда не пишется. Эта команда выводит его в STDERR, для большей информативности.
-ssw — упаковывает файлы, открытые для записи другим приложением. Если этот ключ не установлен, 7-Zip не включает такие файлы в архив.
-ms=off — отключает создание solid-архивов. Качество сжатия при этом, конечно же, падает, однако есть весьма весомые плюсы — вы можете периодически обновлять данные базового архива чтобы уменьшить размер дифференциальный бэкапов, и так как архив не является целостным, не нужно будет его дополнительно «пережимать». Non-solid архив более стоек к повреждениям, и время извлечения из него происходит заметно быстрее.
Include / exclude листы
По умолчанию определено 2 типа списка — список включаемых файлов / директорий (include_general.txt), и 2 списка исключений (exclude_general.txt, exclude_regexp.txt).
Список включения также поддерживает UNC-пути. Для того, чтобы поместить файл / директорию в исключения, путь должен быть относительным.
Например, если директория для бэкапа E:\foo\bar, и мы хотим исключить вложенную директорию E:\foo\bar\somefolder, то в exclude_general.txt мы должны добавить bar\somefolder или bar\somefolder\
Путь без слэша в конце может относиться как к файлу, так и к директории.
В exclude_regexp.txt вносятся исключаемые по regexp файлы, которые просматриваются рекурсивно. * — последовательность произвольных символов,? — любой символ.
7-Zip не использует системный синтаксический анализатор подстановочных знаков, поэтому «любой файл» для 7 Zip это ‘*’, а ‘*.*’ — файл, имеющий расширение.
Ну и наконец, скрипт целиком:
Вместо окончания
Всегда есть люди, которые против подобных решений, и всеми руками-ногами «за» использование всяких акронисов и прочего «махрового энтерпрайза».
Я же считаю, что решение должно быть соразмерно поставленной задаче, а в моем случае задача — иметь в укромном месте резервную копию файлопомойки, которую можно быстро развернуть — именно этим меня и разочаровал ntbackup.
Собранный пример можно посмотреть на YandexDisk.
Там же — zip-архив для скачивания.
Конструктивная критика, советы, и тем более, тестирование — welcome!
Спасибо за внимание! Всем долгого аптайма, стабильного линка, и конечно, бэкапов под рукой.