Как установить и настроить OrientDB в Ubuntu 14.04

Вступление

OrientDB - это многомодельная база данных NoSQL с поддержкой баз данных графов и документов. Это приложение Java и может работать в любой операционной системе. Это также полностью ACID-жалоба с поддержкой репликации нескольких мастеров.

В этой статье вы узнаете, как установить и настроить последнюю версию OrientDB для сообщества на сервере Ubuntu 14.04.

Предпосылки

Чтобы следовать этому уроку, вам понадобится следующее:

  • Ubuntu 14.04 Droplet

  • Пользователь без полномочий root с привилегиями sudo (Initial Server Setup with Ubuntu 14.04 объясняет, как это настроить.)

[[step-1 -—- install-oracle-java]] == Шаг 1. Установка Oracle Java

OrientDB - это Java-приложение, которое требует Java версии 1.6 или выше. Поскольку Java намного быстрее, чем Java 6 и 7, настоятельно рекомендуется Java 8. И это версия Java, которую мы установим на этом шаге.

Чтобы установить Java JRE, добавьте следующие Личные архивы пакетов (PPA):

sudo add-apt-repository ppa:webupd8team/java

Обновите базу данных пакетов:

sudo apt-get update

Затем установите Oracle Java. Установка этого конкретного пакета не только устанавливает его, но и делает его Java JRE по умолчанию. При появлении запроса примите лицензионное соглашение:

sudo apt-get install oracle-java8-set-default

После установки убедитесь, что теперь это Java JRE по умолчанию:

java -version

Ожидаемый результат следующий (точная версия может отличаться):

outputjava version "1.8.0_60"
Java(TM) SE Runtime Environment (build 1.8.0_60-b27)
Java HotSpot(TM) 64-Bit Server VM (build 25.60-b23, mixed mode)

[[шаг-2 -—- загрузка-и установка-orientdb]] == Шаг 2 - Загрузка и установка OrientDB

На этом этапе мы загрузим и установим последнюю версию OrientDB для сообщества. На момент публикации этой публикации, OrientDB Community 2.1.3 является последней версией. Если была выпущена более новая версия, измените номер версии на соответствующий:

wget https://orientdb.com/download.php?file=orientdb-community-2.1.3.tar.gz

Загруженный архив содержит предварительно скомпилированные двоичные файлы, которые вам нужны для запуска OrientDB в вашей системе, поэтому все, что вам нужно сделать, это распаковать его в подходящий каталог. Поскольку/opt является традиционным местом размещения сторонних программ в Linux, давайте развернем его там:

sudo tar -xf download.php?file=orientdb-community-2.1.3.tar.gz -C /opt

Файлы извлекаются в каталог с именемorientdb-community-2.1.3. Чтобы было легче работать с ним, давайте переименуем его:

sudo mv /opt/orientdb-community-2.1.3 /opt/orientdb

[[step-3 -—- start-the-server]] == Шаг 3 - Запуск сервера

Теперь, когда двоичный файл установлен, вы можете запустить сервер и подключиться к консоли. Перед этим перейдите в каталог установки:

cd /opt/orientdb

Затем запустите сервер:

sudo bin/server.sh

Помимо создания набора выходных данных, при первом запуске сервера вам будет предложено указать пароль для учетной записи пользователяroot. Это внутренняя учетная запись OrientDB, которая будет использоваться для доступа к серверу. Например, это комбинация имени пользователя и пароля, которая будет использоваться для доступа к OrientDB Studio, веб-интерфейсу для управления OrientDB. Если вы не укажете пароль, он будет создан автоматически. Тем не менее, лучше указать один из них, сделать это при появлении соответствующего запроса.

Часть выходных данных, генерируемых при запуске сервера, сообщает, какие порты прослушивают сервер и OrientDB Studio:

Output2015-10-12 11:27:45:095 INFO  Databases directory: /opt/orientdb/databases [OServer]
2015-10-12 11:27:45:263 INFO  Listening binary connections on 0.0.0.0:2424 (protocol v.32, socket=default) [OServerNetworkListener]
2015-10-12 11:27:45:285 INFO  Listening http connections on 0.0.0.0:2480 (protocol v.10, socket=default) [OServerNetworkListener]

...

2015-10-12 11:27:45:954 INFO  OrientDB Server v2.1.3 (build UNKNOWN@r; 2015-10-04 10:56:30+0000) is active. [OServer]

Поскольку OrientDB теперь работает в окне вашего терминала, во втором окне терминала для того же Droplet убедитесь, что сервер прослушивает порты 2424 (для двоичных соединений) и 2480 (для соединений HTTP). Чтобы убедиться, что он прослушивает двоичные соединения, выполните:

sudo netstat -plunt | grep 2424

Вывод должен выглядеть примерно так:

Outputtcp6       0      0 :::2424                 :::*                    LISTEN      1617/java

Чтобы убедиться, что он прослушивает HTTP-соединения, выполните:

sudo netstat -plunt | grep 2480

Ожидаемый результат выглядит следующим образом:

Outputtcp6       0      0 :::2480                 :::*                    LISTEN      1617/java

[[step-4 -—- connected-to-the-console]] == Шаг 4 - Подключение к консоли

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

sudo /opt/orientdb/bin/console.sh

Вы увидите следующее:

OutputOrientDB console v.2.1.3 (build UNKNOWN@r; 2015-10-04 10:56:30+0000) www.orientdb.com
Type 'help' to display all the supported commands.
Installing extensions for GREMLIN language v.2.6.0

orientdb>

Теперь подключитесь к экземпляру сервера. Требуемый пароль тот, который вы указали при первом запуске сервера ранее:

connect remote:127.0.0.1 root root-password

Если подключен, выход должен быть:

OutputConnecting to remote Server instance [remote:127.0.0.1] with user 'root'...OK
orientdb {server=remote:127.0.0.1/}>

Введитеexit, чтобы выйти:

exit

Итак, вы только что установили OrientDB, запустили его вручную и подключились к нему. Это все хорошо. Однако это также означает, что запускать его нужно каждый раз, когда вы перезагружаете сервер. Это не хорошо. На следующих шагах мы настроим и настроим OrientDB для работы так же, как и для любого другого демона на сервере.

ВведитеCTRL-C в окне терминала, пока OrientDB все еще работает, чтобы остановить его.

[[step-5 -—- configuring-orientdb]] == Шаг 5 - Настройка OrientDB

На данный момент OrientDB установлен в вашей системе, но это всего лишь набор сценариев на сервере. На этом этапе мы изменим файл конфигурации, а также настроим его для запуска в системе в качестве демона. Это предполагает изменение сценария/opt/orientdb/bin/orientdb.sh и файла конфигурации/opt/orientdb/config/orientdb-server-config.xml.

Давайте начнем с изменения сценария/opt/orientdb/bin/orientdb.sh, чтобы указать OrientDB пользователю, от имени которого он должен запускаться, и указать ему каталог установки.

Итак, сначала создайте системного пользователя, от которого вы хотите, чтобы OrientDB запускался. Команда также создаст группуorientdb:

sudo useradd -r orientdb -s /bin/false

Передайте права собственности на каталог и файлы OrientDB только что созданному пользователю и группе OrientDB:

sudo chown -R orientdb:orientdb /opt/orientdb

Теперь внесем несколько изменений в скриптorientdb.sh. Мы начинаем с открытия его с помощью:

sudo nano /opt/orientdb/bin/orientdb.sh

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

/opt/orientdb/bin/orientdb.sh# You have to SET the OrientDB installation directory here
ORIENTDB_DIR="YOUR_ORIENTDB_INSTALLATION_PATH"
ORIENTDB_USER="USER_YOU_WANT_ORIENTDB_RUN_WITH"

И измените их на:

/opt/orientdb/bin/orientdb.sh# You have to SET the OrientDB installation directory here
ORIENTDB_DIR="/opt/orientdb"
ORIENTDB_USER="orientdb"

Теперь позвольте системному пользователю запускать скрипт с помощьюsudo.

Ниже, в функции скриптаstart, найдите следующую строку и закомментируйте ее, добавив перед ней символ#. Он должен выглядеть так, как показано:

/opt/orientdb/bin/orientdb.sh#su -c "cd \"$ORIENTDB_DIR/bin\"; /usr/bin/nohup ./server.sh 1>../log/orientdb.log 2>../log/orientdb.err &" - $ORIENTDB_USER

Скопируйте и вставьте следующую строку сразу после той, которую вы только что закомментировали:

/opt/orientdb/bin/orientdb.shsudo -u $ORIENTDB_USER sh -c "cd \"$ORIENTDB_DIR/bin\"; /usr/bin/nohup ./server.sh 1>../log/orientdb.log 2>../log/orientdb.err &"

Под функциейstop найдите следующую строку и закомментируйте ее. Он должен выглядеть так, как показано.

/opt/orientdb/bin/orientdb.sh#su -c "cd \"$ORIENTDB_DIR/bin\"; /usr/bin/nohup ./shutdown.sh 1>>../log/orientdb.log 2>>../log/orientdb.err &" - $ORIENTDB_USER

Скопируйте и вставьте следующую строку сразу после той, которую вы только что закомментировали:

/opt/orientdb/bin/orientdb.shsudo -u $ORIENTDB_USER sh -c "cd \"$ORIENTDB_DIR/bin\"; /usr/bin/nohup ./shutdown.sh 1>>../log/orientdb.log 2>>../log/orientdb.err &"

Сохраните и закройте файл.

Далее откройте файл конфигурации:

sudo nano /opt/orientdb/config/orientdb-server-config.xml

Мы собираемся изменить тегstorages и, при желании, добавить еще одного пользователя в тегusers. Прокрутите до элементаstorages и измените его так, чтобы он выглядел следующим образом. username иpassword - это ваши учетные данные для входа, то есть те, которые вы использовали для входа на свой сервер:

/opt/orientdb/config/orientdb-server-config.xml
        

Если вы прокрутите до тегаusers, вы должны увидеть имя пользователя и пароль пользователя root, который вы указали при первом запуске сервера OrientDB на шаге 3. Также в списке будет гостевой аккаунт. Вам не нужно добавлять других пользователей, но если вы хотите, вы можете добавить имя пользователя и пароль, которые вы использовали для входа на сервер DigitalOcean. Ниже приведен пример того, как добавить пользователя в тегusers:

/opt/orientdb/config/orientdb-server-config.xml

Сохраните и закройте файл.

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

sudo chmod 640 /opt/orientdb/config/orientdb-server-config.xml

[[step-6 -—- install-the-startup-script]] == Шаг 6 - Установка сценария запуска

Теперь, когда скрипты настроены, вы можете скопировать их в соответствующие системные каталоги. Скопируйте сценарий, отвечающий за запуск консоли, в каталог/usr/bin:

sudo cp /opt/orientdb/bin/console.sh /usr/bin/orientdb

Затем скопируйте сценарий, отвечающий за запуск и остановку службы или демона, в каталог/etc/init.d:

sudo cp /opt/orientdb/bin/orientdb.sh /etc/init.d/orientdb

Перейдите в каталог/etc/init.d:

cd /etc/init.d

Затем обновите каталогrc.d, чтобы система знала о новом сценарии и запускала его при загрузке, как и другие системные демоны.

sudo update-rc.d orientdb defaults

Вы должны получить следующий вывод:

Outputupdate-rc.d: warning: /etc/init.d/orientdb missing LSB information
update-rc.d: see 
 Adding system startup for /etc/init.d/orientdb ...
   /etc/rc0.d/K20orientdb -> ../init.d/orientdb
   /etc/rc1.d/K20orientdb -> ../init.d/orientdb
   /etc/rc6.d/K20orientdb -> ../init.d/orientdb
   /etc/rc2.d/S20orientdb -> ../init.d/orientdb
   /etc/rc3.d/S20orientdb -> ../init.d/orientdb
   /etc/rc4.d/S20orientdb -> ../init.d/orientdb
   /etc/rc5.d/S20orientdb -> ../init.d/orientdb

[[step-7 -—- start-orientdb]] == Шаг 7. Запуск OrientDB

Теперь, когда все готово, вы можете запустить сервис:

sudo service orientdb start

Убедитесь, что это действительно началось:

sudo service orientdb status

Вы также можете использовать командыnetstat из шага 3, чтобы убедиться, что сервер прослушивает порты. Если сервер не запускается, поищите подсказки в файле журнала ошибок в каталоге/opt/orientdb/log.

[[step-8 -—- connected-to-orientdb-studio]] == Шаг 8 - Подключение к OrientDB Studio

OrientDB Studio - это веб-интерфейс для управления OrientDB. По умолчанию он прослушивает порт 2480. Чтобы подключиться к нему, откройте браузер и введите в адресную строку следующее:

http://server-ip-address:2480

Если страница загружается, вы должны увидеть экран входа в систему. Вы должны иметь возможность войти какroot и пароль, который вы установили ранее.

Если страница не загружается, возможно, это связано с тем, что она заблокирована брандмауэром. Поэтому вам нужно добавить правило в брандмауэр, чтобы разрешить трафик OrientDB через порт 2480. Для этого откройте файл правил брандмауэра IPTables для трафика IPv4:

sudo /etc/iptables/rules.v4

В цепочкуINPUT добавьте следующее правило:

/etc/iptables/rules.v4-A INPUT -p tcp --dport 2480 -j ACCEPT

Перезапустите iptables:

sudo service iptables-persistent reload

Это следует сделать для подключения к OrientDB Studio.

Заключение

Поздравляем! Вы только что установили версию OrientDB для сообщества на свой сервер. Чтобы узнать больше, ознакомьтесь со статьямиHow To Back Up Your OrientDB Databases on Ubuntu 14.04 иHow To Import and Export an OrientDB Database on Ubuntu 14.04.

Дополнительную информацию и ссылки на официальную документацию OrientDB можно найти наorientdb.com.

Related