There is no denying it. We are in a hybrid and multi-cloud world. IT departments have moved far beyond binary cloud-or-no-cloud decisions and are now more interested in learning which applications to use with specific cloud systems or leave on premises.
In the early stages, organisations were focused on trying to pick one cloud provider, get good at it and don’t worry about vendor lock in. Any new applications would just be built on the selected cloud platform. That was probably the strategy and probably still is the strategy for many companies.
However, organisations are complicated beasts. As cloud evolved, so did business units and they all chose the flavour that they thought would best suit their use case. So many organisations have evolved to a multi-cloud state, rather than being multi-cloud by design.
Organisations have also been moving infrastructure to the cloud for a while and now they have a deeper understanding of where cloud works and where it doesn’t. There is currently a slight trend in the market of companies moving some applications back to on-premises because it is more cost effective. They have learnt and are adjusting.
So now the key decision isn’t what cloud. It is where is the best location for a particular application to sit. On premises, Cloud A or Cloud B.
In a recent Nutanix report, it said IT managers like "cherry-picking infrastructure in this way to match the right resources to each workload as needs change results in a growing mixture of on- and off-prem cloud resources, like the hybrid cloud."
But there are challenges with this approach as well - organisations still need a well governed approach to how they manage this new world. Otherwise they risk finding themselves with a tangled and un-coordinated mess that will end up costing more and the benefits failing to be realised.
This blog post hopes to give some quick insights into the benefits, challenges and potential long term solutions in dealing with the multi-cloud scenario.
But first let’s quickly define multi and hybrid-cloud. Multi-cloud is where an organisation is using one or more public clouds. Eg. AWS and GCP. Hybrid cloud is the integration between on-premises data centers and a public cloud. Given not many organisations are totally cloud based except for start-ups, they often end up being in a hybrid multi cloud scenario.
Benefits of Hybrid/Multi-cloud
There are multiple benefits of a hybrid multi-cloud approach.
The first is that you get to maximise the strengths of each provider. They each have products and services that appeal. For an enterprise deeply entrenched in the Microsoft ecosystem, Microsoft Azure will be very appealing with Azure Active Directory, Office 365 and Microsoft MFA. Whereas you may want to leverage AWS for high-end computing or any of a number of its great tools, not to mention the fact they have a significant jump on other players with more resources in the market with these skills. Alternatively, Google Cloud Platform could make a lot of sense for big data or data warehousing projects.
The second is that you can spread Disaster Recover across multiple clouds and therefore reduce the risk of being affected by a single cloud’s outage. This would be a major consideration for organisations that need 24/7 uptime.
A third key benefit according to the recent Nutanix report is that 95% of respondents said it was essential or desirable for applications to move between different cloud environments and that flexibility and mobility are some of the main features they look for in a cloud system. ie. They don’t want to be locked into a single vendor’s products.
There are also some key benefits of keeping some applications on premises which is potentially reduced latency for mission critical applications and cost efficiency for known workloads.
So the key to maximising the benefits to is to figure out the best disposition for the application or group of applications. There are some general rules of thumb around where applications should sit:
Mission Critical apps with known workloads and minimal change might be best to keep on-premises to reduce latency and eliminate lock-in to any single cloud provider.
Apps that need Elasticity should take advantage of the cloud. In some cases the dev/test environments might need elasticity but the production could be stable so you could straddle both on premises for production and the cloud for dev/test.
Disaster Recovery just makes sense to store on the cloud, either across clouds but definitely across regions.
Apps that require frequent or rapid changes to keep up innovation can use some of the many devops related tools that are now available in the cloud to improve responsiveness.
Challenges of Hybrid/Multi-cloud
While there are benefits to a multi-cloud approach, nothing comes for free. The following are some of the key challenges.
The first is the need to have people with multiple skills in the organisation. For large organisations this might be feasible but for smaller organisations it is a big commitment. It also means that it will be harder for people to transfer from one project to another if they require different skills. We all know it is hard to be an expert in everything. That is the same for organisations as well. Sometimes it is better to just focus on one and get really good at it. That often will counterbalance the effect of not always going for the best fit.
The second is just the sheer amount of choice. It is hard enough to understand all the services of one cloud provider, let alone multiple.
The third and probably the biggest is managing IT infrastructure across multiple providers as it is a lot more complex and it is harder to keep across exactly what is running where.
Solutions to the Challenges
In a hybrid and multi-cloud situation an organisation will need a strong focus on governance which needs to sit over the top to make it manageable. It will need common management, monitoring, governance, and security layers. It is much easier to use a “single pane of glass” to view all resources across hybrid and multiple clouds as a single collection of common cloud services.
Also to reduce the complexity, establishing commonality across multiple public cloud vendors is critical. When it comes to using the cloud, especially in a hybrid-cloud or multi-cloud situation, consistency is absolutely key. Using three different tools to manage three different Clouds is onerous. Instead, pick a toolset that works across all of your environments and learn that tool well.
For each environment you should also be applying a consistent model when it comes to deployment, operations, security, monitoring, and cost management.
Luckily the cloud providers have come to the party to assist. The key services provided by the 3 key cloud providers that help provide this one pane of glass are:
AWS Outposts is a fully managed service where AWS delivers pre-configured hardware and software to the customer's on-premise data centre or co-location space to run applications in a cloud-native manner, without having to operate out of AWS data centres. The caveat is it manages just on-premises and AWS services together but doesn’t yet provide support for GCP or Azure.
GCP Anthos is a new platform which promises the ability to run applications on-premise, in the Google Cloud and, with other major public cloud providers like Microsoft Azure and Amazon Web Services (AWS).
Azure Arc leverages Azure Stack that allows an organisation to leverage various Azure cloud services from their own data centre and, in theory, ease the transition to the cloud. Applications can be built for the Azure cloud and deployed either on Microsoft cloud infrastructure or within the confines of their own data-centre without rewriting any code. Azure Arc then essentially extends Azure Stack to other public cloud platforms, including AWS and GCP in order to give customers a single view of all of their apps and services regardless of where they sit.
The Container movement
The services above help provide a consolidated view but IT managers also want to be able to move applications around different clouds if required. In order to achieve commonality across clouds and on premises and to avoid perceived vender lock in, organisations are also moving toward microservices and containerisation. This still avails themselves of the core benefits of the cloud such as on-demand scalability but provides portability.
Like the challenges above, the further abstraction away from hardware with containers can bring some additional strain on the skill requirement. This also needs consideration. The solutions available in this space like Terraform for infrastructure and OpenShift and D2iQ Konvoy for orchestration do provide solutions that simplify this hybrid and multi-cloud model.
Summary
The reality is that both options, one cloud or multi-cloud, have their benefits and challenges. However, hybrid is likely to be here to stay for quite a while yet. So if you find yourself in this hybrid multi cloud world, here are some key takeaways.
- Don’t think you need to move your entire infrastructure to the cloud. Sometimes applications just work better on premises for low latency and very stable applications.
- Migrate those applications that require fast turnaround of changes and unpredictable usage or require the niche services like AI to the cloud first.
- Pick the best of bread key services from across the providers and work through the IT management overheads if you can and the organisation size to do so. If you are a small to medium sized business then one cloud could be the best approach.
- Invest time into container based approaches for certain applications as that can get the benefits of cloud based scalability as well as be portable.
If you need more information around multi/hybrid cloud approaches, please contact us.
Your AWS, Azure and GCP monthly news roundup
Join our list to receive The Radar delivered directly to your inbox on a monthly basis.