вторник, января 31, 2006

Опус про резервное копирование Exchange

Сегодня к нам в гости приезжал Computer Associates CA. У нас, за 5 лет эксплуатации Arcserve и Innoculate накопилось море вопросов, да и просто хотелось послушать про линейки продуктов СА. Одним из вопросов к СА был вопрос об оптимизации резервного копирования Exchange и мне захотелось закрепить свои мысли на "бумаге", т.е. в этом посте. Начинающие админы рано или поздно сталкиваются с проблемой резервного копирования. Какие вообще есть варианты? Копирование Exchange может быть осуществлено на трех уровнях: уровень баз данных, уровень почтовых ящиков, уровень писем. Это даже не уровни копирования, а уровни восстановления.

1. Уровень баз данных (Storage backup) - копирование баз данных почтовых сообщений.

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

Микрософт разработала специальный Backup API, чтобы делать резервное копирование без останова сервера. Именно этот способ поддерживает ntbackup.
http://www.msexchange.org/tutorials/Exchange-2003-Backup-Restore-NTBACKUP.html

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

Как правило к нам в 99% обращаются именно с такими просьбами. За 5 лет эксплуатации 7 серверов Exchange на базе оборудования HP только один раз я воспользовался режимом восстановления хранилищ. Они были разрушены в результате некорректной работы аппаратного RAIDа.

2. Уровень почтовых ящиков (Folder level backup) – это то, чего не хватало Exchange всю свою жизнь и нет сейчас. Микрософт конечно же предложило способ решения описанный выше и по этой ссылке:
http://www.msexchange.org/tutorials/Recovering-Mailboxes-Exchange2003-SP1.html

Стало удобнее, но не то что хотелось бы. Если есть ниша, то ее занимают третьи фирмы. Продукт CA BrightStore Arcserve поддерживает Brick level backup. Это агент, который по MAPI подсоединяется к Exchange. Представьте себе, как Outlook подсоединяется к серверу, копирует все папки в pst и отключается. Подобную процедуру проделывает и агент, сохраняя при этом информацию о папках в почтовых ящиках в собственной базе данных. После такого копирования Вы можете восстановить по запросу пользователя любую папку.
Недостатки этого способа – очень медленная работа. Вполне возможно, что Вам просто не хватит окна бэкапа. Зато появляется удобство при восстановлении.

3. Уровень писем (Message level backup)

Возможно, есть такие пользователи, которые точно знают, какое письмо им нужно восстановить. Как правило, сообщают только период времени и в крайнем случае от кого.
Неплохо бы было восстанавливать письма поштучно. У CA есть Backup Agent for Microsoft Exchange - Premium Add-on, который позволяет восстанавливать конкретные письма. По большому счету это тот же Brick level backup, только у него появилась мультипотоковость, т.е. данные будут вытягиваться одновременно из нескольких почтовых ящиков. Это конечно же увеличит скорость работы. Плюсом является хранение одной копии письма. Например, если рассылалось письмо размером 1 мегабайт, то в копии оно будет в одном экземпляре. Экономия ленточек J

Еще можно купить Ontrack PowerControls и выдирать из файла базы данных письма. Но я этот способ пока не пробовал.
http://www.ontrack.com/powercontrols/index.asp?pageTarget=Welcome&buttonName=PowerControls

Какой уровень резервного копирования нужен Вам, можете решить только Вы сами. Исторически сложилось так, что мы используем, и будем использовать CA Brightstore Arcserve в режимах Storage и Brick level backup. Возможно при обновлении лицензий мы заменим Brick level backup на Exchange - Premium Add-on.

На рынке существует масса продуктов резервного копирования. Смотрим ссылку:
http://www.msexchange.org/software/Backup-&-Recovery/

Рекомендую еще изучить следующие линки:
http://support.microsoft.com/ph/1773?sid=78

А вот тут есть еще и видео о том, как бэкапить Exchange.
http://www.microsoft.com/technet/prodtechnol/exchange/2003/operations.mspx

5 комментариев:

Pavel Nagaev комментирует...

Полезная статья о brick level backup с помощью ExMerge

http://www.petri.co.il/brick_level_backup_of_mailboxes_by_using_exmerge.htm

Анонимный комментирует...

Ontrack PowerControls - одна из самых нужных программ в хозяйстве как для восстановления мэйлбоксов, так и отдельных писем. Очень неплохой продукт, опробован на личном опыте - рекомендую. Victor

Анонимный комментирует...

Если немного поменять разрешения на хранилище для пользователя из под которого выполняется резервное копирование, то можно лицезреть все почтовые ящики в виде папок.
И все письма в формате eml. Причем письма и прочие элементы можно удалять, редактировать, архивировать как файлы в обычной файловой системе. Действует это с 5 по 2003 версию. И кстати во время работы. В 2007 поддержка собственной файловой системы анулированно и скорее всего этот способ не будет работать. Вобщем все что было про уровни восстановления - полная ботва все давно было и так :))).

Да, также можно напрямую записывать документы Microsoft Office в хранилище, они отлично открываются в папках пользователя и в общих папках :))). Как, зачем и к чему это можно прикрутить - вопросы к Вашей фантазии и задачам.

По поводу Ontrack PowerControls - да - полезно при крахе.

С Уважением, STTR.

Pavel Nagaev [MVP Exchange] комментирует...

Мне никогда не нравился функционал доступа к хранилищу, как к файловой системе. Микрософт же в 2003 убрал этот функционал, т.е. его СПЕЦИАЛЬНО нужно было разрешать через реестр.

Если есть спец. API для резервного копирования, то нужно его и использовать, а не файловый доступ к хранилищу.

Анонимный комментирует...

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

Для штатной эксплуатации - действительно лучше лицензионные, признанные и поддерживаемые продукты, разделение ответственности и политические вопросы в IT никто не отменял.

По поводу разрешений производятся в диспетчере Exchange System Manager на уровне прав. Собственно это не оригинальный велосипед, так к примеру поступают многие антивирусы под Exchange, к примеру Trend Micro ScanMail.

С Уважением, STTR.