ArangoDB adalah software NoSQL free dan open source dan multi-model database yang menyediakan semua fitur database yang diperlukan untuk aplikasi web modern. ArangoDB tidak menggunakan sistem penyimpanan data tradisional seperti pada MySQL atau PostgreSQL. ArangoDB  dirancang khusus untuk berkinerja tinggi, open source, dan mudah di scalable.

ArangoDB  merupakan software yang sederhana, mudah digunakan dan menyediakan antarmuka berbasis web yang ramah pengguna untuk administrasi sistem dan pemantauan sistem.

ArangoDB digunakan dalam organisasi kecil dan besar yang memproses sejumlah besar data. ArangoDB mendukung tiga model data key/value, dokumen, dan grafik. ArangoDB menyediakan mesin penyimpanan untuk menangani kumpulan data yang jauh lebih besar dari RAM. ArangoDB membantu Anda mengatur basis data di master-slave untuk Replikasi dan Sharding.

Dalam tutorial ini, kita akan belajar cara menginstal ArangoDB3 di server Ubuntu 18.04.

Persyaratan

  • Server yang menjalankan Ubuntu 18.04.
  • Alamat IP statis diatur ke server Anda, dalam contoh di tutorial ini kita akan menggunakan IP 192.168.0.104
  • Kata sandi root diatur ke server Anda.

Sebelum Mulai

Sebelum memulai, Anda perlu memperbarui sistem dengan versi terbaru. Anda dapat melakukan ini dengan menjalankan perintah berikut dengan user root atau user biasa dengan hak sudo:

sudo apt-get update && sudo apt-get upgrade -y

Setelah server Anda diperbarui, mulai ulang server Anda untuk menerapkan perubahan.

Instal ArangoDB3

Secara default, ArangoDB tidak tersedia di repositori default Ubuntu 18.04. Jadi, Anda perlu menambahkan repositori untuk itu. Pertama, unduh dan tambahkan GPG key dengan perintah wget berikut:

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

Selanjutnya, tambahkan repositori dengan perintah berikut:

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

Tambahkan baris berikut:

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

Simpan dan tutup file ketika Anda selesai. Kemudian, perbarui repositori dan instal ArangoDB3 dengan perintah berikut:

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

Selama instalasi, Anda perlu memberikan jawaban atas beberapa pertanyaan:

Tetapkan kata sandi root database seperti yang ditunjukkan di bawah ini:

page 1 - Set database root password

page 2 - Repeat the password

Pilih secara otomatis upgrade file database seperti yang ditunjukkan di bawah ini:

page 3 - Configure arangodb

Pilih mesin penyimpanan database seperti yang ditunjukkan di bawah ini:

page 4 - Select storage engine

Backup database sebelum melakukan upgrade seperti yang ditunjukkan di bawah ini:

page 5 - Backup database files

Setelah instalasi selesai, mulai layanan ArangoDB dan aktifkan untuk memulai saat boot dengan perintah berikut:

systemctl start arangodb3
systemctl enable arangodb3

Anda dapat memeriksa status ArangoDB dengan perintah berikut:

systemctl status arangodb3

Anda akan melihat output kurang lebih seperti berikut:

? 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!

Anda juga dapat mengamankan ArangoDB dengan menjalankan skrip instalasi arango-secure. Pertama, hentikan layanan ArangoDB dengan perintah berikut:

systemctl stop arangodb3

Kemudian, amankan ArangoDB dengan perintah berikut:

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

Berikan password root Anda dan tekan Enter, Anda akan melihat output berikut:

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.

Terhubung ke ArangoDB

ArangoDB sekarang diinstal dan dijalankan. Anda sekarang dapat meluncurkan shell ArangoDB dengan perintah berikut:

arangosh
 Please specify a password:

Setelah memberikan kata sandi root, Anda akan melihat output berikut:

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

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:8529@_system> 

Sekarang, buat contoh database dengan nama databaru menggunakan perintah berikut:

127.0.0.1:8529@_system> db._createDatabase("databaru");

Selanjutnya, buat user database dan atur kata sandi dengan perintah berikut:

127.0.0.1:8529@_system> var users = require("@arangodb/users");
 127.0.0.1:8529@_system> users.save("namauseranda@localhost", "GantiDenganPassword");
 { 
 "user" : "namauseranda@localhost", 
 "active" : true, 
 "extra" : { 
 }, 
 "code" : 201 
 }

Selanjutnya, beri hak akses ke database dengan perintah berikut:

127.0.0.1:8529@_system> users.grantDatabase("namauseranda@localhost", "databaru");

Selanjutnya, daftarkan database Anda dengan perintah berikut:

127.0.0.1:8529@_system> db._databases()

Output:

[ 
  "_system", 
  "databaru" 
]

Selanjutnya, untuk tersambung ke database Anda menggunakan namauseranda dengan perintah berikut:

arangosh --server.username "namauseranda@localhost" --server.database databaru
 Please specify a password:

Berikan password dan tekan Enter, Anda akan melihat output berikut:

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

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: 'databaru', username: 'namauseranda@localhost'

Type 'tutorial' for a tutorial or 'help' to see common examples
127.0.0.1:8529@databaru> 

Akses Web Interface ArangoDB

ArangoDB sekarang diinstal dan dikonfigurasi, saatnya untuk mengakses antarmuka web ArangoDB. Antarmuka web ArangoDB dapat digunakan untuk mengelola database, koleksi, dokumen, user, grafik dan memeriksa status server.

Secara default, ArangoDB dikonfigurasi untuk mengakses hanya dari localhost. Jadi, Anda perlu mengonfigurasi ArangoDB untuk mengakses dari lokasi jarak jauh. Anda dapat melakukannya dengan mengedit file /etc/arangodb3/arangod.conf:

sudo nano /etc/arangodb3/arangod.conf

Ubah baris berikut:

endpoint = tcp://127.0.0.1:8529

Menjadi

endpoint = tcp://ipServerAnda:8529

Simpan dan tutup file, ketika Anda selesai. Kemudian, restart layanan ArangoDB untuk menerapkan perubahan berikut:

systemctl restart arangodb3

Sekarang, buka browser web Anda dan ketik URL http://IPServerAnda:8529. Anda akan diarahkan ke halaman berikut:

page 6 - ArangoDB web interface

Sekarang, berikan nama user dan kata sandi root Anda. Kemudian, klik tombol Login. Anda akan melihat halaman berikut:

page 7 - ArangoDB web interface Login

Sekarang, pilih database dan klik pada Select DB. Anda akan melihat dashboard  ArangoDB di halaman berikut:

page 8 - ArangoDB database dashboard

Selamat! Anda telah berhasil menginstal dan mengkonfigurasi ArangoDB pada server Ubuntu 18.04.