Настройка
This chapter explains how to download and set up Tarantool Enterprise Edition and run a sample application provided with it.
Ниже представлены рекомендуемые системные требования для запуска Tarantool Enterprise.
Чтобы обеспечить полную отказоустойчивость системы распределенного хранения данных, необходимы как минимум три физических компьютера или виртуальных сервера.
Для целей тестирования или разработки систему можно развернуть, используя меньшее количество серверов. Тем не менее, не рекомендуется использовать такие конфигурации в производственной среде.
Tarantool Enterprise поддерживает операционные системы Red Hat Enterprise Linux и CentOS версии 7.5 и выше.
Примечание
Tarantool Enterprise может работать на других дистрибутивах Linux на основе
systemd
, но тестирование на них не проводится, поэтому корректная работа не гарантирована.Требуется
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
.
Затем настройте среду разработки, как описано в руководстве для разработчика.