How to Increase a Mongo DB Size

August 28, 2015 1k views
MongoDB MEAN Ubuntu


Given that we are limited to the disk size for droplets how are we supposed to increase the storage size for MongodDb. My example here is a MEAN-Stack powered webapp that connects to a MongodDb. How are we supposed to increase the size of the database.

My use case here is an app that stores allot of data for small number of customers. So the IOPS the db needs to provide are low but the storage requirement is high.

I don't see buying a more expensive droplet as an option as that also scales the CPU / Memory requirements on the Droplet. In AWS I could setup a MongodDb box and I can change the drive size with a small amount of downtime. When / if I want to shard then that is possible for me but if I'm just running out of space on the drive then I can easily scale the disk size for a single MongodDb box.

Doesn't seem like there are any other options in digital ocean than to create a sharded MongodDb from the start.


1 Answer

Hey there David,

Right now, we do not offer droplets except in the set sizes that are shown on https://digitalocean.com/pricing/. There are a lot of reasons behind this. Hopefully soon, we'll have a storage solution that could help out in your case.

In the mean time, you've got a few options. The easiest is just to resize to a larger droplet. This is going to offer the best performance option if you need more space. Second, you could shard across multiple droplets.

Another option would be a little wacky but would work out ok. One of the projects I use pretty heavily on my personal droplets is GlusterFS. You could use gluster to stick together the spare space you have on multiple droplets to create a network share you can mount up. There is a basic tutorial on doing this here. There is going to be a performance hit on doing this so I would strongly suggest doing some testing before committing to go this route.

If this was my project and my data, I'd resize to a larger droplet but now you have a few options you can look at :)

Happy Coding!
DigitalOcean TechOps

by Justin Ellingwood
GlusterFS is a technology that allows you to create pools of storage that are accessible from the network. Using this software, in this article we will discuss how to create redundant storage across multiple servers in order to ensure that your data is available regardless of if one server goes down.
Have another answer? Share your knowledge.