Mongodb cluster issue I would like to put in place a cluster with 2 instances of Graylog. Ideally, one of them will receive logs from servers in the cloud and the other one on premise will receive logs from servers that are running on the premise itself. After reading the documentation, I've understood that I have to put in place a replication of Mongodb instances. 
Mongodb recommended to have an odd number of servers in the cluster but I would like to ask whether or not it's mandatory for the cluster to function properly or would it be ok to make a cluster only with 2 servers?


At this point, it seems like my Graylog instance located in the cloud will get logs only from servers in the cloud. Same is applicable for the on premise Graylog instance which will get logs only from on premises servers. According to the documentation, the data from the primary will be replicated on secondary servers. However, I wonder whether or not primary servers will add the data over the data which is already existing on the secondary instance. Will it replace them instead?
Could you please let me know how can I get 1 instance in the cloud and one on premises yet reach all the of my data from one point/location?


Thank you for your help in advance
Mongodb recommended to have an odd number of servers in the cluster
  but I would like to ask whether or not it's mandatory for the cluster
  to function properly or would it be ok to make a cluster only with 2
  servers?


3 members (or a higher odd number) is really best, though. Replica sets go read only if a majority of the set isn't available, so if you lose a member in a two-member set the remaining member becomes read only.

You can run two full members plus an "voting-only" member (called an arbiter) as well. This is the smallest reasonably safe option for a replica set.

As per graylog documentation here We recommend to  deploy a MongoDB replica set.

MongoDB doesn’t have to run on dedicated servers for the workload generated by Graylog, but you should follow the recommendations given in the MongoDB documentation about architecture. Most important is that you have an odd number of MongoDB servers in the replica set.

In most setups, each Graylog server will also host an instance of MongoDB which is part of the same replica set and shares the data with all other nodes in the cluster.

As MongoDB Documentation here A secondary maintains a copy of the primary’s data set. To replicate data, a secondary applies operations from the primary’s oplog to its own data set in an asynchronous process. A replica set can have one or more secondaries.

The clients cannot write data to secondaries, clients can read data from secondary members

For your further ref here, here