MongoDB part3 – sharding mongodb pada centos 7.x

0
764

Halo sobat sekolahlinux semua, kali ini saya coba untuk melanjutkan tutorial soal mongodb, nah kali ini saya akan membuat tutorial sharding, pada dasarnya konsep sharding pada mongodb ini mirip-mirip dengan RAID5 dan berfungsi juga sebagai loadbalancer, daripada panjang-panjang jelasin mending langsung praktek saja hehe 😀

OS Linux : Centos 7.x
MongoDB : Version 3.2

  • mongos : 192.168.100.10
  • configsvr : 192.168.100.20
  • shardsvr1 : 192.168.100.30
  • shardsvr2 : 192.168.100.40
  • shardsvr3 : 192.168.100.50

NOTED: Untuk Production Tidak Disarankan Menggunakan 1 CONFIGSVR

SHARDSVR: shard dalam mongoDB terdiri dari beberapa server (mongod) dan didalamnya terdapat data hasil split. Beberapa server tersebut dalam shard membentuk replika set. sehingga dapat kita katakan suatu replika set berada pada suatu sharding.

MONGOS: melakukan routing terhadap request ke shard yang memiliki data tersebut. Pada saat aplikasi ini dijalankan. ia akan mengambil data dari config server.

CONFIGSVR: menyimpan konfigurasi mongos dan juga detail peletakan data yang di split di masing-masing shardsvr. configsvr bisa 1 atau 3

*CONFIGSVR

pertama buat dulu direktori untuk databasenya

jalankan pada server configsvr

jika kalian ingin membuatnya menjadi sebuah file config, dan kemudian baru dijalankan kalian bisa membuat file config seperti dibawah ataupun mengcopy file mongod.conf dan lalu mengedit dalamnya menjadi seperti dibawah

jika sudah jalankan mongod dengan file konfigurasinya dengan perintah dibawah ini

*MONGOS
jalankan perintah dibawah pada terminal server mongos server

jika configsvr ada 3 maka perintahnya jadi seperti ini, ganti “xx” dengan ip terakhir dari configsrv

jika kalian ingin membuatnya menjadi sebuah file config, dan kemudian baru dijalankan kalian bisa membuat file config seperti dibawah ataupun mengcopy file mongod.conf dan lalu mengedit dalamnya menjadi seperti dibawah

jika sudah jalankan mongod dengan file konfigurasinya dengan perintah dibawah ini

*SHARDSVR

jangan lupa untuk membuat direktori untuk databasenya

jalankan pada ke 3 shardsvr

jika kalian ingin membuatnya menjadi sebuah file config, dan kemudian baru dijalankan kalian bisa membuat file config seperti dibawah ataupun mengcopy file mongod.conf dan lalu mengedit dalamnya menjadi seperti dibawah

jika sudah jalankan mongod dengan file konfigurasinya dengan perintah dibawah ini

*MONGOS
masuk ke mongo shell di mongos svr

tambahkan shardsvr dengan command seperti dibawah jika shardsvr kalian standalone

namun jika shardsvr kalian replicate makan commandnya menjadi seperti dibawah

nama databasenya “students” dan nama documentnya “grades” dan untuk shared key “student_id” pemilihan shared key harus yang unik karena nantinya akan berkaitan dengan split data pada sharding server

jika terdapat error dari command terakhir yang ada diatas, yang pesannya kita harus mengindex shared key, jalankan perntah dibawah, jika sudah ulangi perintah terakhir yang tadi muncul error

coba lakukan simulasi dengan memasukkan script ini pada mongo shell

untuk melihat status sharding, coba lihat dibaris “chunks:” apakah sudah ada 3 shardsvr atau masih di 1 shardsvr, jika belum kemungkinan data yang masuk masih dibawah chunk size yang diterapkan

untuk melihat data document “grades” pada database “students” yang terdistribusi ke masing-masing sharding server

untuk melihat chunk size, secara default chunksize bernilai 64MB

untuk merubah chunk size bisa dengan cara ini

Sekian tutorial kali ini, semoga bermanfaat ya 😀 dan selamat praktek, salam sekolahlinux.

LEAVE A REPLY

Please enter your comment!
Please enter your name here