Comment installer la base de données NoSQL ArangoDB sur Ubuntu 18.04 LTS

ArangoDB est une base de données NoSQL et multi-modèles, gratuite et open source, qui offre toutes les fonctionnalités de base de données nécessaires à une application Web moderne. ArangoDB n’utilise pas le système traditionnel de stockage des données comme dans MySQL ou PostgreSQL. Elle est spécialement conçue pour être très performante, open source et facilement évolutive. Il est simple, facile à utiliser et offre une interface web conviviale pour l’administration et la surveillance du système. ArangoDB est utilisé dans les petites et grandes organisations qui traitent des quantités massives de données. ArangoDB prend en charge trois modèles de données : clés/valeurs, documents et graphiques. ArangoDB fournit un moteur de stockage pour traiter les ensembles de données qui sont beaucoup plus grands que la RAM. ArangoDB t’aide à configurer la base de données en maître-esclave pour la réplication et le sharding.

Dans ce tutoriel, nous allons apprendre à installer ArangoDB3 sur le serveur Ubuntu 18.04.

Exigences

  • Un serveur fonctionnant sous Ubuntu 18.04.
  • Une adresse IP statique 192.168.0.104 est configurée sur ton serveur
  • Un mot de passe root est configuré sur ton serveur.

Pour commencer

Avant de commencer, tu dois mettre à jour ton système avec la dernière version. Tu peux le faire en exécutant la commande suivante :

apt-get update -y
apt-get upgrade -y

Une fois que ton serveur est mis à jour, redémarre ton serveur pour appliquer les changements.

Installer ArangoDB3

Par défaut, ArangoDB n’est pas disponible dans le dépôt par défaut d’Ubuntu 18.04. Tu devras donc ajouter le référentiel pour cela. Tout d’abord, télécharge et ajoute la clé GPG avec la commande suivante :

wget -q https://download.arangodb.com/arangodb34/DEBIAN/Release.key -O- | apt-key add -

Ensuite, ajoute le référentiel avec la commande suivante :

nano /etc/apt/sources.list.d/arangodb.list

Ajoute la ligne suivante :

deb https://download.arangodb.com/arangodb34/DEBIAN/ /

Sauvegarde et ferme le fichier lorsque tu as terminé. Ensuite, mets à jour le référentiel et installe ArangoDB3 avec la commande suivante :

apt-get update -y
apt-get install apt-transport-https arangodb3 -y

Pendant l’installation, tu devras répondre à quelques questions :

Définis le mot de passe de la racine de la base de données comme indiqué ci-dessous :

Définir le mot de passe de la racine de la base de données

Répète le mot de passe

Sélectionne la mise à jour automatique des fichiers de la base de données comme indiqué ci-dessous :

Configurer arangodb

Sélectionne le moteur de stockage de la base de données comme indiqué ci-dessous :

Sélectionne le moteur de stockage

Sauvegarde la base de données avant de faire une mise à niveau comme indiqué ci-dessous :

Sauvegarde des fichiers de la base de données

Une fois l’installation terminée avec succès, démarre le service ArangoDB et active-le pour qu’il démarre au démarrage avec la commande suivante :

systemctl start arangodb3
systemctl enable arangodb3

Tu peux vérifier l’état d’ArangoDB avec la commande suivante :

systemctl status arangodb3

Tu devrais voir la sortie suivante :

? 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)
    Tasks: 18 (limit: 131072)
   CGroup: /system.slice/arangodb3.service
           ??14070 /usr/sbin/arangod --uid arangodb --gid arangodb --pid-file /var/run/arangodb3/arangod.pid --temp.path /var/tmp/arangodb3 --l

May 07 16:00:21 ubuntu1804 arangod[14070]: 2019-05-07T16:00:21Z [14070] INFO ArangoDB 3.4.5 [linux] 64bit, using jemalloc, build tags/v3.4.5-0-
May 07 16:00:21 ubuntu1804 arangod[14070]: 2019-05-07T16:00:21Z [14070] INFO detected operating system: Linux version 4.15.0-20-generic (buildd
May 07 16:00:21 ubuntu1804 arangod[14070]: 2019-05-07T16:00:21Z [14070] INFO {authentication} Jwt secret not specified, generating...
May 07 16:00:21 ubuntu1804 arangod[14070]: 2019-05-07T16:00:21Z [14070] INFO using storage engine rocksdb
May 07 16:00:21 ubuntu1804 arangod[14070]: 2019-05-07T16:00:21Z [14070] INFO {cluster} Starting up with role SINGLE
May 07 16:00:21 ubuntu1804 arangod[14070]: 2019-05-07T16:00:21Z [14070] INFO {syscall} file-descriptors (nofiles) hard limit is 131072, soft li
May 07 16:00:21 ubuntu1804 arangod[14070]: 2019-05-07T16:00:21Z [14070] WARNING {threads} --server.threads (64) is more than eight times the nu
May 07 16:00:22 ubuntu1804 arangod[14070]: 2019-05-07T16:00:22Z [14070] INFO {authentication} Authentication is turned on (system only), authen
May 07 16:00:25 ubuntu1804 arangod[14070]: 2019-05-07T16:00:25Z [14070] INFO using endpoint 'http+tcp://127.0.0.1:8529' for non-encrypted reque
May 07 16:00:27 ubuntu1804 arangod[14070]: 2019-05-07T16:00:27Z [14070] INFO ArangoDB (version 3.4.5 [linux]) is ready for business. Have fun!

Tu peux aussi sécuriser ArangoDB en exécutant le script arango-secure-installation.

Tout d’abord, arrête le service ArangoDB avec la commande suivante :

systemctl stop arangodb3

Ensuite, sécurise ArangoDB avec la commande suivante :

arango-secure-installation
Please enter password for root user:
Repeat password:

Indique ta racine et appuie sur Entrée, tu devrais voir la sortie suivante :

2019-05-07T16:03:53Z [14322] INFO {syscall} file-descriptors (nofiles) hard limit is 1048576, soft limit is 1048576
2019-05-07T16:03:53Z [14322] WARNING {threads} --server.threads (64) is more than eight times the number of cores (1), this might overload the server
2019-05-07T16:03:55Z [14322] INFO Password changed.
2019-05-07T16:03:55Z [14322] INFO {startup} server will now shut down due to upgrade, database initialization or admin restoration.

Travailler avec ArangoDB

ArangoDB est maintenant installé et fonctionne. Tu peux maintenant lancer le shell ArangoDB avec la commande suivante :

arangosh
Please specify a password:

Après avoir fourni le mot de passe root, tu devrais voir le résultat suivant :

                                       _     
  __ _ _ __ __ _ _ __   __ _  ___  ___| |__  
 / _` | '__/ _` | '_ \ / _` |/ _ \/ __| '_ \ 
| (_| | | | (_| | | | | (_| | (_) \__ \ | | |
 \__,_|_|  \__,_|_| |_|\__, |\___/|___/_| |_|
                       |___/                 

arangosh (ArangoDB 3.4.5 [linux] 64bit, using jemalloc, build tags/v3.4.5-0-g648fbb8191, VPack 0.1.33, RocksDB 5.16.0, ICU 58.1, V8 5.7.492.77, OpenSSL 1.1.0j  20 Nov 2018)
Copyright (c) ArangoDB GmbH

Command-line history will be persisted when the shell is exited.
Connected to ArangoDB 'http+tcp://127.0.0.1:8529' version: 3.4.5 [SINGLE, server], database: '_system', username: 'root'

Type 'tutorial' for a tutorial or 'help' to see common examples
127.0.0.1:[email protected]_system> 

Maintenant, crée une base de données exemple avec le nom mydb en utilisant la commande suivante :

127.0.0.1:[email protected]_system> db._createDatabase("mydb");

Ensuite, crée un utilisateur de base de données et définis un mot de passe avec la commande suivante :

127.0.0.1:[email protected]_system> var users = require("@arangodb/users");
127.0.0.1:[email protected]_system> users.save("[email protected]", "password");
{
"user" : "[email protected]",
"active" : true,
"extra" : {
},
"code" : 201
}

Ensuite, accorde l’accès à la base de données avec la commande suivante :

127.0.0.1:[email protected]_system> users.grantDatabase("[email protected]", "mydb");

Ensuite, liste ta base de données avec la commande suivante :

127.0.0.1:[email protected]_system> db._databases()

Sortie :

[ 
  "_system", 
  "mydb" 
]

Ensuite, connecte-toi à ta base de données mydb en utilisant l’utilisateur myuser avec la commande suivante :

arangosh --server.username "[email protected]" --server.database mydb
Please specify a password:

Indique ton mot de passe d’utilisateur et appuie sur Entrée, tu devrais voir la sortie suivante :

                                       _     
  __ _ _ __ __ _ _ __   __ _  ___  ___| |__  
 / _` | '__/ _` | '_ \ / _` |/ _ \/ __| '_ \ 
| (_| | | | (_| | | | | (_| | (_) \__ \ | | |
 \__,_|_|  \__,_|_| |_|\__, |\___/|___/_| |_|
                       |___/                 

arangosh (ArangoDB 3.4.5 [linux] 64bit, using jemalloc, build tags/v3.4.5-0-g648fbb8191, VPack 0.1.33, RocksDB 5.16.0, ICU 58.1, V8 5.7.492.77, OpenSSL 1.1.0j  20 Nov 2018)
Copyright (c) ArangoDB GmbH

Command-line history will be persisted when the shell is exited.
Connected to ArangoDB 'http+tcp://127.0.0.1:8529' version: 3.4.5 [SINGLE, server], database: 'mydb', username: '[email protected]'

Type 'tutorial' for a tutorial or 'help' to see common examples
127.0.0.1:[email protected]> 

Accéder à l’interface Web d’ArangoDB

ArangoDB est maintenant installé et configuré, il est temps d’accéder à l’interface Web d’ArangoDB. L’interface Web ArangoDB peut être utilisée pour gérer les bases de données, les collections, les documents, les utilisateurs, les graphiques et vérifier l’état du serveur.

Par défaut, ArangoDB est configuré pour accéder uniquement à partir de localhost. Tu devras donc configurer ArangoDB pour qu’il puisse accéder à partir d’un emplacement distant. Tu peux le faire en modifiant le fichier /etc/arangodb3/arangod.conf :

nano /etc/arangodb3/arangod.conf

Change la ligne suivante :

De :

endpoint = tcp://127.0.0.1:8529

en

endpoint = tcp://192.168.0.104:8529

Enregistre et ferme le fichier lorsque tu as terminé. Ensuite, redémarre le service ArangoDB pour appliquer toutes ces modifications :

systemctl restart arangodb3

Maintenant, ouvre ton navigateur Web et tape l’URL http://192.168.0.104:8529. Tu seras redirigé vers la page suivante :

Interface Web d'ArangoDB

Maintenant, indique ton nom d’utilisateur et ton mot de passe root. Ensuite, clique sur le bouton Connexion. Tu devrais voir la page suivante :

Connexion

Maintenant, sélectionne la base de données et clique sur le bouton Select DB. Tu devrais voir le tableau de bord ArangoDB à la page suivante :

Tableau de bord de la base de données ArangoDB

Félicitations ! Tu as réussi à installer et à configurer ArangoDB sur le serveur Ubuntu 18.04. N’hésite pas à me demander si tu as des questions.

Vous aimerez aussi...