dataiotech Labs
dbaguidedbaguideDBAdataxtoolsdataopsphere
Home/Hata Teşhis Kütüphanesi/mongodb-mongonetworkerror-host-unreachable-timeout
MongoDB
MongoDB 6.0 - 8.0Ağ & Replika
7 dk okuma
MongoNetworkError: connection timed out / HostUnreachable / PoolClearedError

MongoDB Bağlantı Kopması: Port 27017 Engelleri, DNS SRV Hataları ve Havuz Boşalması (PoolClearedError)

Replica set primary düğümünün çökmesi, yanlış mongodb+srv dizesi ve ağ gecikmelerinde sürücünün bağlantı havuzunu temizlemesi; rs.status() ve kalıcı timeout ayarları.

İnceleyen:Kıdemli Veritabanı Mimarı & SRE (dataiotech Labs)
Test Edilen Sürümler: MongoDB 6.0 / 7.0 / 8.0

Operasyonel Doğrulama & Güvenilirlik Standardı

Son Teknik İnceleme: 2 Kasım 2026
Test Edilen SürümlerMongoDB 7.0.8, 8.0.1 (Atlas / Docker)
Gerekli YetkiclusterMonitor veya readAnyDatabase
Risk Seviyesi
HighBağlantı dizesinde replicaSet adı eksikse sürücü tek düğüm çöktüğünde failover yapamaz
Beklenen Çıktırs.status() çıktısında tüm replica üyelerinin PRIMARY veya SECONDARY durumunda olması
Geri Dönüş (Rollback) Planı:URI dizesine doğru replica set üyelerini ve parametrelerini ekleme
MongoDB Docs: Connection String URI Format
İlk 60 Saniye Teşhis Protokolü:

Hata mesajı semptomdur, kök neden değildir. Sunucuyu yeniden başlatmadan veya rastgele ayar değiştirmeden önce aşağıdaki "Nedeni ayırt eden tek sorgu"yu çalıştırarak gerçek senaryoyu netleştirin.

▸Belirti

İstemci MongoDB kümesine bağlanırken aniden tüm bağlantılar düşer:

plaintext
MongoNetworkError: connection timed out MongoServerSelectionError: HostUnreachable: No route to host PoolClearedError: Connection pool for 10.0.0.5:27017 was cleared because another operation failed with: MongoNetworkError

▸Sahada Ne Görürsün?

Primary düğüm çöktüğünde veya bakım yapıldığında uygulama yeni Primary seçilene kadar kilitlenir. DNS SRV (mongodb+srv://) çözülemediğinde tüm pod'lar CrashLoopBackOff'a girer.


▸Kök Neden Matrisi

OlasılıkKök NedenAçıklama
%50Failover Sırasında Havuz TemizlenmesiBirincil düğüm adım attığında (stepdown), sürücü eski soketleri kapatıp PoolClearedError fırlatır; retryWrites=true yoksa işlemler abort olur.
%30Firewall / Security Group 27017 EngeliYeni ayağa kalkan pod'un alt ağı port 27017 için güvenlik grubuna eklenmemiştir.
%20DNS SRV / replicaSet Parametresi EksikliğiBağlantı dizesinde replicaSet=rs0 parametresi unutulmuş, sürücü standalone modda davranmaktadır.

▸ACİL RUNBOOK (0-5dk)

bash
# 1. Replica set sağlığını ve üyeleri kontrol et mongosh --host "rs0/10.0.0.5:27017,10.0.0.6:27017,10.0.0.7:27017" --eval "rs.status()" # 2. Port erişimini test et nc -zv -w 3 10.0.0.5 27017 # 3. DNS SRV kaydını sorgula dig SRV _mongodb._tcp.cluster0.example.com

▸KALICI BLUEPRINT

  1. 1Doğru Bağlantı Dizesi Standardı: Sürücünün otomatik failover yapabilmesi için bağlantı dizesinde tüm parametreler açıkça tanımlanmalıdır:
plaintext
mongodb://node1:27017,node2:27017,node3:27017/prod?replicaSet=rs0&readPreference=primaryPreferred&retryWrites=true&serverSelectionTimeoutMS=5000&connectTimeoutMS=10000
  1. 1En Az 3 Düğümlü Replica Set: Asla 2 düğümlü küme kurulmamalı; en az 3 oylama hakkına sahip veri düğümü veya arbiter bulunmalıdır.

▸Doğrulama

javascript
rs.isMaster().ismaster || rs.hello().isWritablePrimary;

Diğer Veritabanı Hata Teşhisleri

Kriz anında başvurabileceğiniz diğer doğrulanmış hata rehberleri.

Tüm Hatalar (82)