In today’s Architect’s Corner, we speak with Sander Cruiming, owner and founder of Cloud Provider, a cloud hosting, infrastructure, and services company in the Netherlands. Sander spoke to us about why he started offering containers as part of his hosting services to get his customers up and running their stateful applications quickly. You can also find a PDF of this case study here.
Key technologies discussed
Infrastructure – On-premises private cloud
Container runtime – Docker
Orchestration – ComputeStacks
Stateful Services – MySQL, MongoDB, WordPress, Magento, WooCommerce
Can you tell me a little bit about CloudProvider.NL and your role?
I’m the owner and founder of Cloud Provider. Cloud Provider is a cloud hosting, infrastructure, and services company founded in 2008. We currently have around 800 customers, most who are in the Netherlands. Until now, we mainly offered virtual machines or VMs, but recently, we’ve added a container offering into the mix, powered by the ComputeStacks container platform and of course Portworx.
Why did you decide to start offering containers?
As I mentioned, we’re a hosting provider so we offer shared hosting for simple, small use cases, and virtual machines for larger use cases. A lot of customers start with shared hosting but if they grow and they get more traffic, or their website gets more files, or they have an application that needs more resources or more flexibility than shared hosting provides, usually they move to a virtual machine. But for most customers, this migration is quite complicated. They went from a shared hosting environment that we manage, to a virtual machine that they had to install, configure, and maintain themselves.
On the other hand, a container is really the perfect solution for these customers because they don’t have to maintain anything anymore.
They can just select any of the images that are available through DockerHub and get up and running really quickly.
What are the most common applications that your customers run?
Websites are the most common, with a lot of WordPress in particular. Secondly, we have a lot of e-commerce stores, mainly based on WooCommerce or Magento. Additionally, we have a third category of custom applications, basically, developers that build a PHP or Ruby app that they need to run. These apps will often include a database like MySQL or MongoDB which is also hosted on our platform.
What sorts of challenges have you faced while researching existing container and storage platforms?
The main challenge that we had was ensuring the scalability of the platform. Our customers have the option to scale from one to 10 or even to 100 containers instantly. They have a slider they can move up to do that. That’s pretty simple for stateless apps, but for stateful apps like WordPress, for this feature to function properly, it’s necessary that the data volume is available to multiple physical hosts at the same time.
In other words, that data volume should be attached and mounted to multiple servers at the same time. This requirement was something that a lot of storage vendors simply did not offer.
For instance, multiple containers might be able to access the volume as read-only at the same time, but you couldn’t have multi-writer. Portworx solved that problem for us.
You mentioned that you are using the ComputeStack container platform. Can you tell us a little about that?
Most of our customers are not very tech savvy. They have real businesses that rely on a website or an e-commerce store, but they aren’t interested in being technologists.
The Amazon Web Services and Googles of the world are too complicated. Our customers just want to be able to bring their application container and run it in a way that is performant, scalable, and highly available.
ComputeStacks is a product that offers just that. It’s catered to the needs of a shared hosting customer because it’s just very simple to use and very easy.
What advice would you give someone else who was thinking about building a container platform that needs to be able to support stateful applications like WordPress, Magento, and WooCommerce?
I would recommend looking at a solution like Portworx because if we had tried to do it all ourselves, we never would have gotten this product to market. It would be too difficult to build and too difficult to maintain.
Portworx just gave us the solutions to multi-writer containers, high availability, backups, and more out of the box so we could get started very quickly.
In the end, the quality of our product was higher and the time to market was lower.