Performing Replication on Mongo DB Issues

I am new to mongo and try the sample code given in tutorail on the Mongo website, but ran into a problem below. According to the textbook, this should be pretty simple. But I get the --replSet error, although I gave it when creating the host. I am developing on a standalone machine using fedora linux. Also can someone tell me how can I reset / delete the host after they are assigned.

[ root@localhost data]# mongod --replSet cluster1 --port 27019 --dbpath /data/r2 Tue Mar 13 18:40:40 Tue Mar 13 18:40:40 warning: 32-bit servers don't have journaling enabled by default. Please use --journal if you want durability. Tue Mar 13 18:40:40 Tue Mar 13 18:40:40 [initandlisten] MongoDB starting : pid=9849 port=27019 dbpath=/data/r2 32-bit host=localhost.localdomain Tue Mar 13 18:40:40 [initandlisten] Tue Mar 13 18:40:40 [initandlisten] ** NOTE: when using MongoDB 32 bit, you are limited to about 2 gigabytes of data Tue Mar 13 18:40:40 [initandlisten] ** see http://blog.mongodb.org/post/137788967/32-bit-limitations Tue Mar 13 18:40:40 [initandlisten] ** with --journal, the limit is lower Tue Mar 13 18:40:40 [initandlisten] Tue Mar 13 18:40:40 [initandlisten] db version v2.0.3, pdfile version 4.5 Tue Mar 13 18:40:40 [initandlisten] git version: 05bb8aa793660af8fce7e36b510ad48c27439697 Tue Mar 13 18:40:40 [initandlisten] build info: Linux domU-12-31-39-01-70-B4 2.6.21.7-2.fc8xen #1 SMP Fri Feb 15 12:39:36 EST 2008 i686 BOOST_LIB_VERSION=1_41 Tue Mar 13 18:40:40 [initandlisten] options: { dbpath: "/data/r2", port: 27019, replSet: "cluster1" } Tue Mar 13 18:40:40 [initandlisten] waiting for connections on port 27019 Tue Mar 13 18:40:40 [websvr] admin web console waiting for connections on port 28019 Tue Mar 13 18:40:40 [initandlisten] connection accepted from 127.0.0.1:56898 #1 Tue Mar 13 18:40:40 [rsStart] replSet can't get local.system.replset config from self or any seed (EMPTYCONFIG) Tue Mar 13 18:40:40 [rsStart] replSet info you may need to run replSetInitiate -- rs.initiate() in the shell -- if that is not already done Tue Mar 13 18:40:50 [rsStart] replSet can't get local.system.replset config from self or any seed (EMPTYCONFIG) ^CTue Mar 13 18:41:00 [rsStart] replSet can't get local.system.replset config from self or any seed (EMPTYCONFIG) Tue Mar 13 18:41:00 got kill or ctrl c or hup signal 2 (Interrupt), will terminate after current cmd ends Tue Mar 13 18:41:00 [interruptThread] now exiting Tue Mar 13 18:41:00 dbexit: Tue Mar 13 18:41:00 [interruptThread] shutdown: going to close listening sockets... Tue Mar 13 18:41:00 [interruptThread] closing listening socket: 6 Tue Mar 13 18:41:00 [interruptThread] closing listening socket: 8 Tue Mar 13 18:41:00 [interruptThread] closing listening socket: 9 Tue Mar 13 18:41:00 [interruptThread] removing socket file: /tmp/mongodb-27019.sock Tue Mar 13 18:41:00 [interruptThread] shutdown: going to flush diaglog... Tue Mar 13 18:41:00 [interruptThread] shutdown: going to close sockets... Tue Mar 13 18:41:00 [interruptThread] shutdown: waiting for fs preallocator... Tue Mar 13 18:41:00 [interruptThread] shutdown: closing all files... Tue Mar 13 18:41:00 [interruptThread] closeAllFiles() finished Tue Mar 13 18:41:00 [interruptThread] shutdown: removing fs lock... Tue Mar 13 18:41:00 [conn1] end connection 127.0.0.1:56898 Tue Mar 13 18:41:00 dbexit: really exiting now [ root@localhost data]# mongo myhost:27017 MongoDB shell version: 2.0.3 connecting to: myhost:27017/test Tue Mar 13 18:41:13 getaddrinfo("myhost") failed: Name or service not known Tue Mar 13 18:41:13 Error shell/mongo.js:86 exception: connect failed [ root@localhost data]# mongo localhost:27017 MongoDB shell version: 2.0.3 connecting to: localhost:27017/test > > > config = {_id: 'cluster1', members: [ ... {_id: 0, host: 'myhost1:27017'}, ... {_id: 1, host: 'myhost2:27018'}, ... {_id: 2, host: 'myhost3:27019'}] ... } { "_id" : "cluster1", "members" : [ { "_id" : 0, "host" : "myhost1:27017" }, { "_id" : 1, "host" : "myhost2:27018" }, { "_id" : 2, "host" : "myhost3:27019" } ] } > rs.initiate(config); { "errmsg" : "server is not running with --replSet", "ok" : 0 } > exit bye 

thanks

+6
source share
3 answers

When starting mongod you need to specify other hosts participating in our replication set, for example. when starting myhost1 you must add the following argument:

 --replSet cluster1/myhost2:27018,myhost3:27019 

Just something I noticed, /data is under root / , did you check the rights right? Better change something like ~/temp/something during testing to avoid pitfalls.

+2
source

First, you get a warning that the host is configured. You are sure that DNS is correct if you do not resolve them in the / etc / hosts file. File

  127.0.0.1 myhost1:27017 127.0.0.1 myhost2:27018 127.0.0.1 myhost3:27019 

Also I think that you forcedly shut down the mongod process, kill the whole process that will remove this error. Error shell / mongo.js: 86 if this did not work. You may need to delete the data of this file / mongodb.lock

+2
source

you need to associate the host with / etc / hosts

server "host1"

  • 127.0.0.1 localhost
  • 0.0.0.0 host1
  • 1.1.1.1 host2

server "host2"

  • 127.0.0.1 localhost

  • 1.1.1.1 host2

  • 0.0.0.0 host1

0
source

Source: https://habr.com/ru/post/910595/


All Articles