Инструменты управления¶
Изменение конфигурации Grid¶
Существует два варианта изменения конфигурации – через интерфейс ADCM и через интерфейс кластера Cartridge.
1. Изменение конфигурации через интерфейс ADCM.
- Во вкладке “Clusters” интерфейса ADCM выбрать кластер ADG (Grid).
- В открывшемся окне в меню слева выбрать пункт “Services”.
- В списке сервисов выбрать “Grid”.
- В меню слева выбрать пункт “Configuration”.
Топология и все настройки кластера содержатся в виде json в поле cluster_topology (Рис.23).
Для удобства редактирования файла топологии его целесообразно скопировать в текстовый редактор.
- Сохранить изменения в поле 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”.
- Изменения, сделанные в интерфейсе 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 хоста, что может вызвать разрушение кластера. Эта опция применима только для вновь вводимого в кластер хоста
- Нажать кнопку “Run” для запуска процесса добавления нового инстанса, результатом которого является отображение его в интерфейсе Cartridge (Рис.26).
2. Добавление хоста в кластер с добавлением репликасета.
- Во вкладке “HOSTS” создать новый хост, например, adg3, и добавить его в кластер Grid (Рис.27).
- Добавить инстанс
storage-2-master-1
на хост adg3 как описано выше в первом пункте. Так как репликасет storage-2 не существует, он создается автоматически (Рис.28).
- Аналогично добавить реплику
storage-2-replica-1
.
Результат добавления нового шарда хранилища изображен на Рис.29.
Переключение мастера (failover)¶
В случае сбоя текущего мастера в репликасете происходит переключение роли мастера на реплику. При восстановлении мастера происходит обратное переключение.
Переключение можно выполнить вручную, например, для удаления инстанса или проведения обслуживания хоста:
- В интерфейсе ADCM в окне кластера Grid нажать кнопку “Failover_instance”.
- В открывшемся диалоговом окне ввести имя инстанса, который необходимо переключить, либо ввести наименование репликасета (Рис.30).
- Результат работы операции можно увидеть в интерфейсе Cartridge – флажок “Leader” переместился на реплику (Рис.31).
Удаление инстанса¶
1. Удаление инстанса в роли “replica”.
- Для исключения инстанса из кластера необходимо воспользоваться кнопкой “Remove_instance”.
- В открывшемся диалоговом окне ввести название инстанса (Рис.32).
Important
Невозможно удалить инстанс в роли “master” и не являющийся при этом инстансом типа “storage”. Для подобного случая сначала необходимо вручную произвести failover, назначив инстанс репликой
2. Удаление репликасета storage.
Для удаления репликасета (шарда) хранилища необходимо:
- Удалить все реплики шарда, как описано выше;
- В интерфейсе кластера Cartridge нажать кнопку “Edit” для удаляемого шарда;
- В открывшемся окне поменять значение поля “Replica set weight” на 0 (Рис.33). После завершения перебалансировки убедиться в отсутствии бакетов в репликасете;
- Удалить мастер репликасета, аналогично удалению реплики.
Important
При наличии бакетов в репликасете удаление мастера невозможно
3. Удаление хоста.
Для удаления хоста следует удалить с него все инстансы, при необходимости предварительно переведя их в состояние replica. После удаления последнего инстанса хост автоматически удаляется из кластера.
Создание снапшота и перезапуск кластера¶
Операция “Take_snapshot” позволяет сбросить изменения из оперативной памяти инстансов storage на диск с объединением журналов изменений.
Операция “Restart” выполняет последовательный перезапуск инстансов кластера.