Миграция Lotus Domino с ОС Windows на GNU/Linux.
В данном докладе будет произведено сравнение функционирования системы Lotus Domino на Windows и GNU/Linux и представлен план возможной миграции на GNU/Linux.
Для предприятий малого и среднего бизнеса характерна централизация вычислительных ресурсов, когда один сервер выполняет широкий круг задач. В их перечень входит: обеспечение доступа из внутренней сети предприятия ко внешним ресурсам, оптимизация передачи данных, электронная почта, антивирусная защита, служба директории, возможно, Интернет-приложения.
Со временем бизнес развивается и растет, и как следствие, нагрузка на сервер возрастает. Способа решения этой проблемы два: увеличить вычислительные мощности имеющегося сервера, или приобретение дополнительного.
Среди широкого спектра задач значительную часть из них возможно решить с помощью IBM Lotus Domino. Остальные должны решаться с применением до
Система Lotus Domino может выполнять различные функции. В нашем примере разумно будет считать что Domino отвечает за передачу почты и предоставляет веб доступ к сайту компании.
Обозначим задачи каждого сервера. Один из них – внешний: маршрутизация пакетов, кеширование данных, передача почты, проверка почты антивирусной программой, веб сервис. Второй сервер – внутренний: почтовые ящики пользователей, служба директории, корпоративное антивирусное ПО.
При выборе ОС для нового сервера ( или замены старой ) следует обратить внимание на GNU/Linux. Эта система является не слишком требовательной к ресурсам для поддержания собственной работоспособности. Таким образом большая часть времени системы будет затрачена на полезные приложения и сервисы. Процесс миграции
- Когда принято решение о миграции следует подобрать аппаратную платформу и разновидность GNU/Linux. Вариант установки нового сервера, когда происходит развёртывание системы Lotus Domino с нуля, не рассматривается отдельно, т.к. является упрошённым случаем миграции.
Пусть используется архитектура IA-32. Для сервера лучше выбрать многопроцессорную конфигурацию. Определить нужный размер ОЗУ. Система Lotus Domino может оказаться довольно требовательной к этому параметру в некоторых случаях. Так же полезным будет использовать SCSI интерфейс для дисковой подсистемы.
Семейство ОС GNU/Linux можно поделить на несколько групп.
1) Бесплатные дистрибутивы общего назначения
2) Платные дистрибутивы общего назначения
3) Дистрибутивы специального назначения
- Разумно будет использовать дистрибутив сборки RedHat или SUSE, с которыми совместима система Lotus Domino. Проблемы совместимости буду рассмотрены
далее.
Пусть миграция происходит с одного физического компьютера на другой.
Вариант, когда требуется осуществить перенос без привлечения сторонних аппаратных ресурсов, не является оптимальным и рассматриваться не будет.
Процесс миграции можно представить в виде плана:
1) Установка ОС
2) Установка сервера Lotus Domino
3) Конфигурирование Lotus Domino
4) Останов сервера с которого происходит миграция
5) Бэкап данных
6) Перенос данных Lotus Domino на новую систему
7) Запуск сервера
8) Отладка конфигурации Lotus Domino
После установки системы Lotus Domino, но до первого запуска, необходимо заменить новую папку с данными ( notesdata ) на старую, после чего произвести запуск.
Рассмотрим процесс переноса в деталях, на примере ОС RedHat Enterprise Linux.
Установка ОС начинается с подготовки разделов жёстких дисков. Это достаточно важная процедура.
Рекомендуется использовать утилиту LVM ( Linux Volume Manager ).
Структура основного( системного диска ) следующая. ( Красивая картинка 8 )
1) загрузочный раздел ( kernel, initrd image )
- /boot
2) раздел LVM ( разделён на логические разделы )
- /
/usr
/var
/tmp
/home
/var/log
- Для увеличения производительности системы лучше установить на сервере не менее двух жёстких дисков. На дополнительном диске можно разместить разделы с данными Lotus Domino.
LVM позволяет создавать большое количество логических разделов. Это можно использовать для гибкой настройки. Например корневой раздел, раздел загрузки, раздел usr можно монтировать в режиме только на чтение, т.к. при нормальной работе сервера не требуется очень частое обновление ПО и файлов настройки.
Для этих же разделов целесообразно использовать файловую систему ext3. Эта ФС достаточно надёжна и производительна для таких разделов.
Хранение временной и не очень нужной информации берет на себя раздел /tmp.
В данном случае основным критерием является время доступа. Здесь можно использовать reiserfs, которая хорошо подходит для работы с файлами малого размера является быстрой, но не очень надёжной.
Как было сказано ранее, отдельный раздел, на другом жёстком диске для баз данных Lotus Domino будет хорошим выбором. Файловые системы JFS ( разработка IBM ) и XFS ( разработка SGI ) являются журналируемыми, надёжными ФС которые хорошо работают с файлами большого размера.
Переходим к процессу установки ОС. Выбор необходимых пакетов зависит от ситуации. Надо отметить что стоит устанавливать лишь необходимые пакеты. После установки ОС рекомендуется переписать все пакеты дистрибутива на жесткий диск, на случай если что-то было забыто.
Далее следует установка необходимых пакетов обновлений и перекомпиляция ядра. Стоит отказаться от generic kernel, включить в ядре поддержку только необходимых функций, выключив остальные.
Перед установкой Lotus Domino надо завести в системе специального пользователя и группу, например user=lotus, group=lotus.
При установке Lotus Domino, инсталлятор может потребовать требуемые пакеты, если они не установлены в системе ( чаще всего это бывает программа which ).
Ответив на несколько вопросов начнётся установка. На вопрос о последующей настройке рекомендуется выбрать вариант manual install.
Теперь надо решить возможные проблемы с совместимостью. Дело в том, что Lotus Domino скомпилирован с использованием стабильных но отнюдь не новых библиотек. Для устранения проблем нужно установить пакеты compat.
В RHEL это пакеты начинающиеся с compat-. На некоторых дистрибутивах могут возникнуть проблемы с виртуальной java-машиной. Это можно исправить замаскировав ядро более старой версией ( переменная окружения LD_ASSUME_KERNEL=”2.2.5” ) или установив другую java машину (можно получить бесплатно с сайта IBM ).
Вообще говоря можно установить Lotus Domino на любой вариант GNU/Linux. Например, была произведена установка и проверена работоспособность Lotus Domino на GNU/Linux, собранной вручную из исходных кодов.
Теперь запустив скрипт удалённой настройки, можно произвести настройку с помощью утилиты remote server setup.
При миграции важно представить новому серверу старый id файл. По завершении мастера. Сервер будет готов к запуску.
Следующим шагом является перенос баз данных, шаблонов, id файлов, notes.ini.
Теперь можно запускать сервер. Сделать это надо из командной строки. Проконтролировав запуск сервера, можно выключить его.
Создав загрузочный скрипт в /etc/init.d и сделав ссылку из /etc/rc3.d ( штатный режим ОС ) можно запустить Лотус.
Приложения.
Список необходимых библиотек для совместимости. ( RedHat Enterprise Linux ) compat-gcc-7.3-2.96.128
- compat-libstdc++-7.3-2.96.128
compat-glibc-7.x-2.2.4.32.6
важно наличие файлов и ссылок
/usr/lib/libstdc++-2-libc6.1-1-2.9.0.so
/usr/lib/libstdc++-3-libc6.2-2-2.10.0.so
/usr/lib/libstdc++-libc6.1-1.so.2
/usr/lib/libstdc++-libc6.2-2.so.3
Для сборки этих библиотек вручную необходимо скомпилировать пакет egcs. Этот метод стоит применять только в особых ситуациях. Во всех современных дистрибутивах существуют эти пакеты, может отличаться название.
Lotus Domino 6.5 использует Java jre-1.3.1. В случае проблем с Java ( выражается в появлении Segmentation Fault при запуске ) можно поменять jre. Для этого нужно скачать этот пакет, вариант для GNU/Linux, с сайта IBM. Извлечь из пакета папку jre и поместить её в каталог lotus вместо папки jvm.
Например:
mv /usr/local/lotus/notes/latest/linux/jvm /tmp/old_jvm
mv /tmp/jre-1.3.1/jre /usr/local/lotus/notes/latest/linux/jvm
Иногда бывает необходимо замаскировать версию ядра.
Для этого требуется прописать в файл аккаунта lotus параметр LD_ASSUME_KERNEL:
Например:
echo “export LD_ASSUME_KERNEL=’2.2.5’” >> /home/lotus/.bash_profile
Источник
Debian Linux + Lotus Domino ( Установка Lotus Domino 8.5 на Debian GNU/Linux Squeeze. )
28 июня 2011 (обновлено 15 августа 2016)
OS: Debian GNU/Linux Squeeze.
Application: IBM Lotus Domino 8.5 for Linux (xSeries).
В принципе, можно на Linux применить дистрибутив Lotus Domino, предназначенный для Solaris или AIX — отличаются они только инсталлятором. Но в этом нет необходимости, так как IBM подготовила для «обычных» Linux дистрибутив «xSeries». Он так и именуется, например, дистрибутив «IBM Lotus Domino 8.5 for Linux» называется «lotus_domino85_xlinux».
Проведём подготовительные работы.
В файле /etc/hosts описываем для локального и внешнего IP определённое серверу символическое имя, для того, чтобы в дальнейшем оперировать не с IP адресами, а с постоянными именами:
.
127.0.0.1 localhost
127.0.0.1 domino.example.com domino
192.168.1.1 domino.example.com domino
.
Создаём местечко, где будет работать сервер Domino:
Добавляем группу и пользователя, от имени которых будет работать сервер Domino:
Обращаю внимание на то, что я лишил пользователя notes возможности работать в так называемой «оболочке», иначе говоря, от имени пользователя можно запустить приложение, но нельзя будет работать в «командной строке». Это создаёт некоторые неудобства при тестировании работы приложений, но добавляет лишний час спокойного сна.
Явно добавляем пользователя notes в группу notes:
Создадим для пользователя notes скрипт определения набора переменных окружения среды Bash, в которой мы будем запускать сервер Domino, где укажем дополнительные пути поиска исполняемых файлов, библиотек и конфигурационных файлов:
Распаковываем дистрибутивный архив в место, которое мне представляется наиболее для этого подходящим:
Переходим в директорию с инсталляционными скриптами и запускаем установку в режиме текстовой командной строки:
Lotus Domino for Unix Install Program
————————————-
InstallShield Wizard
Initializing InstallShield Wizard.
.
Пробежимся по ключевым этапам инсталляции.
Читаем лицензионное соглашение, подтверждаем его приём или отказываемся от использования продукта, буде что не устроит.
В случае достижения соглашения с производителем продукта выбираем на следующем этапе режим установки одиночной инсталляции «Domino Server», явно отказываясь от установки «Server Partitions»:
.
[ ] 1 — Install Data Directories Only for Partitioned Domino Server
To select an item enter its number, or 0 when you are finished: [0]
Далее соглашаемся с будущим месторасположением исполняемых файлов «Lotus Domino»:
Please specify a directory or press Enter to accept the default directory.
Program Files Directory Name [/opt/ibm/lotus]
А вот месторасположение баз данных, предлагаемых установщиком по умолчанию мне не нравится. Переопределим его на своё:
Please specify a directory or press Enter to accept the default directory.
Data Files Directory Name [/local/notesdata] /var/lib/notes/data
Задаём имя и группу пользователя, под которым будет запускаться сервер Domino:
User Name [notes]
Group Name [notes]
Определимся с методом первичной настройки сервера после его установки.
Лучше всего после прохождения процесса установки запустить сервер Lotus Domino в специальном режим первичной настройки и удаленно донастроить сервер с помощью утилиты serversetup из комплекта «Notes Administrator». На данный момент IBM предоставляет «Notes Administrator» и «Notes Designer» только для платформы Microsoft Windows, потому придется держать для администраторов и разработчиков рабочие станции на базе этой операционной системы.
Указываем «Remote server setup», выбирая вариант удалённой установки:
After the installation completes, for new installation server setup will be
launched and for upgrade the server will be restarted automatically.
[ ] 1 — Local
[X] 2 — Remote
[ ] 3 — Manual
Удостоверимся в том, что всё так, как нам и требуется:
Program Files: /opt/ibm/lotus
Data Files: /var/lib/notes/data
Domino Kit Type: EnterpriseServer
Unix Install Options:
User Name: notes
Group Name: notes
Install Data Only: No
Start Server Setup: Yes (Remote)
.
Даём отмашку на непосредственно инсталляцию:
Checking Minimum OS Version
Warning:
*****************************************************
Domino does not support this system:
Installing Lotus Domino. Please wait.
Нас уведомят в том, что используемая операционная система официально не поддерживается производителем Lotus Domino. Впрочем, инсталляции это не мешает, так как все необходимые для работы компоненты имеются.
После завершения установки создаётся комплект для «деинсталляции»:
Минут десять ожидаем.
На случай, «деинсталлятор» скромно расположился в директории «/opt/ibm/lotus/notes/latest/linux/_uninst/» и запустить его, при необходимости, можно следующим образом (хотя проще попросту удалить директории «/opt/ibm/lotus» и «/var/lib/notes/data» — после этого сервер можно считать полностью удалённым):
В итоге, читаем меморандум о том, что содеяли:
Читаем лог установщика по адресу «/tmp/DominoInstall.log», если интересно или что-то показалось прошедшим не так, как должно было бы быть.
С учётом того, что наша операционная система официально не поддерживается производителем, в процессе инсталляции есть некоторые особенности. В частности, после установки сервер Domino не запускается автоматически в ожидании дальнейшей настройки. Сделаем это вручную:
Сессия блокируется в ожидании подключения извне, с сопутствующим уведомлением:
./java -ss512k -Xoss5M -cp jhall.jar:cfgdomserver.jar:./ndext/ibmdirectoryservices.jar lotus.domino.setup.WizardManagerDomino -data /var/lib/notes/data -listen
Remote server setup enabled on port 8585.
The Domino setup server is now in listening mode.
A remote client can now connect to this server and configure Domino.
To connect to this server, launch the Remote Domino Setup program from a command-prompt as follows:
From a Domino administrator client: serversetup -remote
From a Domino server: server -remote
.
Сразу, как только мы подключимся клиентом администрирования для настройки сервера, получим уведомление о том, куда будет записан журнал событий:
После успешной настройки можно попробовать запустить сервер Lotus Domino вручную:
Lotus Domino (r) Server, Release 8.5.x .
Copyright (c) IBM Corporation 1987, . All Rights Reserved.
Event Monitor started
.
Console Logging is ENABLED
.
Database Server started
.
Database Replicator started
.
Agent Manager started
.
LDAP Server: started
.
Administration Process started
.
JVM: Java Virtual Machine initialized.
.
Удостоверимся в том, что сервер Lotus Domino прослушивает определённый ему порт:
Теперь, после того, как мы наигрались с пробными запусками сервера Domino, пришло время создать скрипт управления и автоматического запуска/остановки сервиса.
Устанавливаем утилиту Screen, с помощью которой будем запускать сервер Domino:
Создаём для Screen специальный конфигурационный файл, в котором включим журналирование всего происходящего:
Пишем скрипт управления и автоматизации запуска:
export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin/:/var/lib/notes:/var/lib/notes/data
DATE=`date +»%Y-%m-%d %H:%M:%S»`
NOTESUSER=notes
NOTESSERVER=/opt/ibm/lotus/bin/server
NOTESEXEC=/opt/ibm/lotus/bin/nsd
NOTESDATA=/var/lib/notes/data
NOTESINI=/var/lib/notes/data/notes.ini
NOTESLOG=/var/log/notes/managment.log
SCREENCONF=/var/lib/notes/.screenrc-log
SCREENLOG=/var/log/notes/screen.log
start() <
echo «$
echo «$
# Запускаем сервер Lotus Notes Domino в Screen от имени пользователя notes с явным указанием конфигурационного файла notes.ini
su —shell /bin/bash —login $
return $
>
case «$1» in
start)
start
;;
stop)
stop
;;
kill)
echo «$
echo «$
su —shell /bin/bash —login $
;;
restart)
echo «$
echo «$
stop
echo «Wait. »
sleep 5
start
;;
*)
echo «Usage: $0
exit 1
;;
esac
Прописываем наш скрипт для всех уровней исполнения в системе:
Слегка наводим порядок с доступом к ресурсам и конфигурациям:
Для того, чтобы не получать сильно разросшийся одиночный файл журнала настроим его ротацию.
Устанавливаем приложение ротации текстовых файлов с одновременным их сжатием:
Создаем конфигурационный файл ротации журнальных файлов для Lotus Notes Domino:
Проверяем корректность конфигурационного файла:
[ уже посетило: 24421 / +3 ] [ интересно! / нет ]
Поблагодарить автора ( сделайте свой денежный вклад в хорошее настроение )
Источник