Top.Mail.Ru
Настройка | Enterprise

Версия:

latest
Tarantool
Узнайте содержание релиза 2.8
Настройка

Настройка

В этой главе объясняется, как загрузить и настроить Tarantool Enterprise, а также запустить пример приложения.

Системные требования

Ниже представлены рекомендуемые системные требования для запуска 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-протокол;
  • к портам, указанным в конфигурации экземпляра (параметр http_port), для мониторинга HTTP-метрик.

Кроме того, рекомендуется применить следующие настройки для 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.

Комплектация

Последние версии пакетов Tarantool Enterprise доступны в разделе для клиентов <https://www.tarantool.io/ru/accounts/customer_zone/packages/enterprise> _ на веб-сайте Tarantool. Для получения доступа обратитесь в support@tarantool.io.

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

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

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

  • tarantool – основной исполняемый файл Tarantool.
  • tarantoolctl – служебный скрипт для установки вспомогательных модулей и подключения к административной консоли.
  • cartridge – служебный скрипт, который помогает настроить среду разработки для приложений и упаковать их с целью упростить развертывание.
  • 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-bundle-<version>.tar.gz

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

$ source ./env.sh

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

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