Реплікації поштового сервера

Для підвищення надійності роботи системи призначено реплікацію даних сервера FossDocMail. Можна реплікувати вихідну чергу повідомлень поштового сервера FossMail і його налаштування. Також на розсуд адміністратора можлива реплікація довільних файлів серверу FossMail.

Реплікація “Баз даних конвертів” поштового серверу FossMail і “Сховища повідомлень” серверу додатків FossDocMail виконується системними засобами СУБД.

Розглянемо схему реплікацій і засоби, що застосовуються.

Враховуючи структуру сервера FossDocMail, процес налаштування реплікацій можна розділити на два етапи: “Реплікація папок і файлів” і “Реплікація баз даних”.

Реплікація серверу FossDocMail

Поштовий сервер може знаходитись в одному із станів:
– режим роботи без реплікації (після першої інсталяції);
– режим роботи з реплікацією – головний;
– режим роботи з реплікацією – резервний.

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

У другому – головний сервер реплікує свої данні на резервний сервер. Це – основний режим роботи. Також він може тимчасово використовуватись на резервному, коли після аварії головного серверу його було відновлено і для подальшої роботи необхідно засінхронізувати данні.

Третій, резервний, режим – поштовий сервер запущено, але за рахунок параметру #Auto_start=0 в файлі конфігурації Host.cfg основні задачи сервера не запущені, а відпрацьовують тільки періодичні сервісні задачі, такі як архівування транзитів, видалення старих логів (якщо їх реплікація теж налаштована). Також в цьому режимі тимчасово працює відновлений головний сервер на час сінхронізації з працюючим резервним.

Особливість другого та третього режимів – служби поштових серверів повинні стартувани не від системи, а від користувачів, у яких є повний доступ до віддаленних каталогів .\FossMail32\ один одного. Після кожного оновлення версій необхідно перевіряти у службах це налаштування поштових серверів.

Для оперативного переключення між режимами бажано для кожного режиму зробити свій файл конфігурації. Їх можна підготувати на етапі тестування, налаштовуючи кожний режим та зберігаючи одержаний файл Host.cfg для подальшого використання.

Налаштування головного поштового вузла

Реплікація папок и файлів

Перехід в режим головного сервера задається у комбо боксі вибором відповідної строки (“(Режим 1) ГЛАВНЫЙ почтовый узел”):

(Режим 1) ГЛАВНЫЙ почтовый узел

Реплікація папок і файлів проводиться системними засобами поштового сервера FossMail. Папки та файли копіюються на резервний поштовий сервер.

Реплікація поштових cкриньок і транзитів

У поштових скриньках зберігається вихідна черга файлів поштової кореспонденції (ФПК). Це список файлів, призначених на відправку. Налаштування даної реплікації проводиться з пункту меню “Свойства объекта/Узел/Репликации почты” програми “Адміністратор поштового серверу FossMail”. Схема роботи реплікації наступна. При приміщенні ФПК в вихідну чергу він автоматично копіюється на резервний сервер, вказаний в параметрі “Шлях до папок копій”. При відправці ФПК і видаленні його з черги даний ФПК видаляється з резервного сервера. Таким чином, в разі аварійної зупинки головного сервера всі ФПК, які не були надіслані будуть збережені на резервом сервері.

Аналогічно виконується реплікація поштових скриньок користувачів при їх створенні або видаленні. При створенні нового користувача на головному поштовому вузлі автоматично створюється копія його поштової скриньки на резервному вузлі. При видаленні користувача відповідний поштовий ящик видаляється і на резервному вузлі.

Місце, куди буде вестись реплікація стану скриньок, задається у полі “Путь к папкам копий”.

Реплікація транзитів виконується аналогічно за винятком того, що всі транзити накопичуються до кількості, заданній у Host.cfg, з наступною їх автоматичною архівацією на головному сервері, а після реплікації – й на резервному. Архівація і реплікація є дві незалежні транзакційні операції. Місце реплікації транзитів задається у полі “Путь к папкам копий транзитов”. При першому запуску в такому режимі сервер також копіює архіви транзитів.

Реплікація налаштувань (автоконфігурація)

Реплікація налаштувань дозволяє зберегти налаштування маршрутних таблиць, адресних книг та інших налаштувань, які зберігаються на головному поштовому сервері. Використовуючи пункт меню “Свойства объекта/Компьютер/Репликация настроек/Авто.конф.” програми “Адміністратор поштового сервера FossMail”, слід вказати шлях до резервного сервера електронної пошти. Для параметра “Папка узла” рекомендується використовувати загальну частину шляху з “Настройки репликации папок” (\\<Computer_name>\FossMail32\). Реплікація проводиться тільки при зміні налаштувань, тобто, якщо змінили якусь маршрутну таблицю, то вона буде реплікована.

Для реплікації всіх файлів і підкаталогів даного каталогу слід використовувати зарезервоване слово <ALL>.
Наприклад: C:\FossMail32\FOSSABS\<ALL> .
Для вказівки формату реплікуємих файлів використовується маска *.*
Наприклад:  C:\FossMail32\Route\*.*

Реплікація налаштувань (автоконфігурація)

Реплікація Додаткових даних (ручна конфігурація)

При необхідності можна вказати реплікацію додаткових даних. Наприклад, файлу з’єднань або архівів повідомлень, які пройшли через поштовий сервер. Дані налаштування доступні з меню “Свойства объекта/Компьютер/Репликация настроек/Добавить” програми “Адміністратор поштового сервера FossMail”. Реплікація проводиться в разі зміни реплікуємих файлів.

Резервирование_2

Налаштування резервного поштового вузла

Для розгортання резервного поштового вузла необхідно встановити теж саме програмне забезпечення, що і на головному вузлі. Подальші оновлення необхідно виконувати синхронно з головним вузлом.

Увага:

Для запобігання одночасної роботи головних та резервних серверів на резервному сервері FossMail32 необхідно вимкнути запуск задач під час старту служби серверу за допомогою параметру #AUTO_START=0 в файлі конфігурації host.cfg секція [COMMON] та запустити службу. Службу серверу FD22-FossDocMail необхідно перевести в стан “Відключено”.

Сервіс FossMail резервного поштового вузла повинен працювати в ( Режимі 0) “Не проводити реплікацію”. Якщо вузол не запущений, то цей параметр можна редагувати у файлі host.cfg (#REPLICATION_MODE=0).

Налаштування резервного поштового вузла

Реплікація баз данних

Система використовує кілька баз даних для зберігання інформації. Налаштування реплікації баз даних проводиться засобами реплікації СУБД. При відновленні працездатності головного поштового вузла слід передбачити зворотню синхронізацію баз даних з резервного вузла.

Робоча база конвертів

У цій базі зберігається інформація про конверти повідомлень, які пройшли через поштовий вузол FossMail. Дана база постійно поповнюється у процесі роботи поштового серверу. Тобто під час проходження через поштовий сервер повідомлення або звіту на це повідомлення у базу виконується запис. Ім’я цієї бази обирається в момент налаштування підключення до бази даних конвертів повідомлень FossMail програми Mserver.

Резервирование_2

Архівні бази конвертів (cервер FossMail)

Залежно від налаштувань програми Mserver створюються архіви робочої бази конвертів. При необхідності їх теж можна реплікувати. Але, слід враховувати, що в архівну базу може бути записаний звіт про проходження повідомлення, якщо це повідомлення вже потрапило в архів. Імена архівних баз створюються за правилами, описаним в статтів  “Налаштування підключення до СУБД”.

Сховище повідомлень (cервер FossDocMail)

Поштові повідомлення всіх інтерактивних клієнтів зберігаються в БД “Сховище повідомлень”. Ім’я цієї бази задається на етапі налаштування підключення до бази сховища повідомлень FossDocMail.

Резервирование_2

Перехід до резервного режиму роботи

Передбачається, що головний поштовий вузол вийшов з ладу. Для відновлення працездатності системи необхідно запустити резервний поштовий вузол. Для цього необхідно:

  1. Організувати доступ клієнтам з основного поштового вузла на резервний шляхом перепризначення ip-адреси з головного сервера на резервний або зміною DNS запису, або будь-яким іншим доступним способом.
  2. На резервному сервері зупинити службу поштового серверу FossMail32 mail server, замінити файл конфігурації Host.cfg на попередньо підготовлений для роботи в режимі без реплікації (0 режим) та запустити. Службу FD22-FossDocMail необхідно перевести в стан “Автозапуск” та теж запустити.

Оскільки всі файли, налаштування, СУБД були синхронізовані з головним вузлом раніше, система відразу ж готова до роботи.

Повернення з резервного режиму роботи в основний

Після відновлення і запуску головного поштового вузла необхідно синхронізувати папки, налаштування, файли, СУБД з резервним вузлом.

Для цього:

Послідовність дій На працюючому резервному вузлі На відновленому головному вузлі
0 Початковий стан: працює в режимі 0 без реплікації Початковий стан: відновлений, вимкнений.
1   Відключити його від обчислювальної мережі для унеможливлення запуску служби поштового сервера та сервера документообігу у старому режимі головного сервера
2   Запустити компьютер, зупинити поштову службу та поміняти файл конфігураціі Host.cfg на попередньо підготовлений для роботи сервера в режимі резервного.
3   Підключити мережу та запустити відновленний сервер
4 Переконатися, що залишився доступ до всіх віддалених папок для реплікацій на відновленному сервері Переконатися, що залишився доступ до всіх віддалених папок для реплікацій на працюючому резервному сервері.
5 Перевести в режим головного з реплікацією на відновлений. Виконується одночаснао функціунування з синхронізацією на відновлений сервер (зупинити, замінити Host.cfg, запустити службу поштового сервера).
6 Зачекати зо закінчення синхронізації (до 10 хв) Зачекати зо закінчення синхронізації (до 10 хв)
7 Перевести перевести в режим резервного.
8   Перевести в режим головного
9   Відновити доступ клієнтів до головного сервера.

 

У варіанті, коли працюючий сервер стає головним, а відновлений залишається працювати в режимі резервного, необхідно перед стартом відновленного перевести його у режим резервного з реплікацією та запустити. При цьому колишній резервний так і залишити в режимі головного з реплікацією. В результаті колишній головний та колишній резервний дзеркально поміняються місцями. Перевага такого рішення – не треба знов міняти доступ клієнтів до поточного головного серверу.

Реплікація серверу FossDoc

Оскільки всі данні (схеми, типи документів, документи та інше) зберігаються у базі данних, строка підключення до якої знаходиться у файлі конфігурації “C:\Program Files (x86)\FOSS\FossDoc Application server\Instances\FossDocMail\App.config”, реплікації данних, як такової, не відбувається. У кожний момент часу повинна бути запущена служба “FD22 – FossDocMail” на головному або резервному сервері. На іншому, непрацюючому сервері, служба повинна бути зупинена та переведена у стан “Відключено”.

Реплікація СУБД

Питання, пов’язані з побудовою надійного сховища на базі MSSQL, залежать від вимог до системи та у данній статті не розглядаются.