2016-06-07 16 views
5

Bir aws vpc'de bir docker konteynerinde (mongo: 3.0.11) çalışan bir mongodb replicaset'i var (bu özel durum için yalnızca bir düğüm, birincil).mongodb replica set master "stateStr": "REMOVED"

Bu sunucu her gece kapanıyor ve ertesi sabah yeniden başlıyor.

Birkaç ay sorunsuz bir şekilde çalıştıktan sonra, son birkaç hafta içinde birkaç hata yaşıyorum. Haftada bir veya iki kez mongo başlangıcında başarısız olur.

rs.status() döner

ve stateStr: REMOVED hata mesajı olarak:

errmsg : "Our replica set config is invalid or we are not a member of it" Mongo günlükleri bakarak ben vardır:

2016-06-07T12:01:48.724+0000 W NETWORK [ReplicationExecutor] getaddrinfo("database.my_vpc_dns.net") failed: Name or service not known

Bu hata olur, liman işçisi kap üzerinde basit bir yeniden başlatma düzeltecek, ancak bazen bu hatanın meydana gelmesine neden olan şeyin ne olduğunu anlamaya çalışıyorum.

+0

Yani, bu sorunu gidermek için sunucuyu yeniden başlattığınızda doğru mu? Mongo docker kabını yeniden başlatırsam – error2007s

+0

@ error2007s. Sorun gitti. Sunucuyu yeniden başlatırsam, sorunun çözüleceği garanti edilmez, çoğu durumda, evet, ancak sunucu başlangıçta aynı hata tekrar tekrar geldiğinde, gelecekte bir noktada. Bu hata sadece sunucu başlangıcında gerçekleşir. Ama dediğim gibi, bazen her sunucu başlangıcında değil. –

+0

Yani sunucuyu yeniden başlatırsanız veya sunucuyu durdurup başlatırsınız? – error2007s

cevap

0

Muhtemelen, yeniden başlatma sırasında çoğaltma yapılandırmayı kaybeder. Çoğaltma, sunucu başlatıldığında neden yükseltmeyi başaramadığı DNS nedeninin okunmasını kaybedebilir.

Yapabilecekleriniz, makineyi, yeniden başlatılmaması için birincil olarak Execute db.isMaster() adresindeki domain.my makineden doğrudan işaret etmektir.