If a replica set is set up in Mongo with only two nodes, an arbiter needs to be added to ensure that there is always a majority in a vote for a new master. The arbiter never becomes the master itself, it is purely there to provide the casting vote in an otherwise neck-and-neck election.

When connecting a client (in my case Java) to a MongoDB cluster, we are supposed to specify all the nodes of the cluster in the connection configuration:

List addrs = new ArrayList();
addrs.add( new ServerAddress( "localhost" , 27017 ) );
addrs.add( new ServerAddress( "localhost" , 27018 ) );

Mongo mongo = new Mongo(addrs);

Should the arbiter be included in the connection configuration? I would guess not as they:

don't have a copy of the data and will never become the primary node (or even a readable secondary)

(Taken from here)

...but I just wanted to double check!

Edit
Report