The discussion revolves around making use of added storage volumes for hosting Discourse. ljpp sought guidance on best practices for utilizing additional storage, as upgrading a VPS plan often results in small increments of disk space. Falco mentioned a potential performance penalty when using additional storage volumes.
ljpp and ljpp shared experiences with ScaleWay’s storage setup, where a secondary volume is delivered separately from the main OS volume. They inquired about the best approach to utilize the additional storage.
Falco provided suggestions for making use of the added capacity, including cloning the discourse_docker directory, pointing shared folders to another file system, and changing Docker configurations.
A significant performance difference was noted between the base disk and add-on storage volumes. codinghorror found that add-on storage volumes are half the speed of the base disk, while michaeld reported a 9-fold difference in performance using fio benchmarking.
codinghorror, sam, and michaeld recommend using the add-on disk for files (public/uploads), Docker images, and containers, as well as backups. Symlinking /var/lib/docker to the additional volume is also suggested.
For most VPS providers I’ve seen, if you need more storage space you either:
Upgrade your whole VPS plan.
Buy additional storage volumes.
Now if you are running out of disk space, but your CPU/RAM resources are plenty, the additional storage volumes are likely the more cost efficient option. But these appear as a new volume on your server, while Discourse keeps running on the original volume where you installed it in the first place.
I could not find a guide or documentation on best practices how to either move Discourse to the newly added larger volume or what is the best way to make use of the added capacity?
For example on Digital Ocean if you upgrade your VPS plan you generally get 2x CPU and RAM, but only 10/20GB increments in disk space.
Well, personally I always offload images/attachements to S3,so in my case we would be talking about base system and database. Low cost VPSs tend to come with tiny SSDs.
This question remains. I benchmarked ScaleWays new intensive workload server, and seems like a viable option for Discourse hosting.
But again, theiy deliver the SSD storage as 50+150GB, so how to make use of the additional 150GB volume? By default Discourse-setup will install to the 50GB system volume.
This should be a trivial issue, but I’d need some practical guidance on best the approach? Installing Discourse to the additional volume would be the most straight forward way, even though it leaves some of the 50GB system volume unutilized.
And a plain old consumer SATA SSD, but a good one, like the Samsung 950 pro.. though to be fair most name brand-ish SATA SSDs are close to this as it is a mature market:
The difference is much worse. dd is not a good tool to measure performance if you want the results to be anything near what is happening in real life. dd performs a long sequential write, and that is not what your Discourse server is doing.
On the other hand, don’t overestimate the impact of a not so fast disk: if you use the add on disk only for files (public/uploads ) then nginx caching and kernel filesystem caching will save your day and you’ll still have a pretty decent performance.