2.3. Настройка кластера и запуск системы | Tdg
2. Руководство по эксплуатации 2.3. Настройка кластера и запуск системы

2.3. Настройка кластера и запуск системы

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

2.3.1. Создание набора реплик и задание ролей

Операции по настройке кластера можно выполнить через web-интерфейс администратора. Для подключения к web-интерфейсу надо зайти в браузере на любой сервер по доступному на нем http-порту http://<address>:<http_port> (указаны в файле конфигурации кластера). В рассматриваемом примере это может быть http://172.19.0.2:8080 (соответствует экземпляру с именем «core_1»).

На вкладке Cluster мы имеем набор несконфигурированных экземпляров (инстансов, instances), на что указывает их текущий статус «Unconfigured».

../../_images/clusterconf01.png

В некоторых подсетях может не работать автоматический поиск доступных серверов (autodiscovery). Тогда экземпляры этих серверов могут отсутствовать в таблице Unconfigured servers. Для ручной проверки доступности и добавления новых экземпляров в кластер можно использовать функцию Probe server (кнопка над таблицей с экземплярами), которая проверяет, доступен ли экземпляр по указанному адресу. Если экземпляр доступен, он появится в таблице.

../../_images/probeserver.png

Далее необходимо сконфигурировать топологию кластера, создав так называемые наборы реплик (replica sets, репликасеты) и задав их роли.

Выберите в таблице несконфигурированный экземпляр и нажмите кнопку Configure в правой части строки этого экземпляра. Откроется диалог настройки репликасета Configure server.

В диалоге необходимо выбрать нужные для данного репликасета роли (параметр Roles). Этот параметр обязательный, поэтому должна быть выбрана как минимум одна роль. Если репликасет выполняет в кластере более одной роли, то нужно отметить все необходимые роли. Подробнее о ролях репликасетов и рекомендациях по их назначению см. раздел «Роли».

../../_images/clusterconf02-2.png

Остальные параметры репликасета являются опциональными. Тем не менее рекомендуется задать имя репликасета (Replica set name), чтобы в дальнейшем было легче им управлять. У параметров Replica set weight и Vhsard group можно оставить значения, заданные по умолчанию. После определения нужных параметров нажмите кнопку Create replica set.

Cозданный репликасет с включенным в него экземпляром отображается в таблице Replica sets. Оставшиеся несконфигурированные экземпляры по-прежнему отображаются в таблице Unconfigured servers.

../../_images/clusterconf03.png

Продолжим настройку кластера — в нашем примере создадим 4 дополнительных репликасета, каждый из которых содержит по одному экземпляру:

../../_images/clusterconf04.png

На примере репликасетов с ролью storage (их в текущей топологии кластера — два) рассмотрим также операцию по добавлению дополнительных экземпляров в существующий репликасет.

У одного из оставшихся несконфигурированных экземпляров — с именем «storage_1_replica» — нажмите Configure и в диалоге настройки репликасета перейдите на вкладку Join Replica Set. В списке Choose replica set выберите репликасет с именем «storage_1» и нажмите Join replica set.

../../_images/clusterconf05.png

Экземпляр «storage_1_replica» будет включен в состав репликасета «STORAGE_1».

../../_images/clusterconf06.png

Выполните аналогичную операцию для последнего несконфигурированного экземпляра «storage_2_replica», включив его в репликасет «STORAGE_2».

На этом настройка топологии кластера завершена.

2.3.2. Запуск кластера

После настройки топологии кластера необходимо запустить в рабочее состояние репликасеты с ролью storage, выполнив инициализацию модуля Tarantool vshard. Для этого на вкладке Cluster нажмите кнопку Bootstrap vshard:

../../_images/vshard_bootstrap.png

Будут созданы виртуальные сегменты для хранения данных (virtual buckets) и распределены по хранилищам с учетом количества экземпляров с ролью storage.

../../_images/vshard_bootstrap02.png

2.3.3. Загрузка конфигурации системы

Последний этап запуска системы в работу — загрузка и применение ее конфигурации.

В web-интерфейсе перейдите на вкладку Configuration files. В секции Upload configuration загрузите архив в формате .zip, который должен содержать основной файл конфигурации системы config.yml и другие необходимые файлы (описание модели данных, Lua-код функций и др.). Если загрузка и применение конфигурации прошли успешно, система выдаст уведомление об этом.

../../_images/config_upload.png

После этого система готова к работе.

В дальнейшем актуальную конфигурацию всегда можно скачать на этой же вкладке, нажав на кнопку Current configuration в верхнем правом углу.

2.3.4. Автоматическая синхронизация настроек в кластере

Для нормального функционирования кластера все экземпляры должны иметь одинаковые настройки. С этой целью каждый экземпляр в своей рабочей директории /var/lib/tarantool/<instance_name> хранит копию конфигурации — в поддиректории /config в виде набора yml-файлов. Также в рабочей директории хранятся резервная копия конфигурации (в поддиректории /config.backup) и токен кластера .tarantool.cookie. Кластер синхронизирует эти файлы настроек у всех экземпляров.

После первоначальной загрузки файла конфигурации config.yml конфигурация автоматически обогащается информацией о топологии кластера с указанием всех серверов, репликасетов, экземпляров и их ролей. Также добавляется информация о созданных спейсах для хранения объектов согласно модели данных. Именно в таком виде конфигурация хранится в рабочей директории каждого экземпляра и синхронизируется между ними.

При дальнейшей настройке системы — добавлении пользователей и токенов приложений, настройке прав доступа и др. — информация об этом добавляется в соответствующие файлы конфигурации и синхронизируется в кластере. Аналогичная синхронизация выполняется при любых изменениях текущих настроек.

Found what you were looking for?
Feedback