Инструменты управления

Изменение конфигурации Grid

Существует два варианта изменения конфигурации – через интерфейс ADCM и через интерфейс кластера Cartridge.

1. Изменение конфигурации через интерфейс ADCM.

  • Во вкладке “Clusters” интерфейса ADCM выбрать кластер ADG (Grid).
  • В открывшемся окне в меню слева выбрать пункт “Services”.
  • В списке сервисов выбрать “Grid”.
  • В меню слева выбрать пункт “Configuration”.

Топология и все настройки кластера содержатся в виде json в поле cluster_topology (Рис.23).

../../../../_images/mt1.png

Рис. 23. Окно конфигурации Grid с полем cluster_topology

Для удобства редактирования файла топологии его целесообразно скопировать в текстовый редактор.

  • Сохранить изменения в поле cluster_topology, нажав кнопку “Save”.
  • Для применения изменений на кластере нажать кнопку “Reconfigure”.

Important

Крайне не рекомендуется вносить существенных изменений в топологию (состав и расположение инстансов по хостам, состав репликасетов и т.п.), т.к. в случае таких изменений велик риск нарушения целостности кластера

2. Изменение конфигурации через интерфейс Cartridge.

  • Открыть Web-интерфейс кластера (http://api-1-master-1:8811 либо URL HTTP Proxy, если он установлен).
  • В левой панели выбрать меню “Code” (Рис.24).
  • Выбрать необходимый конфигурационный файл и отредактировать его. Изменения на кластере применяются автоматически, кроме настроек kafka.consumers. Для применения этих изменений необходимо перезапустить сервис Grid.
  • При необходимости перезапустить сервис Grid в интерфейсе ADCM с помощью кнопки “Restart”.
../../../../_images/mt2.png

Рис. 24. Интерфейс конфигурации приложения в Cartridge

  • Изменения, сделанные в интерфейсе Cartridge необходимо загрузить в ADCM с помощью кнопки “Sync_config”.

Добавление инстанса в кластер

1. Добавление инстанса реплики к существующему репликасету.

Инстанс:Экземпляр процесса, выполняющий определенную роль.

Например, инстанс типа storage: storage-2-master-1 – из наименования однозначно определяется:

  • storage – тип инстанса;
  • storage-2 – наименование репликасета, где 2 – индекс репликасета;
  • master – роль в репликасете;
  • 1 – индекс инстанса.

Таким образом репликасет storage-2 может содержать следующие инстансы:

  • storage-2-master-1
  • storage-2-replica-1
  • storage-2-replica-2

В примере уже создан репликасет хранилища (шард) storage-1, состоящий из двух инстансов:

  • storage-1-master-1
  • storage-1-replica-1

Добавление дополнительной реплики storage-1-replica-1 к шарду и расположение ее на хосте adg1:

  • В интерфейсе ADCM выбрать кластер ADG;
  • В списке сервисов выбрать Grid;
  • В интерфейсе сервиса нажать кнопку “Add_instance”;
  • В открывшемся диалоговом окне заполнить поля (Рис.25):
    • instance – тип инстанса, в рассматриваемом примере – storage;
    • replicaset_id – номер репликасета, для storage-1 – 1;
    • replicaset_role – master/replica, в рассматриваемом примере – replica;
    • instance_id – для storage-1-replica-2 – 2;
    • host – хост, на который предполагается установить инстанс – adg1.
    • clean host и check host – следует оставить пустыми, т.к. установка инстанса производится на хост, уже содержащий компоненты Grid.

Important

clean host удаляет все компоненты Grid c хоста, что может вызвать разрушение кластера. Эта опция применима только для вновь вводимого в кластер хоста

../../../../_images/mt3.png

Рис. 25. Диалоговое окно добавления инстанса

  • Нажать кнопку “Run” для запуска процесса добавления нового инстанса, результатом которого является отображение его в интерфейсе Cartridge (Рис.26).
../../../../_images/mt4.png

Рис. 26. Результат добавления инстанса storage-1-replica-2 в интерфейсе Cartridge

2. Добавление хоста в кластер с добавлением репликасета.

  • Во вкладке “HOSTS” создать новый хост, например, adg3, и добавить его в кластер Grid (Рис.27).
../../../../_images/mt5.png

Рис. 27. Список хостов кластера Grid

  • Добавить инстанс storage-2-master-1 на хост adg3 как описано выше в первом пункте. Так как репликасет storage-2 не существует, он создается автоматически (Рис.28).
../../../../_images/mt6.png

Рис. 28. Добавление нового инстанса хранилища

  • Аналогично добавить реплику storage-2-replica-1.

Результат добавления нового шарда хранилища изображен на Рис.29.

../../../../_images/mt7.png

Рис. 29. Созданный репликасет storаge-2

Переключение мастера (failover)

В случае сбоя текущего мастера в репликасете происходит переключение роли мастера на реплику. При восстановлении мастера происходит обратное переключение.

Переключение можно выполнить вручную, например, для удаления инстанса или проведения обслуживания хоста:

  • В интерфейсе ADCM в окне кластера Grid нажать кнопку “Failover_instance”.
  • В открывшемся диалоговом окне ввести имя инстанса, который необходимо переключить, либо ввести наименование репликасета (Рис.30).
  • Результат работы операции можно увидеть в интерфейсе Cartridge – флажок “Leader” переместился на реплику (Рис.31).
../../../../_images/mt8.png

Рис. 30. Диалоговое окно failover

../../../../_images/mt9.png

Рис. 31. Результат переключения мастера

Удаление инстанса

1. Удаление инстанса в роли “replica”.

  • Для исключения инстанса из кластера необходимо воспользоваться кнопкой “Remove_instance”.
  • В открывшемся диалоговом окне ввести название инстанса (Рис.32).
../../../../_images/mt10.png

Рис. 32. Удаление инстанса

Important

Невозможно удалить инстанс в роли “master” и не являющийся при этом инстансом типа “storage”. Для подобного случая сначала необходимо вручную произвести failover, назначив инстанс репликой

2. Удаление репликасета storage.

Для удаления репликасета (шарда) хранилища необходимо:

  • Удалить все реплики шарда, как описано выше;
  • В интерфейсе кластера Cartridge нажать кнопку “Edit” для удаляемого шарда;
  • В открывшемся окне поменять значение поля “Replica set weight” на 0 (Рис.33). После завершения перебалансировки убедиться в отсутствии бакетов в репликасете;
  • Удалить мастер репликасета, аналогично удалению реплики.

Important

При наличии бакетов в репликасете удаление мастера невозможно

../../../../_images/mt11.png

Рис. 33. Окно свойств репликасета

3. Удаление хоста.

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

Создание снапшота и перезапуск кластера

Операция “Take_snapshot” позволяет сбросить изменения из оперативной памяти инстансов storage на диск с объединением журналов изменений.

Операция “Restart” выполняет последовательный перезапуск инстансов кластера.