Genel MongoDB

MongoDB Shard Cluster Oluşturma ve Yönetimi

MongoDB Shard Cluster Oluşturma ve Yönetimi

MongoDB Shard Cluster Oluşturma ve Yönetimi

Giriş

Büyük veri tabanları ile çalışırken, ölçeklenebilirlik ve performans kritik öneme sahiptir. MongoDB, bu gereksinimleri karşılamak için doğal olarak sharding özelliğine sahiptir. Sharding, büyük veri kümelerini daha küçük parçalara, yani shard’lara bölerek verinin birden fazla sunucuya dağıtılmasıdır. Bu makalede, MongoDB shard cluster nasıl oluşturulur ve nasıl yönetilir konularında derinlemesine bilgi vereceğiz.

Eğer bir sanal sunucuya ihtiyacınız varsa, VDS sunucu hizmetlerinden faydalanabilirsiniz. Yüksek performanslı bir altyapı için fiziksel sunucu çözümleri de fiziksel sunucu linkinde mevcuttur.

MongoDB Shard Cluster Nedir?

Sharding, MongoDB verilerini yatay olarak bölmek için veritabanı orm’in birleşim ve performans olarak da ölçeklendirilmesini sağlar. İlk olarak sharding kullanılan veritabanlarımızda iki temel bileşen bulunmaktadır:

Shard’lar: Verinin depolandığı ve işlemlerin gerçekleştirildiği sunucular.
Config Servers: Shard yapılandırma ve veri dağılımı bilgilerini tutar.
Mongos: Veritabanı istemcileri ile shard cluster arasındaki etkileşimi sağlar.

Shard Cluster Oluşturma

Aşama 1: Donanım Seçimi ve Yapılandırma

İlk aşamada, veritabanı yükünü taşıyabilecek güçlü sunucular seçmelisiniz. Cloud sunucu çözümlerimiz bu noktada mükemmel bir alternatif sunabilir.

Aşama 2: MongoDB Sunucuları Kurun

Her bir sunucuda MongoDB’yi kurmanız gerekecek. Ubuntu üzerinde bir kurulum örneği aşağıdaki gibidir:

sudo apt-get update
sudo apt-get install -y mongodb-org

Aşama 3: Config Servers Kurulum

Config server, metadata bilgilerini tutar ve cluster yönetim bilgilerini barındırır. Her bir config server için aşağıdaki adımları uygulayın:

sudo mongod --configsvr --replSet myConfigRepl --dbpath /var/lib/mongo --port 27019

Aşama 4: Shard Node’larını Kurun

Her shard için ayrı bir MongoDB instance’ı kurmanız gerekecek:

sudo mongod --shardsvr --replSet myShardRepl --dbpath /var/lib/mongo --port 27018

Aşama 5: Mongos Yapılandırma

Son adımda, mongos sunucularını kurmanız gerekir. Bu sunucular, istemciler ile shard cluster arasındaki ağ geçididir:

sudo mongos --configdb myConfigRepl/localhost:27019

Aşama 6: Cluster’ı Başlatın

Artık tüm komponentler kurulu olduğuna göre, mongodb shell üzerinden aşağıdaki komutları kullanarak cluster’ı başlatabilirsiniz:

sh.addShard("myShardRepl/localhost:27018");
sh.enableSharding("myDatabase");
sh.shardCollection("myDatabase.myCollection", {shardKey: 1});

Shard Cluster Yönetimi

Veri Dağılımını İzleme ve Yönetme

Verinin shard’lar arasında nasıl dağıldığını izlemek için sh.status() komutunu kullanabilirsiniz. Bu, her shard üzerinde depolanan veri miktarını ve dağılım durumunu gösterir.

Ölçeklenebilirlik ve Yeni Shard Eklemek

DB yükü arttığında, yeni bir shard eklemek gerekecektir. Yeni bir sunucu kurulumu yaparak, yukarıda gösterildiği gibi bir shard ekleyebilirsiniz. Bu işlem mevcut cluster yapılandırmasını kesintiye uğratmadan yapılabilir.

Yedekleme ve Kurtarma

Tüm cluster'''ı yedeklemek ve gerektiğinde kurtarmak için düzenli olarak snapshot almanız gerekmektedir. Yedekleme işlemleri sırasında sunucu performansının düşmemesi için güçlü bir dedicated sunucu seçeneği düşünülebilir.

MongoDB shard cluster'''larınızın optimum performansta çalışmasını sağlamak için bu adımlar rehberiniz olacaktır. Kurulumdan yönetime, ölçeklendirmeden yedeklemeye tüm süreçleri etkili bir şekilde yönetebilir ve yüksek ölçeklenebilirlik elde edebilirsiniz. Önerilen sanal sunucu çözümlerimizle kesintisiz bir veri tabanı yönetimi yapabilirsiniz.