MongoDB part2 – replikasi mongodb pada centos 7.x

0
1547

Hai sobat sekolahlinux, kali ini saya akan melanjutkan part1 mongodb, nah pada part2 kali ini saya coba membuat tutorial replikasi pada mongodb dan masih menggunakan centos 7, oke langsung saja ini dia tutorialnya

OS Linux : Centos 7.x
MongoDB : Version 3.2

  • replicate1 shardsvr1 : 192.168.100.30
  • replicate2 shardsvr1 : 192.168.100.31
  • replicate3 shardsvr1 : 192.168.100.32

tambahkan ip dari masing-masing hostname pada semua server mongo replicate1/2/3

vim /et/hosts
192.168.100.30 shardsvr1.lokal
192.168.100.31 shardsvr11.lokal
192.168.100.32 shardsvr12.lokal

matikan seluruh service mongo pada semua server

service mongod stop

jangan lupa buat direktori untuk databasenya, defaultnya direktorinya akan lari ke /data/db

mkdir -p /data/db

login ke semua server mongo replicate1/2/3 lalu jalankan command dibawah ini. untuk menjalankan*(penggunaan option “–fork” diharuskan menggunakan “–logpath”).

mongod --fork --replSet "rs0" --logpath /var/log/mongodb.log

atau jika kalian ingin membuat running berdasarkan file konfigurasi, kalian bisa membuat file konfigurasinya seperti dibawah, buat file konfigurasi baru atau bisa copy dari file konfigurasi yang sudah ada pada semua server replicate1/2/3, dan rubah menjadi seperti dibawah isinya

vim /home/sekolahlinux/mongod1.conf
# mongod.conf

# for documentation of all options, see:
#   http://docs.mongodb.org/manual/reference/configuration-options/

# where to write logging data.
systemLog:
  destination: file
  logAppend: true
  path: /var/log/mongodb/mongod.log

# Where and how to store data.
storage:
  dbPath: /data/db
  journal:
    enabled: true
#  engine:
#  mmapv1:
#  wiredTiger:

# how the process runs
processManagement:
  fork: true  # fork and run in background
  pidFilePath: /var/run/mongodb/mongod.pid  # location of pidfile

# network interfaces
net:
  port: 27017
#  bindIp: 127.0.0.1  # Listen to local interface only, comment to listen on all interfaces.


#security:

#operationProfiling:

replication:
  replSetName: rs0

#sharding:

## Enterprise-Only Options

#auditLog:

#snmp:

jika sudah jalankan mongod dengan file konfigurasinya dengan perintah dibawah pada semua server replicate1/2/3

mongod --config /home/sekolahlinux/mongod1.conf

lalu masuk ke mongo shell di replicate1 shardsvr1 dan jalankan perintah dibawah ini

mongo
mongos> rs.initiate()
mongos> rs.conf()
mongos> rs.add("shardsvr1.lokal:27017")
mongos> rs.add("shardsvr11.lokal:27017")
mongos> rs.add("shardsvr12.lokal:27017")

untuk melihat status replicate bisa jalankan perintah ini

mongo
mongos> rs.status()

*noted
jika kalian berhasil menjalankan perintah diatas maka posisi replicate master ada di shardsvr1 sedangkan shardsvr11 dan shardsvr12 akan menjadi secondary, namun jika server shardsvr1 down maka posisi master akan pindah ke shardsvr11 dan jika server shardsvr1 up kembali maka server shardsvr1 akan menjadi secondary dan shardsvr11 masih menjadi master.

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