Cloud, Database

Instalasi MongoDB Server di AWS EC2 Instance

MongoDB merupakan jenis NoSQL Database yang berbasis document-oriented. Data disimpan dalam MongoDB dalam format BSON, -yang mirip seperti JSON

MongoDB merupakan NoSQL Database yang banyak digunakan dalam implementasi penyimpanan Big data yang mempunyai format semi-structured.

Kita akan lakukan instalasi MongoDB Server di AWS EC2 Instance. Sebelumnya kita sudah pernah melakukan instalasi secara local (baca disini)

Sebenarnya cara instalasinya sama hanya ada sedikit perbedaan saat kita ingin mengakses servernya melalui aplikasi client seperti MongoDB Compass di komputer local

Membuat EC2 Instance

Karena MongoDB Server akan disetup di EC2 Instance maka pertama harus dibuat terlebih dahulu. Masuk di AWS Console dan pilih layanan EC2 dengan AMI Ubuntu Server 20.04

Tutorial membuat EC2 Instance dengan Ubuntu Server 20.04 dapat dilihat disini.

Note : AMI yang dipilih adalah Ubuntu Server versi 20.04 bukan 18.04

Selanjutnya kita akan atur port 27017 agar MongoDB Server bisa diakses secara local. Buka dashboard EC2 dan pilih EC2 Instance dimana MongoDB akan diinstall

Pilih Security / Keamanan dan klik grup security

Instalasi MongoDB Server di AWS EC2 Instance

Pada Tab Inbound rules klik Edit Inbound Rule

Instalasi MongoDB Server di AWS EC2 Instance

Tambahkan rule, dengan type, Custom TCP, Port 27017 dan Source Anywhere agar bisa diakses di IP manapun kemudian klik Save rules

Instalasi MongoDB Server di AWS EC2 Instance

** Jika ingin lebih secure, pada source jangan gunakan anywhare tapi IP Public agar hanya bisa diakses dari komputer kita saja

Oke untuk pengaturan di EC2 Instance sudah selesai.. selanjutnya remote EC2 Instance dan install MongoDB Server

Instalasi MongoDB Server

Remote EC2 Instance dengan client SSH seperti Putty atau MobaXTerm

Tutorial : Cara remote EC2 instance menggunakan Putty

Setelah masuk ke lingkungan EC2 Instance, kita install MongoDB Community Edition Versi 4.4

Step 1, Import MongoDB public GPG Key

wget -qO - https://www.mongodb.org/static/pgp/server-4.4.asc | sudo apt-key add -

Step 2, Membuat list file untuk MongoDB di /etc/apt/sources.list.d

echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/4.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.4.list

Step 3, Reload MongoDB Package

sudo apt-get update

Step 4, Install MongoDB

sudo apt-get install -y mongodb-org

Untuk menjalankan service MongoDB gunakan perintah

sudo systemctl start mongod

Untuk mematikan service MongoDB gunakan perintah

sudo systemctl stop mongod

Untuk melihat status service MongoDB gunakan perintah

sudo systemctl status mongod

Agar MongoDB service bisa berjalan secara langsung saat booting, jalankan perintah berikut

sudo systemctl enable mongod

Setelah Service MongoDB sudah berjalan, gunakan perintah mongo sehingga di terminal muncul simbol >

Untuk melihat seluruh database gunakan perintah

show dbs

Membuat Collection dan document

Kita akan buat 1 document dengan nama collection mahasiswa yang berada di database kampus dengan perintah

use kampus
db.mahasiswa.insert({"nim":"21400200", "nama":"faqih", "alamat":"bandung"})

Untuk membaca document di MongoDB gunakan perintah

db.mahasiswa.find()

Hasilnya adalah

Akses menggunakan MongoDB Compass

MongoDB Compass adalah GUI untuk MongoDB yang mampu menvisualkan data dan melakukan operasi secara lebih mudah. Untuk mengenal MongoDB Compass silahkan baca artikel Manajemen Database MongoDB dengan MongoDB Compass

Agar MongoDB server dapat diakses dari luar EC2 instance, edit bindIP di /etc/mongod.conf dari 127.0.0.1 menjadi 0.0.0.0

Kemudian buka aplikasi MongoDB Compass dan pilih Fill in connection fields individually

Instalasi MongoDB Server di AWS EC2 Instance

Masukkan IP Public EC2 Instance di Hostname dengan Port 27017

Masuk di Database kampus, Collection Mahasiswa maka record dari data yang kita input akan muncul

Sekian tutorial instalasi MongoDB Server di AWS EC2 Instance dan cara membukanya melalui MongoDB Compass

Leave a Reply

Your email address will not be published. Required fields are marked *