Bir Linux VPS üzerinde MongoDB yönetimi kurulum, yapılandırma, güvenlik ve performans optimizasyonunu içerir.

Bir Linux VPS üzerinde MongoDB yönetimi, bu güçlü NoSQL veritabanının tam potansiyelinden yararlanmayı hedefleyen geliştiriciler ve sistem yöneticileri için esastır. Kurulum ve yapılandırmadan güvenlik ve performans optimizasyonuna kadar, iyi yönetilen bir MongoDB kurulumu, uygulamalarınız için güvenilirlik, ölçeklenebilirlik ve verimlilik sağlar.

Kılavuzumuzda yer alan kapsamlı adımları takip ederek, MongoDB örneğinizin yalnızca çalışır durumda olmasını değil, aynı zamanda güvenli ve performans için optimize edilmiş olmasını da sağlayabilirsiniz. Kurulum, kimlik doğrulama, erişim kontrolü ve kaynak yönetiminde en iyi uygulamaları uygulamak, veri odaklı uygulamalarınız için sağlam bir temel oluşturacaktır. Düzenli izleme ve bakım, veritabanınızın yanıt verebilirliğini ve gelişen taleplere karşı dayanıklılığını garanti eder.

MongoDB yönetimini kolaylaştırmak isteyenler için, rutin görevleri verimli bir şekilde yönetmek için otomasyon araçları ve betikleri kullanmayı düşünün. Ayrıca, MongoDB Compass veya NoSQLBooster gibi grafik arayüzleri keşfetmek, özellikle karmaşık sorgular ve veri görselleştirmeleri için veritabanı etkileşimlerini basitleştirebilir. Bu araçları iş akışınıza entegre ederek, verimliliği artırabilir ve yüksek performanslı bir MongoDB ortamını sürdürebilirsiniz.
Baeldung.

1. Linux VPS Üzerinde MongoDB Kurulumu

MongoDB, apt (Debian/Ubuntu için) veya yum (CentOS/RHEL için) gibi paket yöneticileri kullanılarak kurulabilir.

Ubuntu/Debian için

  1. Paket listesini güncelleyin:
    sudo apt update 
    sudo apt upgrade -y
  2. MongoDB GPG anahtarını içe aktarın:
    curl -fsSL https://www.mongodb.org/static/pgp/server-6.0.asc | sudo gpg --dearmor -o /usr/share/keyrings/mongodb-server-keyring.gpg

    **Eksik genel anahtarı eklemek için aşağıdaki komutu çalıştırın:

    sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys B00A0BD1E2C63C11
    veya

    **Anahtarı manuel olarak içe aktarmak için bu komutu çalıştırın:

    wget -qO - https://pgp.mongodb.com/server-5.0.asc | sudo tee /etc/apt/trusted.gpg.d/mongodb-server-5.0.

    Anahtarın başarıyla eklenip eklenmediğini kontrol edin:

    gpg --dry-run --quiet --import --import-options import-show /etc/apt/trusted.gpg.d/mongodb-server
  3. MongoDB deposunu ekleyin:
    Ubuntu:
    echo "deb [signed-by=/usr/share/keyrings/mongodb-server-keyring.gpg] https://repo.mongodb.org/apt/ubuntu $(lsb_release -cs)/mongodb-org/6.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list
    Debian:
    echo "deb [signed-by=/etc/apt/trusted.gpg.d/mongodb-server-5.0.asc] https://repo.mongodb.org/apt/debian bullseye/mongodb-org/5.0 main" | sudo tee /etc/apt/sources.list.d/mongodb-org-5.0.list
  4. MongoDB’yi kurun:
    sudo apt update
    sudo apt install -y mongodb-org
  5. MongoDB’yi başlatın ve etkinleştirin:
    sudo systemctl start mongod
    sudo systemctl enable mongod

CentOS/RHEL için

  1. MongoDB deposunu ekleyin:
    sudo tee /etc/yum.repos.d/mongodb-org-6.0.repo <<EOF
    [mongodb-org-6.0]
    name=MongoDB Repository
    baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/6.0/x86_64/
    gpgcheck=1
    enabled=1
    gpgkey=https://www.mongodb.org/static/pgp/server-6.0.asc
    EOF

  2. MongoDB’yi kurun:
    sudo yum install -y mongodb-org
  3. MongoDB’yi başlatın ve etkinleştirin:
    sudo systemctl start mongod
    sudo systemctl enable mongod

2. MongoDB’yi Güvence Altına Alma

Varsayılan olarak, MongoDB localhost (127.0.0.1) üzerinde dinler. Güvence altına almak için:

Kimlik Doğrulamayı Etkinleştirin

  1. Bir yönetici kullanıcısı oluşturun:
    mongosh
    use admin
    db.createUser({
    user: "admin",
    pwd: "StrongPassword",
    roles: [{ role: "root", db: "admin" }]
    })
  2. MongoDB yapılandırma dosyasında kimlik doğrulamayı etkinleştirin:
    sudo nano /etc/mongod.conf

    güvenlik bölümünü bulun ve ekleyin:

    security:
    authorization: enabled
  3. MongoDB’yi yeniden başlatın:
    sudo systemctl restart mongod

Dış Erişimi Kısıtlayın

  1. MongoDB’yi yalnızca localhost üzerinde dinleyecek şekilde değiştirin:
    sudo nano /etc/mongod.conf

    Değiştirin:

    bindIp: 127.0.0.1
  2. Sadece belirli IP’lere izin vermek için UFW (Ubuntu) veya FirewallD (CentOS) kullanın:
    sudo ufw allow from YOUR_IP to any port 27017

3. MongoDB Yönetimi

MongoDB Hizmet Durumunu Kontrol Edin

sudo systemctl status mongod

MongoDB’yi Yeniden Başlatın

sudo systemctl restart mongod

MongoDB’yi Durdurun

sudo systemctl stop mongod

MongoDB’nin Başlangıçta Başlamasını Sağlayın

sudo systemctl enable mongod

4. MongoDB’de Veritabanlarını Yönetme

MongoDB’ye Bağlanın

mongosh

Bir Veritabanı Oluşturun

use mydatabase

Veritabanlarını Göster

show dbs

Bir Koleksiyon Oluşturun

db.createCollection("users")

Veri Ekleyin

db.users.insertOne({ name: "John Doe", age: 30, email: "john@example.com" })

Veri Bulun

db.users.find()

Bir Veritabanını Silin

use mydatabase
db.dropDatabase()

5. Yedeklemeler ve Geri Yüklemeler

MongoDB Veritabanını Yedekleyin

mongodump --db=mydatabase --out=/backup/

MongoDB Veritabanını Geri Yükleyin

mongorestore --db=mydatabase /backup/mydatabase/

6. Performans Optimizasyonu

Daha Hızlı Sorgular İçin İndeksleme

db.users.createIndex({ email: 1 })

Performansı İzleme

db.serverStatus()

Bellek Kullanımını Sınırlayın

wiredTigerCacheSizeGB değerini /etc/mongod.conf dosyasında değiştirin:

storage:
wiredTiger:
engineConfig:
cacheSizeGB: 1

Bağlantı Havuzlamasını Kullanın

/etc/mongod.conf dosyasını değiştirin:

net:
maxIncomingConnections: 1000

7. Günlükler ve Hata Ayıklama

MongoDB Günlüklerini Görüntüleyin

sudo journalctl -u mongod --no-pager | tail -n 50

Hata Günlüklerini Kontrol Edin

sudo cat /var/log/mongodb/mongod.log

8. MongoDB’yi Kaldırın (Gerekirse)

Ubuntu/Debian için

sudo systemctl stop mongod
sudo apt purge -y mongodb-org*
sudo rm -r /var/log/mongodb /var/lib/mongodb

CentOS/RHEL için

sudo systemctl stop mongod
sudo yum remove -y mongodb-org*
sudo rm -r /var/log/mongodb /var/lib/mongodb

Sonuç

Bir Linux VPS üzerinde MongoDB yönetimi, uygun kurulum, güvenlik güçlendirmesi ve performans optimizasyonu gerektirir. Bu adımları takip ederek, MongoDB veritabanınızın verimli ve güvenli bir şekilde çalışmasını sağlarsınız. 🚀

MongoDB yönetimi için otomasyon betikleri konusunda yardım ister misiniz? 😊