MongoDB Replikasi: Cara Membuat MongoDB Set Replika

Apa itu MongoDB Replikasi?

Replikasi mengacu pada proses memastikan bahwa data yang sama tersedia di lebih dari satu Server Mongo DB. Hal ini terkadang diperlukan untuk tujuan meningkatkan ketersediaan data.

Karena jika utama Anda MongoDB Server mati karena alasan apa pun, tidak akan ada akses ke data. Namun jika Anda memiliki data yang direplikasi ke server lain secara berkala, Anda akan dapat mengakses data dari server lain meskipun server utama gagal.

Tujuan lain dari replikasi adalah kemungkinan penyeimbangan beban. Jika ada banyak pengguna yang terhubung ke sistem, alih-alih semua orang terhubung ke satu sistem, pengguna dapat terhubung ke beberapa server sehingga ada distribusi beban yang merata.

In MongoDB, berganda MongoDB Server dikelompokkan dalam set yang disebut set Replika. Kumpulan Replika akan memiliki server utama yang akan menerima semua operasi penulisan dari klien. Semua instance lain yang ditambahkan ke set setelah ini akan disebut instance sekunder yang dapat digunakan terutama untuk semua operasi baca.

Cara Membuat Replika Set di MongoDB Menambahkan Anggota Pertama menggunakan rs.initiate()

Seperti disebutkan di bagian sebelumnya, untuk mengaktifkan replikasi, pertama-tama kita perlu membuat kumpulan replika MongoDB contoh.

Mari kita asumsikan bahwa untuk contoh kita, kita memiliki 3 server bernama ServerA, ServerB, dan ServerC. Dalam konfigurasi ini, ServerA akan menjadi server Utama kami dan ServerB dan ServerC akan menjadi server sekunder kami. Tangkapan layar di bawah ini akan memberikan gambaran yang lebih baik tentangnya.

Buat Replika Set di MongoDB

Di bawah ini adalah langkah-langkah yang perlu diikuti untuk membuat MongoDB himpunan replika beserta penambahan anggota pertama pada himpunan tersebut.

Langkah 1) Pastikan semua instance mongod.exe ditambahkan

Pastikan semua instance mongod.exe yang akan ditambahkan ke kumpulan replika diinstal di server yang berbeda. Hal ini untuk memastikan bahwa meskipun satu server mati, server lainnya akan tetap tersedia dan juga kejadian lainnya MongoDB akan tersedia.

Langkah 2) Semua instance mongo.exe terhubung satu sama lain

Pastikan semua instance mongo.exe dapat terhubung satu sama lain. Dari ServerA, jalankan 2 perintah di bawah ini.

mongo –host ServerB –port 27017
mongo –host ServerC –port 27017

Demikian pula, lakukan hal yang sama dari server yang tersisa.

Langkah 3) Mulai contoh mongod.exe pertama

Mulai instance mongod.exe pertama dengan opsi replSet. Opsi ini menyediakan pengelompokan untuk semua server yang akan menjadi bagian dari kumpulan replika ini.

mongo –replSet "Replica1"

Dimana “Replica1” adalah nama kumpulan replika Anda. Anda dapat memilih nama apa pun yang bermakna untuk nama kumpulan replika Anda.

Langkah 4) Server pertama ditambahkan ke set replika

Sekarang server pertama telah ditambahkan ke set replika, langkah berikutnya adalah memulai set replika dengan mengeluarkan perintah berikut rs.initiate ().

Langkah 5) Verifikasi set replika

Verifikasi set replika dengan mengeluarkan perintah rs.conf() untuk memastikan replika diatur dengan benar.

Kumpulan Replika: Menambahkan Sekunder menggunakan rs.add()

Server sekunder dapat ditambahkan ke kumpulan replika hanya dengan menggunakan perintah rs.add. Perintah ini mengambil nama server sekunder dan menambahkan server ke set replikasi.

Langkah 1) Misalkan jika Anda memiliki ServerA, ServerB, dan ServerC, yang diperlukan untuk menjadi bagian dari kumpulan replika Anda dan ServerA, didefinisikan sebagai server utama dalam kumpulan replika.

Untuk menambahkan ServerB dan ServerC ke kumpulan replika, berikan perintah

rs.add("ServerB")
rs.add("ServerC")

Kumpulan Replika: Mengonfigurasi Ulang atau Menghapus menggunakan rs.remove()

Untuk menghapus server dari kumpulan konfigurasi, kita perlu menggunakan perintah “rs.remove”.

Langkah 1) Pertama-tama lakukan penutupan instance yang ingin Anda hapus. Seseorang dapat melakukan ini dengan mengeluarkan perintah db.shutdownserver dari mongo shell.

Langkah 2) Hubungkan ke server utama

Langkah 3) Gunakan perintah rs.remove untuk menghapus server yang diperlukan dari kumpulan replika. Jadi misalkan jika Anda memiliki kumpulan replika dengan ServerA, ServerB, dan ServerC, dan Anda ingin menghapus ServerC dari kumpulan replika, keluarkan perintah

rs.remove("ServerC")

Memecahkan Masalah Kumpulan Replika

Langkah-langkah berikut adalah cara yang sama yang dapat dilakukan untuk memecahkan masalah saat terjadi masalah saat menggunakan set replika.

  1. Pastikan semua instance mongo.exe dapat terhubung satu sama lain. Misalkan jika Anda memiliki 3 server bernama ServerA, ServerB, dan ServerC. Dari Server A, jalankan 2 perintah di bawah ini
mongo –host ServerB –port 27017
mongo –host ServerC –port 27017
  1. Jalankan perintah rs.status. Perintah ini memberikan status kumpulan replika. Secara default, setiap anggota akan saling mengirim pesan yang disebut pesan “detak jantung” yang hanya menandakan bahwa server masih hidup dan berfungsi. Perintah “status” mendapatkan status pesan-pesan ini dan menunjukkan apakah ada masalah dengan anggota mana pun di kumpulan replika.
  2. Cek Ukuran Oplog – Oplog adalah koleksi di MongoDB yang menyimpan sejarah penulisan yang dilakukan pada MongoDB database. MongoDB kemudian menggunakan Oplog ini untuk mereplikasi penulisan ke anggota lain di kumpulan replika. Untuk memeriksa Oplog, sambungkan ke instance anggota yang diperlukan dan jalankan perintah rs.printReplicationInfo. Perintah ini akan menunjukkan ukuran log dan berapa lama ia dapat menyimpan transaksi dalam file lognya sebelum penuh.

Ringkasan

Replikasi di MongoDB mengacu pada proses memastikan bahwa data yang sama tersedia di lebih dari satu Server Mongo DB. Banyak anggota (MongoDB instance) dapat ditambahkan ke set Replika tergantung pada kebutuhan.

Ringkaslah postingan ini dengan: