MongoDB Güvenlik, İzleme ve amp; Yedekleme (Mongodump)

İçindekiler:

Anonim

MongoDB'deki temel kavramlardan biri, veritabanlarının yönetimidir. Güvenlik, yedekleme, veritabanlarına erişim gibi önemli hususların tümü, veritabanı yönetimi söz konusu olduğunda önemli kavramlardır.

Bu eğitimde öğreneceksiniz -

  • Veritabanı güvenliğine genel bakış
  • Yedekleme Prosedürleri - Mongodump
  • Mongodb İzleme
  • Dizin Oluşturma ve Performansla İlgili Hususlar

MongoDB Güvenliğine Genel Bakış

MongoDB, veritabanlarına güvenlik mekanizmaları tanımlama yeteneğine sahiptir. Varsayılan olarak, herkesin MongoDB'deki her veritabanına açık erişime sahip olmasını istemezsiniz, bu nedenle MongoDB'de bir tür güvenlik mekanizmasına sahip olma gerekliliği önemlidir.

Veritabanlarında güvenliği uygularken en iyi uygulamalar aşağıdadır

  1. Erişim denetimini etkinleştirin - Kullanıcıları oluşturun, böylece tüm uygulamalar ve kullanıcılar, MongoDB üzerindeki veritabanlarına erişirken bir tür kimlik doğrulama mekanizmasına sahip olmaya zorlanır.

  2. Rol tabanlı erişim kontrolünü yapılandırın - Bazen, gerekli olabilecek ve rollerde toplanabilen mantıksal bir izinler grubu olabilir. Kullanıcılar daha sonra bu rollere atanabilir.

  3. MongoDB'yi TLS veya SSL gibi bir çeşit şifreleme protokolü kullanacak şekilde yapılandırmayı deneyin. Bu protokoller, istemci ile mongo DB ortamı arasında akan trafiği şifrelemek için kullanılabilir.

  4. Denetimi yapılandırın - Yöneticilerin normalde kimin ne yaptığını bilmesi gerekir, bu da sorunları daha sonra analiz etmeye yardımcı olur. En iyi yol, MongoDB'de denetimi etkinleştirmektir.

  5. MongDB sunucu örneğini, sunucu ortamında gerekli kaynaklara erişimi olan ayrı bir kullanıcı kimliği ile çalıştırın.

Mongodb Yedekleme Prosedürleri - Mongodump

MongDB ile çalışırken, MongoDB içindeki verilerin herhangi bir nedenle bozulma ihtimaline karşı her zaman bir yedekleme prosedürünün yürürlükte olduğundan emin olmak önemlidir.

Aşağıda MongoDB'de bulunan yedekleme mekanizmaları verilmiştir

  1. Temel Veri Dosyalarını Kopyalayarak Yedekleme - Bu muhtemelen en kolay mekanizmadır, yapılması gereken tek şey MongoDB'nin bulunduğu veri dosyalarını kopyalamak ve ideal olarak başka bir sunucu olması gereken başka bir konuma kopyalamaktır.
  2. Bir Veritabanını mongodump ile Yedekleme - Mongodump aracı, bir MongoDB veritabanından verileri okur ve yüksek kaliteli BSON dosyaları oluşturur. Dikkate alınması gereken şey, eğer veri seti hacim olarak büyükse, o zaman mongodump çok yoğun kaynak gerektirebilir, bu yüzden bu sorunu azaltmak için, yardımcı programın ikincil bir sunucuda çalıştırılması gerektiğidir.
  3. MongoDB Bulut Yöneticisi Yedekleme - MongoDB Bulut Yöneticisi, MongoDB ortamından oplog verilerini okuyarak MongoDB çoğaltma kümelerini ve parçalanmış kümeleri sürekli olarak yedekler. MongoDB Cloud Manager, belirli bir replika kümesi veya parçalanmış küme için herhangi bir zamanda bir geri yükleme oluşturabilmesi için oplog verilerini depolayarak zaman içinde bir kurtarma noktası oluşturabilir.

Mongodb İzleme

İzleme, MongoDB'deki en kritik idari faaliyetlerden biridir. Bunun nedeni, ortaya çıkabilecek olası sorunlar için ortamı izleyerek daha proaktif olabilmenizdir.

Aşağıda, izleme uygulamasına ilişkin bazı örnekler verilmiştir

  1. mongostat sunucuda gerçekte kaç kez veri tabanı işleminin (ekleme, sorgulama, güncelleme, silme vb.) gerçekleştiğini söyleyecektir. Bu, sunucunun ne kadar yük işlediği konusunda iyi bir fikir verecektir ve sunucuda ek kaynaklara mı yoksa yükü dağıtmak için ek sunuculara mı ihtiyacınız olduğunu gösterecektir.
  2. mongotop, bir MongoDB örneğinin mevcut okuma ve yazma aktivitesini izler ve raporlar ve bu istatistikleri koleksiyon bazında raporlar.
  3. MongoDB, teşhis ve izleme bilgilerini basit bir web sayfasında gösteren bir web arayüzü sağlar. Http: // localhost: 28017 web yönetim yardımcı programını açmak için yerel sunucunuzda aşağıdaki url'ye göz atabilirsiniz.
  4. Kabuktaki serverStatus komutu veya db.serverStatus (), veri tabanının durumuna, disk kullanımı, bellek kullanımı, MongoDB ortamına kurulan bağlantılar vb. İle ilgili ayrıntılarla ilgili bir genel bakış döndürür.

MongoDB İndeksleme ve Performans Değerlendirmeleri

  1. Dizinler herhangi bir veritabanında çok önemlidir ve MongoDB'de arama sorgularının verimliliğini artırmak için kullanılabilir. Belgenizde sürekli olarak arama yapıyorsanız, arama kriterlerinde kullanılan belge alanlarına dizinler eklemek daha iyidir.
  2. Döndürülen sorgu sonuçlarının sayısını her zaman sınırlamaya çalışın. Bir belgede 2 alan adınız olduğunu, ancak belgeden yalnızca 2 alan görmek istediğinizi varsayalım. Ardından sorgunuzun tüm alanları değil, yalnızca ihtiyaç duyduğunuz 2 alanı görüntülemeyi hedeflediğinden emin olun.
  3. Belirli alan değerlerini görüntülemek istiyorsanız, sorguda yalnızca bu alanları kullanın. Koleksiyondaki tüm alanlar zorunlu değilse sorgulamayın.

Özet:

  • Veritabanındaki verilerin güvende tutulmasını sağlamak için veritabanlarında güvenlik uygulamak çok önemlidir.
  • Kullanıcılar, createUser komutuyla veritabanında oluşturulabilir. Kullanıcılara veritabanının kendisinde belirli izinler vermek için belirli roller atanabilir.
  • Tüm veritabanları için yöneticiler eklenebilir, sadece belirli veritabanları içindir. Bu, userAdmin veya userAdminAnyDatabase rolü verilerek elde edilir.
  • MongoDB ortamınızı her zaman yedekleyin, böylece herhangi bir felaket durumunda veriler kolayca kurtarılabilir.
  • Daha proaktif olmak için her zaman MongoDB ortamınızı izleyin ve sorunları ortaya çıkmadan önce görün.