...
Введение
Отказоустойчивая система ЕССМ ECCM реализуется по схеме резервирования Active-Active с использованием VIP (Virtual IP) адреса, что позволяет использовать единый адрес для доступа к каждому узлу системы и хранить на них актуальные данные. Для настройки отказоустойчивой схемы требуется выделить не менее трех серверов. В схеме резервирования также предусмотрено разделение ЕССМ ECCM на сервер с БД и сервер с ЕССМECCM, использующим эту базу — для таких случаев требуется выделить 5 серверов.
...
| Раскрыть | ||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||
Схема отказоустойчивой системы при запуске БД на отдельных серверах
Схема отказоустойчивой системы с запуском базы данных на отдельных серверах представляет собой совокупность двух кластеров:
Кластер баз данных включает три сервера:
В кластере приложений ЕССМ ECCM запускается с использованием внешних баз данных. Для доступа к веб-интерфейсу используйте VIP, который находится на текущем мастере Keepalived.
|
Подготовка серверов
Перед запуском ЕССМ ECCM в отказоустойчивой системе по любой из ранее представленных схем подготовьте конфигурационные и вспомогательные файлы.
Настройка файла .env.cluster
Перед запуском ЕССМ ECCM в отказоустойчивой системе подготовьте конфигурационный файл .env.cluster, который находится в корневой директории проекта.
| Подсказка |
|---|
Назначение переменных в конфигурационном файле .env.cluster описано в разделе "Инструкция по установке и запуску". |
Подготовка конфигурационного файла для запуска
...
ECCM в стандартной схеме отказоустойчивой системы
Откройте файл .env.cluster на Master-ноде при помощи любого текстового редактора и для минимальной настройки назначьте следующие переменные:
...
| Раскрыть | ||
|---|---|---|
| ||
Подготовка конфигурационного файла для запускаЕССМECCM при запуске БД на отдельных серверахОткройте файл
|
...
ca.crt— корневой CA-сертификат;cluster.crt— сертификат кластера, подписанный CA;cluster.key— приватный ключ кластера.
При запуске ЕССМ ECCM будет также сгенерирован Java Truststore: Java-сервисы ЕССМ ECCM не читают ca.crt напрямую — они используют Java KeyStore в формате PKCS12. Сервис truststore-initer автоматически конвертирует ca.crt из cluster-cert/ в truststore.p12 и сохраняет его.
...
Для доступа к веб-интерфейсу установите утилиту Keepalived на каждой ноде с сервисами ЕССМECCM. Пример установки утилиты:
...
keepalived.conf— конфигурационный файл Keepalived, настраивающий VRRP для отказоустойчивой системы;check_app.sh— скрипт, проверяющий состояние сервисов ЕССМECCM. При сбое работы сервиса снижает приоритет сервера для последующей смены мастерства.
...
При помощи любого текстового редактора откройте конфигурационный файл /etc/keepalived/keepalived.conf. На сервере, где будет находиться приложение ЕССМ ECCM с ролью мастер, измените следующие параметры:
INTERFACE_NAME— сетевой интерфейс, на котором будет находиться ЕССМECCM. Выставляется индивидуально для каждого сервера;ROUTER_ID— идентификатор виртуального маршрутизатора, принимающий значения от 0 до 255. Одинаковый на всех серверах;PRIORITY— приоритет текущей ноды, принимающий значения от 0 до 255. Это значение должно быть больше параметраweight(в стандартной конфигурацииweight= -10), в ином случае мастерство переключаться не будет;PASSWORD— пароль VRRP-аутентификации. Одинаковый на всех серверах;VIP_IP_ADDRESS— виртуальный IP-адрес, через который будет предоставляться доступ к веб-интерфейсу. Одинаковый на всех серверах.
Далее перейдите на сервер, где будет находиться приложение ЕССМ ECCM с ролью Slave, и измените ранее описанные параметры.
...
В журнале должны отобразиться записи: Entering BACKUP STATE и Entering MASTER STATE.
Запуск
...
ECCM в отказоустойчивой системе при стандартной схеме
Для запуска ЕССМ ECCM в отказоустойчивой системе при стандартной схеме перейдите на сервер будущего Master-узла. Запустите мастер с помощью bash-скрипта, указав необходимые параметры. Пример запуска:
...
После инициализации перейдите по ранее установленному VIP-адресу (имеет формат http://<VIP>/). Веб-интерфейс ЕССМ ECCM будет доступен.
| Раскрыть | ||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||
ЗапускЕССМECCM в отказоустойчивой системе при запуске БД на отдельных серверахДля запуска ЕССМ ECCM в отказоустойчивой системе при запуске БД на отдельном сервере перейдите на сервер будущей Master-базы данных. Запустите Master-базу данных при помощи следующей команды:
Во время запуска Master-базы данных подтвердите создание файла Конфигурационный файл
После выполнения команды для каждого сервера назначения файл конфигурации будет соответствовать настроенному ранее. После того как база данных на Master-db будет проинициализирована, перейдите на сервер Slave-db. Запустите Slave-базу данных:
После полной инициализации баз данных Master-db и Slave-db перейдите на сервер Master-ноды приложения ЕССМECCM. Запустите мастер с помощью bash-скрипта, указав необходимые параметры. Пример запуска:
Перейдите на сервер Slave-узла. Запустите Slave с помощью bash-скрипта, указав необходимые параметры. Пример запуска:
После полной инициализации кластера приложений перейдите на сервер Witness-узла. Запустите Witness с помощью bash-скрипта, указав необходимые параметры. Пример запуска:
После инициализации перейдите по ранее установленному VIP-адресу (имеет формат |