MongoDB replication providing continuous service during maintenance operations

February 20, 2014

We are running our production MongoDB replica set on Linux servers using the Ubuntu distribution. The other day we wanted to do some changes in our hardware configuration which would cause reboot of the servers. Before we used MongoDB for data persistence, we would have had to perform this maintenance operation at an hour with lowest possible usage of the system and we would have had to notify our customers and apologize for the inconvenience of the loss in service. The time of the day would probably have been really inconvenient for the guy performing the operation as well.

With the replication features of MongoDB we were able perform these actions during office hours by restarting the servers in the replica set one by one and no one noticed anything at all, except for us who were monitoring the replica set closely during the operation.

MongoDB replication will also allow us to perform “rolling upgrade” of our database servers, which will allow us to upgrade to the upcoming version 2.6 without any outage in our service. That suits us well, since we as far as possible want to keep up with the latest releases of the software we use in order always have access to the latest technology and to avoid accumulating “release gaps”.

Check out our whitepaper on how we migrated Bricknode Financial System from a SQL database system to MongoDB.