Настройка | Tarantool
Документация на русском языке
поддерживается сообществом
Tarantool Enterprise Edition Настройка

Настройка

This chapter explains how to download and set up Tarantool Enterprise Edition and run a sample application provided with it.

Ниже представлены рекомендуемые системные требования для запуска Tarantool Enterprise.

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

Для целей тестирования или разработки систему можно развернуть, используя меньшее количество серверов. Тем не менее, не рекомендуется использовать такие конфигурации в производственной среде.

  1. Tarantool Enterprise поддерживает операционные системы Red Hat Enterprise Linux и CentOS версии 7.5 и выше.

    Примечание

    Tarantool Enterprise может работать на других дистрибутивах Linux на основе systemd, но тестирование на них не проводится, поэтому корректная работа не гарантирована.

  2. Требуется glibc версии 2.17-260.el7_6.6 и выше. Необходимо проверить текущую версию и обновить в случае необходимости:

    $ rpm -q glibc
    glibc-2.17-196.el7_4.2
    $ yum update glibc
    

Здесь и далее по тексту под серверами хранения данных или серверами Tarantool понимаются компьютеры, которые используются для хранения и обработки данных, а под сервером администрирования понимается компьютер, с помощью которого оператор устанавливает и настраивает систему.

Кластер Tarantool работает по принципам полносвязной топологии (full mesh topology), поэтому все серверы Tarantool должны поддерживать прием и передачу данных по TCP и UDP на всех портах, которые используются экземплярами кластера (см. настройки advertise_uri: <host>:<port> и config: advertise_uri: '<host>:<port>' в файле /etc/tarantool/conf.d/*.yml для каждого экземпляра). Например:

# /etc/tarantool/conf.d/*.yml

myapp.s2-replica:
  advertise_uri: localhost:3305 # this is a TCP/UDP port
  http_port: 8085

all:
  ...
  hosts:
    storage-1:
      config:
        advertise_uri: 'vm1:3301' # this is a TCP/UDP port
        http_port: 8081

Чтобы настроить удаленный мониторинг или подключиться по административной консоли, сервер администрирования должен иметь доступ к следующим TCP-портам на серверах Tarantool:

  • 22 – чтобы использовать SSH-протокол;
  • ports specified in instance configuration (http_port parameter) to monitor the HTTP-metrics.

Кроме того, рекомендуется применить следующие настройки для sysctl на всех серверах Tarantool:

$ # TCP KeepAlive setting
$ sysctl -w net.ipv4.tcp_keepalive_time=60
$ sysctl -w net.ipv4.tcp_keepalive_intvl=5
$ sysctl -w net.ipv4.tcp_keepalive_probes=5

Эта необязательная настройка сетевого стека Linux помогает ускорить решение проблем с сетевым подключением при физическом отказе сервера. Для достижения максимальной производительности может также потребоваться настройка других параметров сетевого стека, которые не относятся к СУБД Tarantool. Для получения дополнительной информации обратитесь к разделу Руководство по оптимизации сетевой производительности (Network Performance Tuning Guide) в пользовательской документации по RHEL7.

The latest release packages of Tarantool Enterprise are available in the customer zone at Tarantool website. Please contact support@tarantool.io for access.

Каждый пакет представляет собой архив tar + gzip и включает в себя следующие компоненты и функции:

  • статический бинарный файл Tarantool, чтобы упростить развертывание в средах Linux,
  • набор модулей с открытым и закрытым исходным кодом,
  • пример приложения, чтобы рассмотреть все включенные модули.

Содержимое архива:

  • tarantool – основной исполняемый файл Tarantool.

  • tt is the utility that provides a unified command-line interface for managing Tarantool-based applications.

  • tarantoolctl – служебный скрипт для установки вспомогательных модулей и подключения к административной консоли.

    Важно

    tarantoolctl is deprecated in favor of the tt CLI utility.

  • cartridge – служебный скрипт, который помогает настроить среду разработки для приложений и упаковать их с целью упростить развертывание.

    Важно

    cartridge utility is deprecated in favor of the tt CLI utility.

  • examples/ – директория, которая содержит примеры приложений:

    • pg_writethrough_cache/ – приложение, которое наглядно показывает, как Tarantool может кэшировать данные, например, записанные в базу данных PostgreSQL;
    • ora_writebehind_cache/ – приложение, которое наглядно показывает, как Tarantool может кэшировать вставки и ставить их в очередь, например, в базу данных Oracle;
    • docker/ – приложение, предназначенное для простой упаковки в Docker-контейнер;
  • rocks/ – директория, которая содержит набор дополнительных модулей с открытым и закрытым исходным кодом, включенных в дистрибутив в качестве автономного репозитория сторонних библиотек. Для получения более подробной информации см. справочник по сторонним библиотекам.

  • templates/ – директория, которая содержит файлы шаблонов для среды разработки приложений.

  • deprecated/ – это набор модулей, которые больше не поддерживаются:

    • vshard-zookeeper-orchestrator – это приложение на Python для запуска orchestrator,
    • файлы zookeeper-scm представляют собой модули для интеграции с ZooKeeper (требуются библиотеки usr/).

Готовый архив tar + gzip необходимо загрузить на сервер и распаковать:

$ tar xvf tarantool-enterprise-sdk-<version>.tar.gz

Дополнительная установка не требуется, поскольку распакованные бинарные файлы практически готовы к работе. Перейдите в каталог с бинарными файлами (tarantool-enterprise) и добавьте их в путь для поиска исполняемых файлов, запустив скрипт из дистрибутива:

$ source ./env.sh

Убедитесь, что вы можете запускать данный скрипт, а также что файл со скриптом является исполняемым. В противном случае задайте разрешения в помощью команд chmod и chown.

Затем настройте среду разработки, как описано в руководстве для разработчика.

Нашли ответ на свой вопрос?
Обратная связь