Войти
 
 
   
 
  
Новости Notes.ру Библиотека Биржа труда Вопрос - ответ Форум Регистрация Поиск О проекте
Разделы
О Notes
Советы
Шаблоны и примеры
Литература
Презентации
 
Всё о задаче AdminP. Часть вторая   Во второй части мы завершаем рассмотрение AdminP. В ней рассмотрены запросы междоменного администрирования и способы управления функциями AdminP с помощью настроек документа сервера, команд консоли сервера, файла Notes.ini и интервалов очистки базы данных. В этой статье предполагается, что вы опытный администратор Domino и прочитали первую часть
О Notes Читать статью
 
Всё о задаче AdminP. Proxy-действия в R5 и Domino 6   Приложение к статье об административном процессе
О Notes Читать статью
 
Всё о задаче AdminP. Часть первая   Перевод классической статьи 2003-его года о задаче административного процесса (AdminP). Очень полезна для понимания работы механизма этой задачи. В первой части статьи описаны компоненты задачи AdminP, как они работают, и как их использование помогает сделать работу администратора Domino проще. Задача AdminP (сакращённо от Administration Process, Административный процесс) работает с базой административных запросов (Administration Requests, admin4.nsf)
О Notes Читать статью
 


Шаблоны и примеры

Главная   Библиотека   Шаблоны и примеры

DuChan PreBackup, v1.1



Эпиграф:
«Администраторы делятся на две категории:
на тех кто еще не терял критично важные данные
и тех кто уже их терял…»
Автора не знаю.


Предисловие:

Прошло более 5 лет, как я опубликовал здесь первую версию PreBackup'а, но интерес не пропадает, и мне периодически пишут по поводу этой разработки. Года три назад я усовершенствовал его, но тогда так «руки и не дошли» опубликовать новую версию здесь – «ай-яй-яй мне». Что ж, лучше поздно, чем никогда.


О программе:

Инструмент для предварительного копирования баз из каталога сервера Domino в каталог временного хранения, для последующего сохранения этих баз данных имеющимися у Вас штатными средствами резервного копирования, на носители долговременного хранения данных.

Версия:

v1.1(free)

Версии Domino:

6.x-8.0 (8.5 и выше - с ограничениями)

Автор:

Черепанов Андрей

Контакты:

duchan@mail.ru

Скачать

>>>

Некоторые пояснения:

«Duchan PreBackup» не является полновесным средством резервного копирования баз данных Lotus Domino, это необходимо иметь ввиду при использовании данного продукта. Его можно использовать либо как дополнительное средство, либо как экстренный временный вариант, но не дающий 100% гарантии работы. Но!... Мы живем в реальном мире, а в реальном мире очень часто встречается, что руководство выделяет деньги на оборудование, базовое ПО, даже на разработку ПО для организации, и на этом успокаивается. А системы резервного копирования, считая чем-то не столь жизненно необходимым и без чего можно сегодня обойтись, «а вот завтра мы обязательно купим…». И это «завтра» может быть «завтра» очень долгое время, «пока гром не грянет…», добавляя «седых волос» администраторам… В принципе, для данной ситуации, данная система может хотя бы «как-то» закрыть этот вопрос.

Внимание: данная система может работать на серверах, в версиях начиная с 6-ки и по 8-ку включительно, НО уже на 8.5 есть ограничения. А ограничения эти состоят в том, что в 8.5 был добавлен инструмент под названием DAOS, который позволяет выгружать вложения, которые хранятся в базах, в отдельную файловую папку на сервере. Описание всего механизма DAOS здесь не имеет смысла, о нем можно почитать, например, на сайте IBM. Важно, что если Вы используете DAOS у Вас на серверах и базах, то данный инструмент Вам не поможет, поскольку при выгрузке используется механизм репликации в пределах одного сервера, таким образом, вложения не будут перемещены в выгружаемую базу. (Прим.: На самом деле, тут момент очень запутанный. Я проводил тесты по выгрузке баз данных с вложениями PreBackup'ом. Результаты меня несколько удивили. Я думал что, либо будет работать, либо нет. Но получил результат примерно 50-на-50, т.е. выгружая с периодичностью в 5 минут, у меня база получалась, то с вложениями, то без них. При этом какой-то закономерности я не уловил. Без вложений было чуть больше.)

Что нового, а что осталось:

Принцип работы остался прежним: агент, запускаемый на сервере по расписанию, выгружает, указанные в списке заданий, базы (по маске), в указанную папку, используя механизм репликации. Дополнительно появилась возможность установить у агента (с версии Domino 6) «Set runtime security level» в «3.Allow restricted operations with full administration rights», но это заслуга не моя, а ребят из IBM.




Список заданий формируется, так же с указанием периодичности и маски файлов.

В секции «Доп.опции» добавился параметр «Добавлять к имени результирующего файла расширение ".backup"?» - т.е. к имени выгружаемой базы будет добавлено «.backup» (names.nsf.backup)

А вот раздел, что делать после выгрузки изменился. Если раньше можно было только задать, что запустить, то сейчас раздел расширен. Появился выбор:



    • «Ни каких действий не производить» - тут я думаю понятно из названия
    • «Командная строка запуска» - как в старой версии, можно указать какое приложение запустить после выгрузки баз. Внимание: было убрано «запускать для каждой базы отдельно».
    • «Автоматическая упаковка и выгрузка» - новый раздел, где можно настроить автоматическую упаковку выгруженных баз в ZIP-архив, а так же передачу архива на внешний FTP сервер. (Прим.: Упаковывается через java в zip, но если размер архива превысит 4Gb, то тут мы получаем zip-архив не совместимый со стандартным алгоритмом ZIP, поскольку у обычного ZIP-архива ограничение в 4Gb. Java этот момент обходит «через небольшой hack», как сообщают SUN'овцы, так что распаковать такой архив можно тоже только через java. Для решения этой проблемы был добавлен простейший «UnZip», как агент Lotus Notes)

Несколько изменились подстановочные переменные и их контекст применения, будьте внимательны:
$%DBNAME%$ - имя реплицируемой базы
$%RESDBNAME%$ - имя результирующей базы
$%TODAY%$ - дата выполнения резервного сохранения
$%WEEKDAY%$ - номер дня недели
$%WEEKNUM%$ - номер недели
$%MONNUM%$ - номер месяца

Добавилось протоколирование хода исполнения и сохранение лога в отдельные документы:




А так же, решена проблема, что после выгрузки базы она оставалась открытой сервером, это особенно было критично для Domino работающей под Windows, где базы монопольно блокировались ОС, и что-либо сделать с ними, можно было только по прошествии некоторого времени. В новой версии, после выгрузки, на консоль сервера отправляется команда «DBCACHE FLUSH» с отслеживанием, когда сервер сбросит кэш и освободит базы. Т.е. теперь работа с выгруженными базами производится более корректно, и это дает возможность обрабатывать базы не только под Linux, но и под Windows.

Настройка запуска агента

Для настройки времени выгрузки необходимо открыть базу в дизайнере, перейти в раздел «Общий код»\«Агенты» и открыть агент «PreBackup»




Открыть «Свойства агент» и выставить необходимое расписание запуска агента выгрузки



Проверте, также, «Уровень безопасности» для запуска агента, наиболее приемлемым в данном случае будет 3-ий уровень:



Закройте с сохранением и проверте, что бы агент был «Включен»

Далее, если у «Автор изменений» не достаточно прав на сервере, переподпишите агент тем, у кого эти права имеются (Прим.: Я обычно подписываю сервером, на котором и запускается агент, но это мои предпочтения, у Вас политика безопасности может быть иной)

Для нормальной работы агента необходимы права, прописанные в серверном документе, «Run unrestricted methods and operations:» - для возможности работать с дисками и сетью и «Full Remote Console Administrators:» - для возможности посылать на консоль сервера команды из агента. Так же просмотрите другие параметры безопасности.

Так же проверьте, сколько минут у Вас разрешено работать агенту на сервере. Выгрузка баз довольно долгий процесс, и если у Вас будет выделено мало времени, то агент просто не успеет завершить работу и будет принудительно завершен сервером
->

Настройка задач PreBackup

Откройте базу в клиенте Lotus Notes, перейдите в вид «Список заданий». В этом виде у Вас отображаются списки всех Ваших заданий для выгрузки баз. Для создания нового задания нажмите кнопку «Новое задание»




В открывшемся документе настройте параметры задания:



Описание параметров задания:

Комментарий - это текстовое поле в котором Вы указываете «название» или краткий комментарий к заданию, под этим «именем» задание будет показано в виде «Список заданий»

Маска файлов – поле в котором указывается какие базы необходимо обрабатывать, указывается маска файлов и при обработке, будет сравниваться имя базы в каталоге баз Domino с данной маской и если имя файла базы совпадет с маской, значит база будет обработана. Прим.: необходимо учитывать специфику серверов и указывать пути в том виде в котором они используются на платформе сервера, например для Windows это "путь\база", а для Linux это будет "путь/база". О подробностях построения маски отсылаю Вас в Designer Help, см. «Like operator».

Расписание – здесь задается периодичность обработки баз:

  • Отключить сохранений – временно отключить обработку текущего задания.
  • При каждом запуске – задание обрабатывается при каждом запуске агента, т.е. если у Вас установлен запуск агента несколько раз в день или только раз в неделю, задание будет выполнятся каждый раз.
  • Раз в день – данный параметр необходим, если у вас настроен запуск агента несколько раз в день, но для данного задания необходимо только ежедневная обработка.
  • По дням недели – задания обрабатываются только в указанные дни недели (возможно создание заданий с еженедельной периодичностью, еси выставить например запуск только в воскресенье)
  • Каждый день месяца – для организации ежемесячных выгрузок. Задание будет выполнятся, только в номер дня месяца указанный при выборе данного параметра. Т.е. если указано «1», то первого числа каждого месяца это задание будет отработано. Внимание: пропущенные даты не обрабатываются, т.е. если Вы поставите «31», а дней в месяце только 30, то в этом месяце задание выполнено не будет.

Доп.опции – здесь можно настроить «как» производить выгрузку:
  • Если результирующий файл присутствует? – здесь Вы задаете, поведение при возникновении ситуации когда в месте куда Вы выгружаете файл с именем обрабатываемой базы уже существует: Удалить файл и заменить его новым или пропустить выгрузку обрабатываемой базы
  • Добавлять к имени результирующего файла строку даты сохранения? – для создания уникальности имен, и информации о дате выгрузке, можно включить данный параметр, и к имени выгружаемой базы будет добавлена дата выгрузки.
  • Добавлять к имени результирующего файла расширение ".backup"? – к имени выгружаемой базы добавляется расширение «.backup», это полезно когда выгружается несколько баз, и хотя выгружаемое место находится вне каталога Data Domino, сервер может находить и начать обрабатывать эти базы, поскольку на время репликации сервер подключает каталог куда Вы выгружаете базы. Для того, что бы сервер «сбить с толку» и добавляем расширение для файлов «.backup».
  • Сохранять структуру каталогов? – при выгрузке будет сохранятся структура каталогов из папки Data Domino-сервера.


Путь для сохранения – в этом параметре необходимо указать путь к папке, куда будет производиться выгрузка. Необходимо что бы «акаунт», под которым запущен сервер Domino, имел достаточные права для работы с данной папкой.

Действия после выгрузки – в данном блоке настраивается поведение после выгрузки баз:

  1. Ни каких действий не производить – данная опция, отключает какую-либо обработку баз после выгрузки.
  2. Командная строка запуска – данная опция включает запуск командной строки ОС, для обработки после выгрузки. Необходимо указать приложения или команды ОС, которые будут выполнены в ОС на сервере. Будьте осторожны и внимательны при указании параметров данной опции, поскольку ни какого контроля за запускаемым приложением не производится. При не правильном задании данного параметра вы, например, можете удалить ВСЕ данные на сервере.
  3. Автоматическая упаковка и выгрузка – данная опция включает автоматическую обработку баз: возможность упаковать в ZIP-архив и передать его на внешний FTP сервер.
    • Упаковать результат выгрузки в ZIP архив – опция включает автоматическую упаковку в ZIP-архив
      • Путь и имя ZIP-файла – путь и имя создаваемого архива с расширением. Папка, где будет создан файл архива, должен существовать.
    • Удалить результат выгрузки после упаковки – если установлена данная опция, то после упаковки в zip-архив, исходные выгруженные базы будут удалены (выгруженные базы, а не базы на сервере в папке Data )
    • Передать ZIP архив на FTP-сервер – данная опция включает механизм передачи zip-архива на FTP сервер.
      • Host name – имя FTP сервера куда передавать
      • Login – имя для входа
      • Password – пароль для входа
      • Путь и имя на FTP сервере – задается путь и имя файла на стороне FTP сервера
    • Удалить выгруженный ZIP-файл – данная опция включает механизм удаления ZIP-архива на стороне сервера после его выгрузки на FTP сервер. Т.е. после того как файл передастся на FTP сервер, исходный архив будет удален.

«Строки подстановки»
В параметрах «Путь для сохранения», «Командная строка запуска» и "Автоматическая упаковка, и выгрузка" для формирования пути и команды, возможно, указывать подстановочные строки, которые во время сохранения будут вычислены и заменены на соответствующие значения.
$%DBNAME%$ - имя реплицируемой базы
$%RESDBNAME%$ - имя результирующей базы
$%TODAY%$ - дата выполнения сохранения (в формате "номер_годаномер_месяцаномер_дня")
$%WEEKDAY%$ - номер дня недели (0-воскресенье, 1-понедельник и т.д.)
$%WEEKNUM%$ - номер недели
$%MONNUM%$ - номер месяца

Просмотр логов

Для отслеживания хода выполнения выгрузки предусмотрены две возможности:

1. Осталось с версии 1, в документе задания на вкладке «Журнал», хранится лог последнего запуска. Общую статистику по данным из журнала можно посмотреть в вида «Лог\Время запуска» и «Лог Журнал»




2. Для более полного контроля за выполнением заданий, было добавлено протоколирование выполнения заданий в отдельном документе. Эти документы можно посмотреть в виде «Логи выполнения». Если в ходе выполнения выгрузки поле с сообщениями будет заполнено (ограничение на размер поля в Lotus Notes), то будет создан новый документ как продолжение предыдущего.


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

Для облегчения некоторых действий мной были добавлены три инструмента. Найти их можно в меню «Действия»




1. UnZip – инструмент для распаковки ZIP-архива, созданного PreBackup'ом. Инструмент простой, без каких-либо «излишеств». Указываем архив, который необходимо распаковать и путь, куда его распаковать.

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

3. Ручной Backup – указываете сервер, маску, и локальную папку куда сохранять. Производит выгрузку баз на локальный диск используя репликацию (т.е. создает у Вас набор реплик)




Смотрите также описание авторских решений на NotesNet.ru
DuChan PreBackup, версия 1.0 >>>
DuChan AVP Scaner >>>
Сборщик почты/DuChan Postman >>>


Обсуждаем на форуме
 
  Опубликовано — 10/02/2009 |    

pakhom, 09.04.2011 01:45:12:
Коллега, спасибо большое за отличный инструмент.
не встречали ли такую проблему: после ночного выполнения бекапа средствами DuChan у пользователей в Notes'e вылетает ошибка "notes error: не удаётся открыть адресную книгу (%s) из-за ошибки '%e'. До её исправления места вызова окажутся недоступны. in QueryOpen in subform CTB00 at line 48"

Ник Норкин, 25.11.2009 13:17:50:
Андрей,
а какой стратегией организации архивов ты пользуешься?
Я задумался реализовать такое хранение:
пнд-втр-среда-чтв - с затиранием архива на следующей неделе
в пятницу делается архив недельный, в первую пятницу месяца - месячный
хранятся: 4 ежедневных архива, 4 недельных, ну и дальше месячные архивы...
Но подстановками у меня это не получилось...

Criz, 02.10.2009 12:43:56:
Спасибо! Пользовался когда-то первой версией, и рад что система продолжает развиваться



Добавить комментарий
Имя * :
e-mail
Комментарий * :
Код подтверждения * :


Мероприятия
Пресс-релизы
Биржа труда
Последнее на форуме
 
А так же:
Как удалить профиль?
16.04.2016 00:08:51
Скопировать в буфер поле документа
24.05.2015 08:55:52
Импорт DXL-описания документов в Lotus Domino. Одноимённые поля
16.04.2015 16:49:58
 
© LOGOSPHERE.RU