Приложение D. Устаревшие функции | Enterprise

Версия:

latest
Документация на русском языке
поддерживается сообществом
Appendixes Приложение D. Устаревшие функции

Приложение D. Устаревшие функции

Прекращена поддержка ZooKeeper и orchestrator. Тем не менее, при необходимости их можно использовать.

В следующих разделах описаны соответствующие функциональные возможности.

Управление кластером по API

Для управления кластером используйте оркестратор orchestrator, включенный в комплект поставки. orchestrator использует ZooKeeper для хранения и передачи конфигурации. Для управления кластером в orchestrator есть REST API. Изменение конфигураций в ZooKeeper осуществляется в результате вызова API-функций из orchestrator, что, в свою очередь, приводит к изменениям конфигурации узлов Tarantool.

Мы рекомендуем использовать интерфейс командной строки curl для вызова API-функций из orchestrator.

В следующем примере показано, как зарегистрировать новую зону доступности (DC):

$ curl -X POST http://HOST:PORT/api/v1/zone \
    -d '{
  "name": "Caucasian Boulevard"
  }'

Чтобы проверить, была ли выполнена регистрация DC, попробуйте использовать следующую команду. Результатом будет список всех зарегистрированных узлов в формате JSON:

$ curl http://HOST:PORT/api/v1/zone| python -m json.tool

Чтобы применить новую конфигурацию непосредственно к узлам Tarantool, увеличьте номер версии конфигурации после вызова API-функции. Для этого используйте запрос POST к /api/v1/version:

$ curl -X POST http://HOST:PORT/api/v1/version

В целом, чтобы обновить конфигурацию кластера:

  1. Call the POST/PUT method of the orchestrator. As a result, the ZooKeeper nodes are updated, and a subsequent update of the Tarantool nodes is initiated.
  2. Update the configuration version using the POST request to /api/v1/version. As a result, the configuration is applied to the Tarantool nodes.

Для получения дополнительной информации об API оркестратора см. Приложение E.

Настройка геодублирования

По логике узлы кластера могут относиться к некоторой зоне доступности. Физически же зона доступности – это отдельный DC или стойка внутри DC. Можно задать матрицу весов (расстояний) для зон доступности.

Новые зоны добавляются путем вызова соответствующего метода API оркестратора.

По умолчанию матрица весов (расстояний) для зон не настроена, а геодублирование для таких конфигураций работает следующим образом:

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

Когда вы задаете матрицу весов (расстояний), вызывая /api/v1/zones/weights, система автоматического масштабирования СУБД Tarantool находит реплику, которая ближе всех к указанному роутеру по весам, и начинает использовать эту реплику для чтения. Если эта реплика недоступна, то выбирается следующая ближайшая реплика с учетом расстояний, указанных в конфигурации.