Root or managed – how do you go about choosing?

Anyone who has ever managed their own website knows that this isn’t always easy. Depending on your tools and your level of expertise, accomplishing everyday tasks can be anything from smooth and painless to downright clunky. There’s a wide range of hosting solutions to choose from, including simple shared platforms and more advanced dedicated options – either managed or with full root access. But finding the right setup for your needs can be a challenge.

That’s why the CloudNX platform now lets you choose between unmanaged Root Servers and Managed Stacks, as well as pre-installed Applications on managed cloud hosting. But what sets these apart? And how do you know which option is best suited to your project?

On CloudNX, Root Servers are high-performance, scalable virtual machines that provide the user with root access. ‘Root access’ means complete freedom to make changes to any file on the server and install server-wide applications. In other words, each Root Server is totally customisable and something of a blank slate. 

Root Servers are unmanaged, so you need to install a complete set of software before you can put your VM to work on the task at hand. Fasthosts provides the Linux or Windows operating system, plus a cPanel or Plesk control panel if you need it, and the rest is up to you. This is perfect if you want to build a highly customised hosting environment, but less than ideal if you’re not familiar with the techy details of server management. 

With all that freedom, also comes the freedom to make mistakes. If you don’t have server admin experience, you’re likely to struggle with the setup and maintenance of your VMs, with potentially negative consequences for your projects. Even with the right technical skills, many individuals and businesses just don’t have the time to cope with server management on top of existing workloads.

CloudNX offers an alternative in the form of Managed Stacks, allowing you to simply bring your own code with no server admin required. But what exactly is a Managed Stack? 

A software stack or web service stack is a software bundle including the various components required to create and maintain dynamic web content. The term ‘LAMP stack’ is often used to represent the popular combination of a Linux operating system, the Apache web server, the MySQL database and the PHP scripting language, but this is just one of the many possible setups.

Stack is not a server

Managed Stacks are custom software bundles that include everything a web project needs to run on the CloudNX platform. To start coding, the user simply selects their preferred database, web server and scripting language, while Fasthosts takes care of the operating system, software updates and security. The ‘Managed’ part refers to everything Fasthosts does behind the scenes – the things that allow you to launch your software stack on a powerful, dedicated platform, without the admin that usually comes with it.

To launch a Managed Stack on CloudNX, you configure your resources the same way you would on a Root Server: by selecting the desired amount of CPUs, RAM and SSD storage. Next, you can create a custom stack by selecting your web server (Apache, NGINX or Passenger) and scripting language (Node.js, Perl, PHP or Python), plus a MariaDB or MySQL database. We provide the Linux operating system and deploy your complete stack in as little as 55 seconds. All you need to worry about is your code and any additional applications you install, not the platform they run on.

It’s important to know that Managed Stacks are NOT shared hosting – the resources you configure are 100 per cent dedicated to your projects alone, with absolutely no contention from other users – so no ‘noisy neighbour syndrome’. There are also no VMs to spin up, no operating systems to install, and no software updates to perform. We ensure that all your stack components are up to date and secure, with updates and patches automatically applied whenever required.

Another thing that sets Managed Stacks apart from Root Servers is that a stack is not a server, but instead exists across a cluster of servers, not just a single VM. This is all achieved via containerisation, with the various components of the stack each running in an isolated environment within a software container. If you select a stack with PHP, Apache and MySQL, for example, the scripting and web server will run in one container, while another one handles the database.

We use containers on our cloud hosting platform because they’re incredibly lightweight, agile and portable. Not only does this make them easy to host across a cluster of servers, it also provides major benefits in terms of resilience.

Containers are always spinning up in the background, distributing web traffic and ensuring no single point of failure. Scaling out automatically, containers help to ensure consistent performance for your website or application. And if a container hosting your project goes down for any reason, there’s always another one ready to take up the slack.

Makes sense

The value in CloudNX Applications is for customers looking for the benefits of Managed Stacks, but with the simplicity of content management within a single app – more like ‘bring your own content’ than ‘bring your own code’. Popular CMS applications including WordPress, Drupal and Joomla can be pre-installed on the platform on an optimised software stack. The user just needs to ensure that their chosen app is updated regularly, or that automatic updates are configured, and the rest of the stack is managed for them. CloudNX Applications are ideal for anyone who wants a specific CMS on a managed underlying platform, with dedicated performance and no shared resources.

Another benefit is that the customer can configure a single resource pool (CPUs, RAM and SSD storage) to power multiple projects across Managed Stacks and Applications. By default, the platform will automatically allocate processing power based on the demands of each project. The user can also choose to manually override this to ensure a guaranteed level of performance for projects expected to be more demanding. This is an example of the type of flexibility designed for customers who don’t need root access, but do require a bit more control over their projects.

If you need a customised server platform with very specific configurations, root access could be a must-have. But, as mentioned earlier, Root Servers need to be maintained by someone with server admin experience. Whether that means doing it yourself or having the right skills in your team, you’ll need to set aside some time to ensure the optimum setup. If you’re comfortable doing this, Root Servers give you everything you need to build your own powerful, complex and highly resilient cloud infrastructure.

With Managed Stacks and Applications, you don’t need the knowledge, time or resources required for server admin. But what do you lose with no root access?

While it’s true that root access is required for some applications, you might be surprised at just how much you can achieve without it. You’ll always have full control over your web server, scripting and database, with the flexibility to manage files via SFTP and install any additional software of your choice.

So, a managed service makes sense for developers who simply want to focus on their code, or businesses that perhaps don’t have server management in-house. As a general rule, if you have to ask about the difference between managed and unmanaged hosting, you should probably go for the managed option. That’s not to say that Managed Stacks are only for newbies or small companies – any organisation can take advantage of dedicated performance alongside managed updates and auto-scaling containers.

Still not sure? The most important differences between CloudNX Managed Apps and Stacks, and Root servers are listed in the table below (and you can find out more at https://www.fasthosts.co.uk/cloud-servers.)

Gavin Etheridge, Product Owner, Fasthosts