Гид по технологиям

Установка и настройка RethinkDB на Ubuntu 18.04

• 5 min read • Базы данных • Обновлено 24 Nov 2025
RethinkDB на Ubuntu 18.04 — установка и настройка
RethinkDB на Ubuntu 18.04 — установка и настройка

К чему стремиться

  • Быстро развернуть RethinkDB на Ubuntu 18.04 и запустить панель администратора.
  • Настроить одну инстанцию, подключить Python-драйвер и выполнить базовые операции: создать БД, таблицу и вставить данные.

Кому это подходит

Кратко: системным администраторам и разработчикам, которым нужна база данных с поддержкой realtime-операций и простой кластеризацией.

Требования

  • Сервер Ubuntu 18.04 (в примере использована версия 18.04.3). Рекомендуемый минимум: 2 ГБ ОЗУ и 2 vCPU.
  • Доступ root или sudo.

Что мы сделаем

  • Установим RethinkDB
  • Настроим RethinkDB
  • Установим клиентский драйвер Python
  • Откроем панель управления RethinkDB

Шаг 1 — Добавление репозитория RethinkDB

Сначала добавим репозиторий RethinkDB и GPG-ключ в систему Ubuntu.

Загрузите переменные окружения из файла /etc/lsb-release:

source /etc/lsb-release

Добавьте репозиторий и ключ:

echo "deb https://download.rethinkdb.com/apt $DISTRIB_CODENAME main" | sudo tee /etc/apt/sources.list.d/rethinkdb.list  
wget -qO- https://download.rethinkdb.com/apt/pubkey.gpg | sudo apt-key add -

Логотип RethinkDB и пример добавления репозитория на экране терминала

Обновите индекс пакетов:

sudo apt update

Дождитесь окончания обновления списков пакетов.

Шаг 2 — Установка и базовая конфигурация RethinkDB

Установите пакет rethinkdb:

sudo apt install rethinkdb

После установки перейдите в каталог конфигурации и скопируйте пример конфигурации в отдельный инстанс:

cd /etc/rethinkdb/  
cp default.conf.sample instances.d/instance1.conf

Откройте файл конфигурации для редактирования (в примере используется vim):

vim instances.d/instance1.conf

Найдите параметр bind и раскомментируйте его, указав локальный IP сервера:

bind=10.5.5.15

Ниже найдите параметр server-name, раскомментируйте и задайте имя инстанса:

server-name=instance1

Сохраните изменения и закройте редактор.

Перезапустите сервис и включите автозапуск при загрузке:

systemctl restart rethinkdb  
systemctl enable rethinkdb

Вывод systemctl при запуске RethinkDB, пример состояния сервиса

Проверьте статус службы:

systemctl status rethinkdb

Статус сервиса RethinkDB в systemd

В результате RethinkDB запущен на сервере Ubuntu 18.04.

По умолчанию RethinkDB использует три порта:

  • 28015 — клиентский порт (driver)
  • 8080 — HTTP-панель администратора (Dashboard)
  • 29015 — порт кластера

Шаг 3 — Установка клиентского драйвера RethinkDB для Python

RethinkDB имеет несколько клиентских драйверов (Python, JavaScript, Ruby и т.д.). Здесь показана базовая работа с Python 3.

Установите python3 и pip3, если они не установлены:

sudo apt install python3 python3-pip

Установите драйвер RethinkDB для Python:

pip3 install rethinkdb

Установка Python-драйвера rethinkdb через pip3

Запустите интерактивную оболочку Python:

python3

Импортируйте модуль:

from rethinkdb import r

Подключение к RethinkDB

Подключитесь к локальному серверу на порту 28015:

conn = r.connect(host='localhost', port=28015)

Создание базы данных

Создаём базу данных dbtest:

r.db_create('dbtest').run(conn)

Просмотр списка баз

r.db_list().run(conn)

Результат r.db_list() в Python-консоли

Создание таблицы

Создаём таблицу users в базе dbtest:

r.db('dbtest').table_create('users').run(conn)

Вставка данных

Вставляем пример записи в таблицу users:

r.db('dbtest').table("users").insert({  
"id": 1,  
"name": "Hakase-Labs",  
"site": "hakase-labs.local"  
}).run(conn)

Просмотр данных

r.db('dbtest').table('users').run(conn)

Просмотр вставленных данных в таблице users

В результате вы подключились к RethinkDB, создали базу и таблицу и вставили данные с помощью Python-драйвера.

Шаг 4 — Доступ к панели RethinkDB

По умолчанию панель администратора доступна на порту 8080. В браузере введите адрес сервера с портом, например:

http://10.5.5.15:8080/

Вы увидите веб-интерфейс панели администратора.

Главная страница панели администрирования RethinkDB

Перейдите в меню Tables, чтобы просмотреть базы данных и таблицы:

Список таблиц в панели RethinkDB

Кликните по имени таблицы, чтобы увидеть записи:

Просмотр записей таблицы через панель RethinkDB

В итоге установка и начальная настройка RethinkDB на Ubuntu 18.04 выполнены успешно.


Проверка работоспособности и приёмка

Критерии приёмки:

  • Служба rethinkdb запущена и активна (systemctl status показывает active).
  • Порты 28015, 8080 и 29015 слушаются на хосте.
  • Веб-панель доступна по http://:8080/.
  • Python-скрипт корректно подключается и выполняет r.db_create, table_create и insert.

Проверочные команды:

systemctl status rethinkdb
ss -tuln | grep -E '28015|8080|29015'
curl -s http://127.0.0.1:8080/ | head

Частые ошибки и способы устранения

  • Проблема: панель недоступна извне.
    • Проверьте bind в конфиге: он должен содержать IP, который слушает интерфейс, или 0.0.0.0 для всех интерфейсов.
    • Проверьте правила брандмауэра (ufw, iptables).
  • Проблема: клиент не подключается на 28015.
    • Убедитесь, что нет SELinux/профилей безопасности, блокирующих соединения.
    • Проверьте, что в конфиге cluster-port и client-port не переопределены в конфликтные значения.
  • Проблема: служба не стартует.
    • Посмотрите журналы: journalctl -u rethinkdb –no-pager.

Меры безопасности и рекомендации

  • Не оставляйте веб-панель доступной в публичном интернете без аутентификации и прокси. Используйте обратный прокси (NGINX) с HTTPS и базовой аутентификацией или VPN.
  • Настройте брандмауэр: разрешите доступ на 8080 и 28015 только с доверенных адресов.
  • Регулярно делайте бэкапы данных. RethinkDB поддерживает экспорт/импорт данных через инструменты и драйверы.
  • Для production используйте кластер из нескольких инстансов для высокой доступности и репликации.

Альтернативы и когда RethinkDB не подходит

  • Если вам нужна тесная интеграция с SQL и транзакциями уровня ACID — рассмотрите PostgreSQL.
  • Для простых ключ-значение сценариев может быть лучше Redis.
  • RethinkDB хорош для реального времени, но если проект требует активной коммерческой поддержки и зрелой экосистемы, оцените современные managed-решения (например, облачные NoSQL‑сервисы).

Краткая методология развёртывания (чеклист для команды)

Для администратора:

  • Проверить совместимость ОС и обновить пакеты.
  • Добавить репозиторий и ключ.
  • Установить пакет и создать конфиг-инстанс.
  • Настроить bind и server-name.
  • Настроить брандмауэр и прокси для панели.
  • Включить системные бэкапы.

Для разработчика:

  • Установить клиентский драйвер в окружение.
  • Написать тестовый скрипт подключения и CRUD-операций.
  • Добавить мониторинг (SLA/SLI) и алерты на падение инстанса.

Контрольные примеры и тесты приёмки

  • Тест 1: подключение из Python — ожидается отсутствие исключений при r.connect.
  • Тест 2: создание и удаление БД — r.db_create и r.db_drop должны выполняться.
  • Тест 3: консистентность данных между репликами в кластере (если есть) — запись должна появиться на всех репликах.

Короткий глоссарий

  • Инстанс — запущенный экземпляр RethinkDB с собственной конфигурацией.
  • bind — IP-адрес или интерфейс, на котором RethinkDB слушает запросы.
  • Dashboard — веб-интерфейс для администрирования RethinkDB.

Итог

Вы успешно установили RethinkDB на Ubuntu 18.04, настроили базовый конфиг, подключились через Python-драйвер и проверили работу панели администратора. Следующие шаги: настроить бэкапы, настроить безопасность для продакшена и рассмотреть кластеризацию для высокой доступности.

Важно: перед открытием панели в публичный доступ настройте обратный прокси с TLS и ограничения по IP.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро