Репликация контроллера
Общие сведения
Репликация контроллера используется для предотвращения последствий возможных аварийных ситуаций, связанных с Контроллером SpaceVM. Сервер, используемый для репликации, не имеет отличий от обычного сервера с установленным SpaceVM в режиме Node и может использоваться в качестве сервера виртуализации для размещения на нем ВМ. При этом, Web-интерфейс сервера, используемого для репликации, будет недоступен, так как в режиме репликации (slave) он управляется через основной контроллер (master). Все работы, связанные с репликацией, выполняются из CLI на каждом экземпляре контроллера.
Установка SpaceVM с ролью Controller на ВМ
Необходимо установить роль slave для контроллера, установленного на ВМ, а затем, после успешной настройки репликации, при необходимости выполнить переключение ролей. Важно учитывать, что если при первичной связке контроллеров сразу присвоить виртуальному узлу роль master, а физическому – slave, физический контроллер может загрузить пустую базу данных с нового узла.
Возможно полноценное управление инфраструктурой с виртуального Controller в режиме master.
Проверка состояния репликации контроллера выполняется следующей командой в CLI:
controller status
Лицензирование при использовании нескольких контроллеров
Подробная информация о лицензировании при использовании механизма репликации содержится в разделе Лицензирование.
Описание вывода команды controller status
:
-
Current node status
Роль, которую выполняет текущий сервер.
-
Postgresql replication process
Статус репликации БД. Значение
inactive
означает, что репликация не запущена или имеются проблемы с сетевой связанностью - необходимо вмешательство оператора. -
Pg_last_xact_replay date
Параметр показывает, на какую дату была получена последняя транзакция в БД.
Использование репликации в SpaceVM
Внимание
При использовании технологии FreeGRID и использовании репликации после переключения ролей необходимо вручную повторить процедуру активации сервиса на контроллере, ставшим master.
Использование репликации и предотвращение последствий аварийных ситуаций, связанных с Контроллером SpaceVM, включает следующие шаги:
-
Инициализация связанности между основным и резервным контроллерами, на которых установлена SpaceVM в конфигурации Controller + Node или Controller.
-
Назначение соответствующих ролей основному (master) и резервному (slave) контроллеру.
-
В случае возникновения аварийной ситуации, связанной с основным контроллером SpaceVM, перевод реплицирующего контроллера в режим основного контроллера.
-
После устранения аварийной ситуации контролера перевести его в режим реплицирующего.
Внимание
Команды CLI облегчают конфигурирование репликации, однако при аварийной ситуации не переключают нагрузку автоматически.
При необходимости автоматического переключения необходимо ознакомиться с разделом Свидетель контроллеров.
Требования к репликации
-
Для настройки репликации требуется второй контроллер с установленной SpaceVM. Это может быть как физический, так и виртуальный сервер. Подробная информация об установке SpaceVM приведена в разделе Установка.
Внимание
Перед инициализацией репликации не допускается использовать сервер для репликации с установленным SpaceVM в режиме Controller + Node в качестве самостоятельного контроллера с активной базой данных. При назначении роли slave на таком сервере его текущая база данных будет перезаписана копией с контроллера в роли master.
-
Между двумя серверами необходимо обеспечить сетевую связанность по портам 22/tcp и 5433/tcp.
-
Cвободное дисковое пространство на резервном контроллере должно превышать размер копируемых данных на основном контроллере. Подробная информация указана в разделе определения готовности системы к переключению ролей.
-
Виртуальная сеть между контроллерами должна быть настроена без использования L2-связности.