Cloudron makes it easy to run web apps like WordPress, Nextcloud, GitLab on your server. Find out more or install now.

Possibly moving email and box data to external disk, any tips or caveats?

  • Hi all,

    As I continue to lose disk space on my VPS due to the high email volume in particular, I'm considering following the documentation to move email / box data (since they can't be separated at the moment, hope that comes in the future though as I'd love to just off-box email only). Specifically the "# (optional) move out box data to the external disk" section of it.

    Was looking for any tips or anything I may need to consider before making such a change. I have a few questions in particular, but open to anything else I may be missing or not considering:

    1. Downtime: To make the change, I need to shutdown Docker which I assume will then bring down all of the sites and services I have running on my Cloudron, and moving over roughly 25 GB of mail and box data will probably take quite a while (maybe 10-20 minutes), so I'll essentially have downtime for that period of time, correct? I'm pretty certain there's no avoiding downtime here (at least not within reason to avoid it), but just want to be certain. Any proposals that'd be fairly easy to do to avoid downtime? Don't want to do anything too costly or complicated if downtime will only be 20-ish minutes, as I'll just make the change very late at night and with all my clients being notified, should be acceptable to them.

    2. Disk type / performance: SSD vs HDD? At my provider, they have regular HDD for external disks at half the price of the speedier SSD for external disks. I know SSD is preferred of course for databases and anything needing high performance, but not sure if this is required for box data & emails, I assume that'd be perfectly fine on a regular HDD? Trying to avoid paying double the price if there's not going to be any noticeable performance need for the SSD (because after conversion of USD to CAD the difference is actually more than double the price, haha). App data and databases and everything stay on the main VPS after the changes still, right, unless I were to also move out platform data?

    3. Are there any tips? Caveats I should be aware of? Has anyone done this change already, and if so, did it all go very smoothly for you?

    4. Any noticeable impact to performance at all with this setup, where the emails and box data will be on an external disk? I suspect not, but want to double-check.

    One thing I think I'll do is test this out by spinning up a fresh Cloudron server (or cloning my existing one perhaps), then running through the process to make sure I know it well first. I want to make sure I'm comfortable with this before the change if I can be to avoid doing this for the first time on my live server when it's a fairly large impact to services from what I can tell.

  • Possible alternative: It looks like my VPS provider can allow me to also simply increase the disk space alone by creating a bootable volume off the existing server, expanding it, and spinning up a new VM with that base image, they'll then cover the cost of what's included in the plan and I pay the extra, so for example my plan comes with a 70 GB SSD, and if I made a 100 GB volume, I'd be paying for just 30 GB of it added to the plan. I may explore this route as an alternative so I can avoid any Cloudron changes, it is all "local" instead of on external disks, and just seems like a better route possibly especially if it can help me avoid downtime or lessen it a bit (since I'd basically be setting it all up separately and then just pointing the floating IP to it when it's ready to go). Just debating which way to go, may try both for a trial run.

  • Staff

    It's definitely easier to just resize the disk (i.e your second post). Otherwise, you have to create symlinks (carefully). This is only a 10 minute task. Just stop box code, docker, copy over all files, move boxdata temporarily to say boxdata.old and symlink boxdata to new location and start it up again.

    I don't have any benchmarks for SSD vs HDD. Of course, SSD is always going to be faster. Note that box code itself hardly accesses boxdata directory to know any difference. So, it's down to email. It's really hard to tell if this has any significant impact.

  • @girish thank you for the insight. If I am extending the existing drive then I'll make sure to keep it SSD as it already is, I may try HDD if going the first route though. I'll check, this isn't an easy task for extending the existing disk unfortunately, but this may be the better move. Of course the drawback there I guess is I'll be paying for way too much disk space and need to do it all over again if I for example lose one of the clients that are using so much email space (as email is the single biggest consumer on my server right now, by a lot). I'll have to run some tests. 🙂