Установка ArangoDB 3 на Ubuntu 18.04
Введение

ArangoDB — это бесплатная и с открытым исходным кодом NoSQL мульти-модельная СУБД. Она поддерживает ключ-значение, документы и графы в одном ядре. ArangoDB спроектирована для производительности и масштабирования. В этой инструкции мы покажем, как установить ArangoDB 3 на Ubuntu 18.04 и выполнить базовую настройку для локального или удалённого доступа.
Кому будет полезно: системным администраторам, девопсам и разработчикам, которым нужен быстрый старт с ArangoDB на Ubuntu 18.04.
Ключевые файлы и порт по умолчанию:
- Конфигурация: /etc/arangodb3/arangod.conf
- Сервис systemd: arangodb3
- Порт веб-интерфейса: 8529
Требования
- Сервер с Ubuntu 18.04.
- Статический IP на сервере (в примере используется 192.168.0.104).
- Пароль root для сервера или пользователь с sudo.
Быстрый план действий (минимальная методология)
- Обновить систему.
- Добавить GPG-ключ и репозиторий ArangoDB.
- Установить arangodb3.
- Запустить и включить сервис systemd.
- Защитить установку (arango-secure-installation).
- Настроить удалённый доступ к веб-интерфейсу (при необходимости).
Обновление системы
Перед установкой обновите пакеты:
apt-get update -y
apt-get upgrade -yПерезагрузите систему, если это необходимо, чтобы применить обновления.
Установка ArangoDB 3
ArangoDB отсутствует в стандартном репозитории Ubuntu 18.04. Добавим официальный репозиторий и установим пакет.
- Добавьте GPG-ключ:
wget -q https://download.arangodb.com/arangodb34/DEBIAN/Release.key -O- | apt-key add -- Создайте файл репозитория:
nano /etc/apt/sources.list.d/arangodb.listДобавьте в файл строку:
deb https://download.arangodb.com/arangodb34/DEBIAN/ /Сохраните и закройте файл.
- Обновите индексы и установите ArangoDB:
apt-get update -y
apt-get install apt-transport-https arangodb3 -yВо время установки установщик задаст вопросы. Укажите пароль для пользователя root ArangoDB и подтвердите его.


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

Выберите движок хранения (в примере используется RocksDB):

Рекомендуется разрешить резервное копирование перед обновлениями:

Запуск и проверка сервиса
После успешной установки запустите и включите сервис на старте:
systemctl start arangodb3
systemctl enable arangodb3Проверка статуса:
systemctl status arangodb3Ожидаемый вывод содержит отметку Active: active (running) и информацию об используемом движке хранения и конечной точке (endpoint).
Пример вывода журнала (сокращённо):
? arangodb3.service - ArangoDB database server
Loaded: loaded (/lib/systemd/system/arangodb3.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2019-05-07 16:00:21 UTC; 2min 57s ago
Main PID: 14070 (arangod)
May 07 16:00:21 ubuntu1804 arangod[14070]: INFO using storage engine rocksdb
May 07 16:00:27 ubuntu1804 arangod[14070]: INFO ArangoDB (version 3.4.5 [linux]) is ready for business. Have fun!Базовая защита установки
ArangoDB поставляется с утилитой arango-secure-installation для выполнения дополнительных шагов безопасности.
Остановите сервис перед запуском утилиты:
systemctl stop arangodb3Запустите утилиту и следуйте подсказкам для изменения пароля и других параметров:
arango-secure-installation
Please enter password for root user:
Repeat password:Утилита обновит конфигурацию и применит необходимые изменения. После успешного выполнения вы увидите сообщение об изменении пароля и завершении инициализации.
Работа в arangosh (клиентская оболочка)
Запустите клиент arangosh:
arangosh
Please specify a password:После ввода пароля вы попадёте в интерактивную оболочку. Пример заголовка и подключения:
arangosh (ArangoDB 3.4.5 [linux] 64bit...)
Connected to ArangoDB 'http+tcp://127.0.0.1:8529' version: 3.4.5, database: '_system', username: 'root'
127.0.0.1:8529@_system>Создаём пример базы данных mydb:
127.0.0.1:8529@_system> db._createDatabase("mydb");Создаём пользователя и задаём пароль:
127.0.0.1:8529@_system> var users = require("@arangodb/users");
127.0.0.1:8529@_system> users.save("myuser@localhost", "password");Результат сохранения будет содержать данные о пользователе и код 201.
Выдаём доступ к базе mydb для пользователя:
127.0.0.1:8529@_system> users.grantDatabase("myuser@localhost", "mydb");Список баз данных:
127.0.0.1:8529@_system> db._databases()
// ["_system", "mydb"]Подключение под новым пользователем к базе mydb из командной строки:
arangosh --server.username "myuser@localhost" --server.database mydb
Please specify a password:После успешного входа вы увидите приглашение 127.0.0.1:8529@mydb>.
Доступ к веб-интерфейсу
По умолчанию ArangoDB слушает только localhost. Чтобы открыть веб-интерфейс для удалённого доступа, отредактируйте конфигурационный файл:
nano /etc/arangodb3/arangod.confНайдите строку с endpoint и замените:
From:
endpoint = tcp://127.0.0.1:8529To (пример):
endpoint = tcp://192.168.0.104:8529Сохраните файл и перезапустите сервис:
systemctl restart arangodb3Откройте в браузере URL http://192.168.0.104:8529 и введите имя пользователя и пароль.


После входа выберите базу данных и нажмите Select DB. Вы попадёте в дашборд:

Критерии приёмки
Успешная установка считается выполненной, если соблюдены все пункты:
- Сервис arangodb3 запущен и содержит статус active (running).
- Веб-интерфейс доступен по адресу http://
:8529. - Можно подключиться из arangosh под root и под созданным пользователем.
- Конфигурационный файл /etc/arangodb3/arangod.conf обновлён при необходимости.
Рекомендации по безопасности
- Всегда задавайте сильный пароль для root и пользователей базы.
- По возможности ограничьте доступ по IP с помощью брандмауэра (ufw или iptables). Пример команды для открытия порта 8529 только для сети 192.168.0.0/24:
ufw allow from 192.168.0.0/24 to any port 8529 proto tcp- Используйте TLS/SSL для защищённого доступа по сети (настраивается через endpoint и reverse-proxy).
- Регулярно делайте резервные копии данных перед обновлениями.
- Проверяйте и обновляйте ArangoDB в пределах поддерживаемых релизов.
Рекомендации для ролей (короткие чек-листы)
Системный администратор:
- Обновить систему и установить пакет.
- Настроить брандмауэр и доступ по IP.
- Настроить автоматические бэкапы.
- Мониторить сервис через systemd / Prometheus (если есть).
Разработчик:
- Создать базу данных и пользователя.
- Настроить права доступа по базе.
- Проверить сценарии подключения и миграции.
Оператор (DevOps):
- Настроить резервирование и репликацию по необходимости.
- Тестировать восстановление из резервной копии.
Отладка и типичные ошибки
- Если сервис не стартует — проверьте /var/log/arangodb3/ и systemctl status для подробностей.
- “Jwt secret not specified” — это предупреждение при первом старте; система генерации ключа обычно создаёт секрет автоматически, но для production можно задать собственный.
- Проблемы с endpoint — убедитесь, что IP указан верно и порт открыт брандмауэром.
Когда не подходит ArangoDB (контрпример)
- Если вам нужна строгая реляционная СУБД с сильной транзакционной семантикой и сложными SQL-джойнами — лучше рассмотреть PostgreSQL.
- Для простых ключ-значение задач с минимальными требованиями к запросам возможно будет достаточно Redis.
Альтернативы и сравнение (кратко)
- PostgreSQL — реляционная, сильные транзакции.
- MongoDB — документная СУБД, часто сопоставима по функционалу, но без встроенной мульти-модели.
- Neo4j — специализированная графовая СУБД.
ArangoDB удобен, когда нужна гибридная модель: документы + графы + ключ-значение в одном продукте.
Короткая шпаргалка команд (cheat sheet)
- Запуск/стоп/статус сервиса:
systemctl start arangodb3
systemctl stop arangodb3
systemctl restart arangodb3
systemctl status arangodb3- Shell:
arangosh
arangosh --server.username "myuser@localhost" --server.database mydb- Создание БД и пользователя в arangosh:
db._createDatabase("mydb");
var users = require("@arangodb/users");
users.save("myuser@localhost", "password");
users.grantDatabase("myuser@localhost", "mydb");Краткий словарь (1 строка каждое)
- arangosh — интерактивная клиентская оболочка ArangoDB.
- arangod — основной процесс сервера ArangoDB.
- endpoint — строка подключения (адрес и порт) сервера.
- RocksDB — движок хранения, используемый в ArangoDB.
Риски и смягчение
- Риск: открытый доступ в интернет без TLS. Смягчение: ограничить доступ по IP, настроить TLS или проксирование через reverse-proxy с HTTPS.
- Риск: потеря данных при обновлении. Смягчение: всегда делать бэкап перед обновлением.
Советы по миграции и совместимости
- Если вы мигрируете с других релизов ArangoDB, проверяйте release notes между версиями.
- Тестируйте миграцию на staging перед production.
Заключение
Поздравляю — вы установили и настроили ArangoDB 3 на Ubuntu 18.04. Дальше вы можете изучить создание коллекций, индексов, AQL-запросы и настройку кластеров для горизонтального масштабирования. Если нужна помощь с конкретной задачей — опишите её, и я помогу.
Important: всегда проверяйте бэкапы перед операциями обновления или миграции.
Похожие материалы
Несколько аккаунтов Skype: Multi Skype Launcher
Журнал для работы: повысить продуктивность
Персональные звуки уведомлений на Android
Скачивание шоу Hulu для офлайн‑просмотра
Microsoft Start: персонализированная новостная лента