Дерево страниц

Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

Оглавление
stylesquare

Общие сведения

Резервирование контроллеров SoftWLC выполняется по схеме master-slave. Синхронизируются критичные для работы системы файлы (настройки, файлы прошивок, выгрузки данных), баз данных MySQL (в режиме master-master), баз данных MongoDB, а также работа DHCP серверов. Такая схема обеспечивает доступность услуги и актуальные данные на обоих контроллерах при выходе одного из строя, недоступности сети, проблем с электропитанием.

...

  • установка и настройка keepalived
  • настройка rsync
  • настройка репликации MySQL
  • настройка replicaSet MongoDB
  • настройка работы Eltex-PCRF в режиме кластера
  • изменение конфигурации модулей системы для работы с виртуальным IP

Установка и настройка keepalived

в отдельной доке

Основной компонент резервирования контроллеров. Определяет за переход мастерства и обнаружение проблем в работе сети. Для установки keepalived необходимо обратиться в Сервисный центр Wi-Fi за актуальным дистрибутивом.

Настройка rsync

Rsync в схеме резервирования отвечает за синхронизацию служебных служебных файлов сервисов Eltex-EMS и Eltex-APB, а также файлов прошивок, шаблонов конфигурации, выгрузок конфигураций точек. Rsync представляет собой клиент серверное ПО. В данной схеме master-сервер выступает в роли клиента и синхронизирует каталоги slave-сервера с локальными.

Способ запуска/остановки

Для активации сервера rsync необходимо в файле /etc/default/rsync установить значение:
RSYNC_ENABLE=true

...

в случае если сервис не запущен.

Конфигурация сервера rsync

Основной конфигурационный файл сервера rsync расположен в /etc/rsyncd.conf Листинг файла приведен ниже.

...

Блок кода
languagetext
root@swlc01-server:/# chmod 600 /etc/rsyncd.secrets


Настройка запуска синхронизации

Создайте файлы /etc/rsync_client.secrets, в которых укажите пароль:

...

Информация
Сервис cron должен быть запущен на обоих серверах


Настройка репликации MySQL

Резервирование данных, хранящихся СУБД MySQL, осуществляется путём встречной репликации по принципу master-master (ведущий-ведущий). То есть, каждый из серверов одновременно является и master и slave. При такой схеме работы все изменения в БД на одном сервере записываются в специальный бинарный лог, который в реальном времени вычитывает второй сервер и применяет изменения. Второй сервер реплицирует данные с первого, а первый со второго. (http://dev.mysql.com/doc/refman/5.5/en/replication.html). Это позволяет получить актуальную копию БД на двух хостах одновременно. При разрыве связи изменения накапливаются, после восстановления происходит синхронизация.


Перенос дампа данных и перенос на второй сервер

При настройке резервирования в процессе эксплуатации (то есть если в MySQL на действующем сервере уже имеются данные) необходимо перенести эти данные на второй сервер. Это можно сделать при помощи утилиты mysqldump.

...

Блок кода
themeRDark
root@swlc01-server:/# mysql -uroot -proot < /home/<username>/mysqldump_master.sql

Конфигурация MySQL

Конфигурация самого демона mysqld заключается в настройке параметров ведения бинарных логов. Обозначения первый сервер и второй сервер далее условны, и применяются лишь для обозначения различий в конфигурации сереров.

...

Блок кода
themeRDark
root@swlc01-server:/# service mysql restart


Создание учетных записей

Для работы репликации необходима служебная учетная запись на каждом из серверов. Под этой учетной записью сервер будет подключаться к master серверу и получать изменения в данных.

...

Блок кода
languagesql
themeRDark
GRANT REPLICATION SLAVE ON *.* TO 'replication'@'<ip_server1>' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;

Включение репликации

Запуск репликации на втором сервере

На первом сервере в консоли MySQL выполнить команду show master status и проанализировать полученные значения:

...

Если параметры Slave_IO_Running и Slave_SQL_Running имеют значение «Yes», репликация успешно запустилась.

Запуск репликации на первом сервере

На втором сервере выполнить:

...

Если параметры Slave_IO_Running и Slave_SQL_Running имеют значение «Yes», значения Master_Log_File и Read_Master_Log_Pos репликация выполняется в обе стороны.

Проверка репликации из EMS-GUI

Состояние репликации MySQL можно контролировать из GUI EMS. Для этого необходимо отредактировать конфигурационный файл /etc/eltex-ems/check-ems-replication.conf. Изменения необходимо внести на обоих серверах.

...

Здесь представлены результаты проверки состояния репликации на обоих серверах и краткое резюме по результатам проверки.

Настройка MongoDB

В MongoDB репликация осуществляется объединением нескольких (в типовой конфигурации - 3) узлов в Replica Set. Replica Set состоит из одного primary узла и нескольких secondary (подробнее https://docs.mongodb.com/v2.4/administration/replica-sets/).
Все операции по изменению данных выполняются только на primary. При этом MongoDB автоматически выполняет failover и смену primary на живой узел, если текущий primary выйдет из строя. Но это требует 3+ узлов в replica set.

Предупреждение
При конфигурации по умолчанию Replica Set из двух узлов полностью выходит из строя при отказе одного из них (даже secondary).

Настройка replicaSet

В /etc/mongodb.conf на обоих узлах:

...

Проверить состояние Replica Set можно выполнив в консоли MongoDB команду rs.status()

Работа Eltex-PCRF в режиме кластера

Настройка кластера PCRF

Между серверами PCRF нужно открыть порты 5701 tcp, 5801 tcp 

...

Блок кода
themeRDark
{
  "data" : {
    "enabled" : true,
    "state" : "ACTIVE",
    "members" : [ {
      "address" : "ip_server1",
      "local" : true,
      "active" : true
    }, {
      "address" : "ip_server2",
      "local" : false,
      "active" : true
    } ],
    "messagesStats" : {
      "received" : 45157,
      "sent" : 45144
    },
    "mongo" : {
      "available" : false,
      "error" : "not running with --replSet"
    }
  },
  "key" : "PcrfErrorCode.success",
  "message" : "Success",
  "code" : 0,
  "args" : [ ]
}

Настройка модулей SoftWLC

Необходимо настроить модули SoftWLC на работу с контроллером по virtual ip на обоих серверах. Изменения необходимо внести в приведенные ниже конфигурационные файлы. В целях

...

  • Изменить localhost на <virtualip>в строках 5, 9

Смена настроек в GUI

Также нужно настроить модули SoftWLC при помощи графического интерфейса.

Личный кабинет

В разделе Настройки → Интеграция в параметрах PCRF URL и URL NGW-клиента изменить localhost на виртуальный ip-адрес:

Конструктор порталов

Изменить localhost на виртуальный ip-адрес в разделах настроек:

...

Системные настройки → Доступ к PCRF

EMS-GUI

В графическом интерфейсе сервера EMS изменить localhost на виртуальный ip-адрес в следующих разделах:

...