Как выбрать подходящий метод резервирования

Майкл Д. Рейли Редактор журнала Windows NT Magazine, а также один из основателей и вице-президент компании Mount Vernon Data Systems, специализирующейся на консультационных услугах и разработке прикладных баз данных. Рейли имеет сертификаты системного инженера Microsoft и преподаватель Microsoft по Windows NT, SMS и SQL Server. С ним можно связаться по адресу mdreilly@com-puserve.com
Выживет ли бизнес компании, если однажды в результате сбоя системы будет утрачена вся информация из баз данных Microsoft SQL Server? Какое влияние окажет на него потеря содержимого почтовых ящиков с сервера Microsoft Exchange, сроком в один месяц? К большому сожалению, мало кто обращает внимание на резервирование данных до тех пор, пока не случится что-либо из ряда вон выходящее, и все пользователи не потребуют немедленно восстановить утерянные данные. В этой статье я собираюсь рассказать об утилите Windows NT Backup и предложить некоторые альтернативы этой программе. Кроме того, я хочу обратить внимание читателей на ряд факторов, которые следует иметь в виду при выборе стратегии резервирования.

Философия резервирования

Существует два подхода к вопросу резервирования данных: можно заниматься резервированием сервера, или же резервировать рабочие места клиентов. В первом случае, как правило, резервируется вся находящаяся на сервере информация, в том числе и пользовательские данные. Объем информации, которая становится недоступной в случае аварийного останова системы или по причине стихийных бедствий, может исчисляться несколькими гигабайтами. Следовательно, необходимы ленточные накопители соответствующей емкости или высокоемкие системы, такие как, например, DVD-RAM. Конечно, и сами носители (например, ленты) следует хранить в безопасном месте. Если встанет вопрос о восстановлении утерянной информации, можно будет реанимировать всю систему целиком, что, конечно, займет некоторое время.

Другой подход (резервирование рабочих станций) применяется в том случае, когда пользователь случайно удаляет файл или хочет просмотреть версию этого файла недельной давности. В подобных ситуациях обычно речь идет о небольшом объеме информации (быть может, несколько мегабайт или просто конкретный файл). Для защиты данных на этом уровне системный администратор может предоставить в распоряжение пользователя то или иное устройство резервирования, например дисковод Zip, или высокоемкий накопитель типа LS-120, и тогда уже сам пользователь будет заботиться о защите своей информации. Однако большинство сотрудников не собираются тратить время на организацию процесса резервирования своих данных. Лучше все же потребовать от пользователя хранить свои данные на сервере. Администратор системы несет ответственность за резервирование только тех данных, которые хранятся на сервере, и использует для резервирования критически важной информации ленточные накопители. При желании можно установить на сервер такие устройства резервирования, как, например, DVD-RAM или CD-Rewritable, которые предоставляют постоянный доступ к файлам, и тогда пользователи смогут выполнять резервирование своих данных так, как это им необходимо. Если все же пользователь решил хранить свои данные только на своем рабочем месте, то вся ответственность за резервирование возлагается на него самого. Это означает, что администратор системы (или тот персонал, который отвечает за резервирование) не должен иметь доступ к таким рабочим местам. Таким образом, обеспечивается повышенный уровень безопасности данных пользователя.

Фактор цены

ЭКРАН 1. Внешний вид встроенной программы резервирования ntbackup.exe.
Windows NT поставляется со встроенной программой резервирования, ntbackup.exe, интерфейс работы с которой приведен на Экране 1. Для выполнения базового резервирования возможностей этой программы вполне достаточно. Вместе с тем, в этой программе не предусмотрена настройка процедуры резервирования, в частности, отсутствует планировщик задач.

Кроме того, программа NTBackup имеет, как оказалось, ряд недостатков, связанных с построением каталогов резервируемых файлов, что несколько усложняет процедуру восстановления данных. (Более подробная информация об этом приведена во врезке «Загадочное исчезновение ленточного каталога»). Большинство администраторов предпочитает заменять встроенную программу резервирования программами независимых производителей, например, Cheyenne ARCserve, Seagate Backup Exec, UltraBac или NovaStor. Эти программные продукты позволяют выполнять гибкое планирование задания и просты в использовании. Однако внедрение такого решения потребует дополнительных затрат и технической поддержки.

Для чего нужны агенты?

В программе NTBackup не предусмотрена возможность работы с открытыми файлами. Следовательно, нельзя сохранить такие файлы, как, например, базы данных Microsoft SQL Server, пока сам SQL-сервер работает. Независимые разработчики обычно предлагают для резервирования открытых файлов программные агенты, но, как правило, за дополнительную плату. Если необходимо выполнять резервирование нескольких приложений Microsoft BackOffice, то дополнительные затраты на приобретение агентов будут расти очень быстро. Чтобы избежать больших затрат, можно рассмотреть другое решение. Например, в стандартно поставляемой версии Microsoft SQL Server имеется возможность выгрузки базы данных в файл на диск. После завершения данной операции такой файл уже не является открытым, и можно провести дальнейшее его резервирование с помощью любой программы, работающей под управлением Windows NT. Дополнительное преимущество такого подхода состоит в том, что выгрузка базы данных на диск выполняется быстрее, чем на ленту, поэтому замедление работы приложения в данном случае минимально. Уже в версии Microsoft SQL Server 6.5 появились некоторые средства планирования работ, но версия Microsoft SQL Server 7.0 предоставляет значительно больше возможностей в этом плане. В частности, она позволяет описать задачу, которая сначала формирует резервную копию базы данных на диск, а затем запускает командный файл для переноса этого файла на ленту с помощью программы NTBackup.

Резервный Файл и Резервный Образ

Одна из возможностей, которая также не предусмотрена в стандартной программе NTBackup, — это формирование так называемого «резервного образа» (Image Backup). Windows NT, как и многие другие программные системы, резервирует файлы по отдельности, один за другим, и восстанавливает их точно так же. Такой подход означает, что для восстановления системы после сбоя нужно сначала заново установить ОС, затем программное обеспечение, с помощью которого формировались резервные данные, и только потом выполнять собственно процедуру восстановления. Альтернативный подход предложен в системах резервирования UltraBac и ARCserve: формирование «резервного образа». Этот метод предусматривает создание резервной копии секторов физического диска, безотносительно к расположенным на нем файлам. «Резервный образ» копируется на ленту. Для восстановления системы после аварийного останова используются специальные загрузочные дискеты (также создаваемые в процессе формирования «резервного образа») и лента с «образом» системы. При этом повторно устанавливать саму ОС не требуется. Кроме того, и UltraBac, и ARCserve позволяют восстанавливать отдельно взятый файл с «резервного образа» системы.

Выбор устройства резервирования

Сейчас мы не испытываем недостатка в устройствах резервирования данных, но реально выбираем из устройств с последовательной организацией данных (ленточные накопители) или с произвольным доступом (жесткие диски, съемные диски или CD). При выборе следует принять во внимание следующие семь факторов.

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

Тип требуемого восстановления. Если, по всей вероятности, после сбоя придется восстанавливать всю систему в целом, то стоит выбрать ленточный накопитель большой емкости. Если же системный администратор предвидит необходимость восстановления только нескольких случайно удаленных файлов, лучше воспользоваться CD-R или CD-RW, или же обычными съемными устройствами. Даже если нужно восстановить с ленты один-единственный файл, это может занять несколько часов. Некоторые новые технологии работы с ленточными накопителями существенно упростили использование данных, хранящихся на лентах, но ни одна из них не позволяет обращаться непосредственно к файлу, как это происходит при работе с CD-R или жестким диском. Если возможны прецеденты восстановления для обоих сценариев, стоит рассмотреть вариант использования различных типов устройств резервирования, как с последовательным, так и с произвольным доступом к данным.

Скорость резервирования и восстановления. Лента, как известно, устройство медленное. Даже с учетом последних технических достижений ее нельзя сравнить по быстродействию с жестким диском. Быстрее всего можно выполнить резервирование с помощью другого жесткого диска. Вслед за ним идут съемные носители, затем CD-R, CD-RW, и, наконец, DVD-RAM.

Емкость. Емкость лент по сравнению с емкостью жестких дисков растет медленно. Если составить план регулярного резервирования системы в целом и расписание резервирования наиболее важных ее файлов, можно легко подсчитать емкость носителя, необходимую для резервирования данных. При анализе емкости лент, декларируемых фирмой-изготовителем, нужно помнить о том, что при указании емкости таких носителей как Exabyte, как правило, используется характеристика «емкость без сжатия» (native capacity). В документации на эти так называемые «носители для домашнего применения» производители почти всегда объявляют о двойной емкости, легкомысленно (мелкими буквами) декларируя коэффициент сжатия 2 к 1. Такой коэффициент более-менее реалистичен (например, я всегда рассчитываю упаковать 4,4 Гбайт данных на 2,2-гигабайтную ленту Exabyte), но поскольку различные типы данных сжимаются по-разному, соответственно, и коэффициент сжатия может различаться.

Начальная стоимость устройства. Предприятиям малого бизнеса ленточные накопители высокого класса, такие как DLT, попросту не нужны. Подобные накопители используют крупные организации с огромными объемами резервируемой информации. Затраты в несколько тысяч долларов, связанные с внедрением системы резервирования на основе DLT, превышают уровень затрат, которые большинство предприятий малого бизнеса могут себе позволить. На другом конце стоимостного спектра (решение порядка 200 долл.) находится вариант использования ленточных накопителей типа QIC (quarter-inch cartridge), которые присоединяются к контроллеру гибких дисков. Эти накопители, как правило, прекрасно работают в домашних условиях, но я не стал бы размещать на них критически важную деловую информацию.

Время жизни устройства. Вообще говоря, чем устройство дороже, тем дольше оно прослужит. Недорогие носители предназначены для домашнего использования или для малого офиса, в режиме резервирования информации с одного компьютера. Дорогостоящие устройства предназначены для ежедневного резервирования, и логично предположить, что время жизни таких устройств больше, а условия эксплуатации более жесткие, чем у недорогих средств.

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

Вероятнее всего, порог емкости ленточных накопителей высокого класса, созданных в свое время по самым передовым технологиям, будет перейден еще до того, как они износятся и станут непригодными для дальнейшего использования. Например, я сам все еще использую устройство Colorado Memory Systems DJ-250. Эта система была последним достижением техники в 1991 году, когда у меня на домашнем компьютере был установлен 200-мегабайтный жесткий диск, который с применением компрессии резервировался целиком. Но затем я перешел на 1,2-гигабайтный жесткий диск, и начал использовать устройство резервирования Exabyte на 2 Гбайт. В то время это устройство казалось почти совершенным, но сейчас и оно устарело. Теперь на моих основных компьютерах установлены диски емкостью 12 Гбайт. Очевидно, настало время выбора нового устройства резервирования.

Стоимость носителя. При обзоре устройств резервного копирования почти всегда игнорируется вопрос стоимости самих носителей информации — лент. В качестве приблизительной оценки стоимости ленты предлагаю провести нехитрый расчет. Установите, какой объем информации и как часто необходимо резервировать. Учтите время, в течение которого предполагается хранить резервную копию данных. Затем оцените, сколько лент такой емкости потребуется. При этом важно учесть и ленты постоянного хранения (архивы) и ленты, которые будут находиться за пределами офиса. На основе этой информации можно подсчитать общие затраты на схему резервирования, с учетом стоимости и накопителя, и лент. Полученный итог может оказаться неожиданным. Для самых дорогостоящих устройств, например, для 8-миллиметровых накопителей, зачастую используются наиболее дешевые носители, в пределах от 5 до 12 долл. за ленту. Дешевые накопители часто используют более дорогие ленты, порядка 30-40 долл. каждая. Какой вариант лучше? Рассмотрим реальный пример. Внешнее устройство Exabyte EXB-8700LT стоит 665 долл., накопитель Seagate TR4 — 225 долл. Разница в цене существенная. 8-миллиметровые ленты, используемые в Exabyte, позволяют записать 7 Гбайт данных без учета сжатия и стоят 12 долл. каждая. Ленты для накопителей Seagate TR4, емкостью 4 Гбайт (несжатый формат), стоят 36 долл. Предположим, ежедневно на ленточное устройство копируется до 4 Гбайт информации. Очевидно, при этом емкость 8-миллиметрового носителя не полностью используется. Соответственно, на три недели понадобится 21 лента. Какова общая стоимость системы резервирования с учетом затрат на накопитель и 21 ленту в том и другом случае? Решение на основе EXB-8700LT с лентами на 8 мм обойдется в 917 долл. Накопитель TR4 и ленты к нему будут стоить 981 долл.

Сторонники применения дешевых накопителей при выборе системы резервирования обычно отвергают подобную аргументацию, заявляя, что выбор в пользу более дорогих накопителей основан якобы на необходимости использования 21 ленты, в то время как вполне достаточно было бы 4 или 5 лент. Допустим, но не надо забывать, что ленты изнашиваются. Ленту можно перезаписать ограниченное количество раз. Я же исхожу из необходимости обеспечить гарантированное резервирование информации, не задумываясь о физической кондиции самих носителей.

Нет в мире совершенства

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

Кроме того, однажды приняв решение о стратегии резервирования, важно найти время для того, чтобы описать ее и сделать неотъемлемой частью технической политики своей компании. Например, если решено выполнять ротацию лент, и в вашем распоряжении имеется достаточное их количество для периода ротации, равного трем неделям, в описании стратегии резервирования должен быть отражен факт трехнедельной ротации. Не так давно я проводил обучение специалистов, и среди присутствующих оказался представитель компании, которой был предъявлен судебный иск. Компания обвинялась в том, что сознательно уничтожала информацию, поскольку в принятой в ней стратегии резервирования ленты с данными использовались повторно, при этом копии некоторых старых документов не сохранялись. Однако персоналу компании удалось доказать, что такая практика (повторное использование носителей информации) существовала всегда, поскольку являлась частью официально задокументированных правил проведения работ. Зафиксированная в документах политика резервирования, датированная более ранним сроком, нежели дата предъявления обвинения, послужила для юристов доказательством того, что компания не начала вдруг ни с того, ни с сего удалять информацию, хранящуюся на лентах. Суд обязал компанию, начиная с момента вынесения судебного решения, не удалять информацию с носителей, или, по крайней мере, иметь архивную копию всех данных. Но с компании были сняты обвинения в умышленном уничтожении информации. К сожалению в нашем обществе приходится необходимость учитывать вероятность возникновения подобных конфликтов. Вместе с тем, существуют вполне законные системные требования, связанные, например, с устаревшей почтовой или другой электронной информацией. Вопрос о том, как долго нужно хранить резервные копии таких данных и что именно резервировать, очевидно, не может решаться только техническими службами компании.


Загадочное исчезновение ленточного каталога

В сопроводительной документации Microsoft встроенной в Windows NT утилите резервирования (ntbackup.exe) сказано, что в процессе ее работы создается каталог обрабатываемых файлов. Сотрудники службы технической поддержки компании подтверждают это заявление. Однако я, имея в своем распоряжении ленточный накопитель Exabyte EXB-8200, никак не мог обнаружить этот каталог. Каждый раз, когда возникала необходимость восстановления данных с ленты (даже в том случае, когда требовалось восстановить один-единственный файл), утилита настойчиво требовала каталогизации содержимого ленты. Этот процесс занимал около 2 часов, то есть примерно столько же, сколько и собственно процедура резервирования данных. В конце концов обнаружилось, что ntbackup.exe действительно строит каталог сеанса резервирования в каталоге C: emp, а имя файла-каталога — что-то наподобие 2c3f18b3.u01. Однако по завершении работы с утилитой файл-каталог уничтожается. Прежде чем завершить работу с процедурой резервирования, приходится копировать этот файл в другой каталог. В следующий раз, когда нужно восстанавливать данные с этой ленты, необходимо возвратить файл-каталог в C: emp. Если точно неизвестно, какой именно файл каталога может потребоваться, нужно скопировать все накопленные файлы-каталоги в C: emp. После этого можно просмотреть список созданных лент и связанную с ними информацию о каталогах (см. Экран 1).

Нужно иметь в виду, что каталожный файл — это не аналог хорошо известного файла ntbackup.log, который представляет собой не что иное, как просто текстовый файл. Утилита ntbackup.exe автоматически генерирует файлы .u01, и если его изменить, каталог ленты не будет отображаться в окне Tapes. Важно помнить и о том, что любой сеанс резервирования, дописывающий информацию на ленту, должен использовать файл-каталог, который был создан во время самого первого обращения к этой ленте. Самостоятельно придется разрабатывать и схему манипуляции с каталожными файлами. Я не привожу здесь разработанную мной процедуру перемещения каталожного файла в другой каталог, которую я написал для реализации планового резервирования без вмешательства оператора. Тем, кто интересуются этим вопросом, предлагаю написать мне по электронной почте. Почему инженеры Microsoft никак не могут решить эту проблему на протяжении вот уже 6 лет существования NT — еще одна загадка. Вероятно, сами они никогда не выполняют процедуру резервирования.