2013-10-14 14 views
17

yapılandırırken replset yapılandırmasında kendini bulamıyorum Linux üzerinde ayarlanmış 3 düğümlü bir mongodb kopyası yapıyorum. Sunucuyu başlatmak için aşağıdaki yapılandırmaAşağıdaki hatayı alma: 13279: yineleme kümelerini

'u kullanıyorum. Sunucuya başladım ve mongo komut satırı aracını kullanarak sunucuya bağlandığımda. Ben rs.initiate() ne zaman

Ben

{ 
    "info2" : "no configuration explicitly specified -- making one", 
    "me" : "host-ip:27017", 
    "ok" : 0, 
    "errmsg" : "couldn't initiate : can't find self in the replset config" 
} 

Ben initiate() için cfg sağlayan ve hala aynı hatayı alıyorum çalıştı olsun.

Günlük dosyasında bu gösterilir.

Mon Oct 14 13:27:33.218 [rsStart] replSet info no seed hosts were specified on the --replSet command line 
Mon Oct 14 13:27:34.118 [conn1] run command admin.$cmd { replSetInitiate: { _id: "rs1", members: [ { _id: 0.0, host: "host-ip:27017" } ] } } 
Mon Oct 14 13:27:34.118 [conn1] replSet replSetInitiate admin command received from client 
Mon Oct 14 13:27:34.118 [conn1] replSet replSetInitiate config object parses ok, 1 members specified 
Mon Oct 14 13:27:34.118 [conn1] getallIPs("host-ip"): [ip address] 
Mon Oct 14 13:27:34.118 BackgroundJob starting: ConnectBG 
Mon Oct 14 13:27:34.118 [conn1] User Assertion: 13279:can't find self in the replset config 
Mon Oct 14 13:27:34.119 [conn1] replSet replSetInitiate exception: can't find self in the replset config 
Mon Oct 14 13:27:34.119 [conn1] command admin.$cmd command: { replSetInitiate: { _id: "rs1", members: [ { _id: 0.0, host: "host-ip:27017" } ] } } ntoreturn:1 keyUpdates:0 locks(micros) W:230 reslen:107 1ms 

zaman bu hatayı gidermek için ne yapmalıdır?

+0

Not kontrol ad ile adres. – user2704732

cevap

11

bind_ip için 127.0.0.1 belirlemeyin, (örneğin 192.168.0.1 gibi) makinenin adını veya ip adresine bind_ip değiştirin.

+2

Yukarıda benim için çalıştı, bind_ip olarak 0.0.0.0 kullanılır. – beeman

+0

emin, yerel IP adresleri sadece test ortamı içindir. –

+0

0.0.0.0, ne yorum yaptığını açıkladı. En azından 2.6'da – lostintranslation

21

CentOS makinesinde MongoDB Çoğaltma Seti'ni başlatamadım.

http://docs.mongodb.org/manual/tutorial/deploy-replica-set

mongodb

var rsconfig = {"_id":"rs1","members":[{"_id":1,"host":"127.0.0.1:27011"}]} 

sonra (..) rs.add rs.initiate(rsconfig) için
rs.initiate() 


{ 
    "errmsg":"couldn't initiate : can't find self in the replset config on port 27011" 
} 

Sonra sadece ikinci JSON nesnesi parametresi

replset veya bir kerede

var rsconfig = {"_id":"rs1","members":[{"_id":1,"host":"127.0.0.1:27011"},{"_id":2,"host":"127.0.0.1:27012"},{"_id":3,"host":"127.0.0.1:27013"}]} 
Ben benim/etc/hosts dosyasını kontrol edilip localhost için bir giriş ve bu özel sunucu ip var: Birkaç saniye sonra sonra print(JSON.stringify(rsconfig))

rs.initiate(rsconfig) 

ile

onay

rs.status() 

enter image description here

+0

rsconfig seçeneği günümü kurtardı, teşekkürler – daver

İlgili konular