Whitepaper extract: Cloud optimisation best practices: Finding your cloud's silver lining
This article provides an edited extract from our whitepaper ‘Cloud optimisation best practices: Finding your cloud's silver lining'.
In this whitepaper, we look at what happens after the first phase of migration to cloud is complete. Perhaps you have had some successful pilot projects, and a few quick wins in the bag? For many organisations, however, this then prompts the question – what comes next? Have we met the goals we set out when we started our cloud migration? Sometimes this will happen naturally, but it is more likely that cloud costs are higher than expected, test and dev environments have sprawled, your migrated applications are trickier to manage, and it has proven harder than expected to turn off those old servers and realise committed cost savings.
Whilst organisations can have infrastructure on the cloud, they may find that it is cumbersome and expensive to maintain. We recommend considering the following simple changes around optimisation and how you deploy and manage your infrastructure:
Leverage the cloud-native monitoring and cost management tooling to determine if you’re actually using the resource in its optimal setting. With infrastructure, you will typically pay for what you provision and not what you use, so consider whether you can resize or even switch to a different tier. You can also use this analysis to determine if you are on the right payment model and have the debate on pay as you go vs reserved instances. For example, if you see your infrastructure has quiet and busy periods, you could evaluate burst infrastructure or auto scaling which will help you to keep costs low and your utilisation of resources high.
We also recommend analysing the workload running on the resource to determine if this can be done more optimally by using Function or Platform as a Service (FaaS or SaaS) offerings from the cloud vendor. This will remove the need for infrastructure management completely.
Automate the infrastructure
Whilst containers are becoming increasingly popular, virtual machines are still a big part of an enterprise estate and, if not deployed correctly and efficiently, can take a lot of time to maintain and operate. Here, we recommend looking at automation. Leveraging infrastructure and configuration as code technologies like Terraform and Ansible can automate much of the manual configuration of virtual machines and even drive you towards demonstrating automated compliance.
Adopt immutable infrastructure
Taking automation a step further, moving to an immutable infrastructure will really drive a single ‘golden’ view of configuration for a resource. Rather than changing the virtual machine at a command line or graphical interface, you reprovision the resource as new with the new configuration. This approach guides you towards ever-green IT as you have full confidence in re-deploying your application with its new configuration. It will also moderate the risk of configuration drift.
Move up the stack
You’ve made the leap into cloud, so now let the provider do the heavy lifting for you. Leveraging Platform as a Service offerings mean the provider will pick up some of the harder elements of cloud management such as patching and maintenance whilst reducing service loss to you. However, be aware that the more provider offerings you consume, the more tied into the provider you will become. It is therefore worth ensuring that you have an exit strategy in place.
Containerise your apps
Containerising your applications can help you reduce dependencies on typical infrastructure concerns. Abstracting your application from the details of the underlying infrastructure can help you with portability and simplifying the solution. Most providers now offer application hosting in the form of either managed Kubernetes for large solutions, or ‘App engines’ for smaller solutions, making management of the underlying infrastructure even simpler. However, avoid containerising monolithic applications - whilst it is possible, it can be very difficult to manage and you may quickly find the effort to containerise has outweighed the possible benefits.
In a nutshell
When considering the architecture of services in cloud, there are multiple ways for organisations to optimise post-migration. Key to this is understanding and evaluating your workload to determine the optimisation roadmap to make your resources cheaper and management simpler.