Запуск Tarantool DB (RESP) с помощью TT CLI¶
В этом руководстве показано, как развернуть Tarantool DB (RESP) локально, используя утилиту TT CLI (tt).
Содержание:
Пререквизиты¶
Для выполнения примера требуются:
Используемые файлы¶
В руководстве для конфигурации кластера используются следующие файлы из архива для развертывания:
tt.yaml– конфигурация TT CLI. Чтобы сгенерировать этот файл, используется команда tt init;source.yaml– конфигурация и топология кластера Tarantool DB (RESP);config.yaml– конфигурация, указывающая расположение хранилища конфигурации;instances.yml– список узлов кластера Tarantool DB (RESP);.rocks/share/tarantool/failover.lua– пользовательский override-модуль координатора для восстановления после сбоев (tarantool --failover);.rocks/share/tarantool/sentinel.lua– модуль, реализующий интерфейс Sentinel;.rocks/lib/tarantool/libtdbredis_sentinel.so– нативная библиотека, часть реализации интерфейса Sentinel;другие модули из
.rocks.
Запуск стенда¶
Распакуйте архив для развёртывания Tarantool DB (RESP):
tar -xzvf tdbredis-<VERSION>.tar.gz
Здесь:
VERSION– версия продукта.
Пример: tdbredis-2.0.0.tar.gz.
При распаковке будет создана директория tdbredis. Перейдите в неё.
Замените содержимое файла config.yaml на следующее:
config:
  etcd:
    prefix: /tcs
    http:
      request:
        timeout: 1
    endpoints:
    - http://localhost:2379
Установите, запустите и проверьте работоспособность etcd согласно
инструкции.
Загрузите конфигурацию кластера Tarantool DB (RESP) в etcd:
./tt cluster publish http://localhost:2379/tdbredis source.yaml
Оставаясь в директории tdbredis/, запустите координатор для восстановления после сбоев (failover-координатор).
Находиться в этой директории обязательно, так как загрузка модулей должна обнаружить
модули в {override/internal,.rocks}
./tarantool --failover --config config.yaml &>tarantool-failover.log &
echo $! > tarantool-failover.pid
cd -
Лог координатора хранится в файле tarantool-failover.log.
Лог модуля Sentinel для координатора находится в tarantool-failover-file.log.
Запустите экземпляры Tarantool DB (RESP) с помощью команды tt start:
./tt start
Проверить состояние узлов можно, используя команду tt status:
./tt status
Теперь кластер доступен.
Подключение к узлу кластера¶
Подключиться к узлу хранилища по протоколу RESP можно с помощью команды redis-cli или другого клиента Redis. Эта команда открывает интерактивную консоль RESP:
redis-cli -p 6379
Задать порт для узла можно в опции roles_cfg.tdb_redis_role.port в файле конфигурации tdbredis/source.yaml.
В поставляемом шаблоне конфигурации порты у разных узлов разные, так как все
экземпляры запускаются на одной машине.
Кроме того, по протоколу RESP можно подключиться к интерфейсу Sentinel:
redis-cli -p 26379
В этой консоли доступны команды Sentinel, например:
127.0.0.1:26379> sentinel get-master-addr-by-name replicaset001
1) "127.0.0.1"
2) "6379"
Полный список поддерживаемых команд приведен в документации в разделе Sentinel.
Имя набора реплик указано в source.yaml:
groups.group001.replicasets.replicaset001.