If your organisation’s cloud migration isn’t going to plan, you’re not alone. The stats for a failing cloud migration vary between sources, but the fact is that many don’t deliver the expected outcomes. The process takes too long. Cloud costs are too high, and difficult to manage. Some migrations result in serious performance problems due to technical issues.
Whatever stage you’re at in cloud migration, if things aren’t going right, you need to take action. It is possible to get back on track, but first you need to understand where and why things are going wrong.
In my experience, there are six common issues that can lead to cloud migration problems. Here, we look at how to address them and turn a failing migration around.
1. Ensure expectations are aligned and realistic
Sometimes a ‘failing’ cloud migration is simply one that is still en route to success. It’s all about the perception of different stakeholders. This problem can often arise after a lift and shift migration. The approach might have been the best way to move from a datacentre to the cloud quickly, but services and applications still need to be modernised so they can take advantage of the new environment. In the meantime, running costs may be higher than before and there might be some confusion over billing.
The best way to avoid – or escape from – this scenario is to ensure all relevant parties understand what needs to be done to leverage cloud benefits. Transparency is key, and setting internal milestones can really help. When everyone understands that the physical move is just one part of the process, you can have more productive conversations about when to modernise workloads and how to continue the journey towards cloud native technologies.
2. Make time for subject matter experts to provide input
Modernising services and applications for the cloud can be complex and time consuming. When cloud engineers are working blind the process takes even longer, which can result in failure to meet migration deadlines. What’s more, engineers might not assign the correct resources to deployments. This can create a vicious circle of poor performance and operational challenges which impact the business and may harm the customer experience.
To avoid or fix this issue, it helps to have people who know the service or application on hand. They can explain how it was built and how it works as well as highlighting any dependencies or technical debt that might cause problems in the cloud. Clearly this will require some of their time before or during the migration, which comes at a cost. But it should be seen as an investment which leads to a quicker, smoother transition as well as better performance in the new environment.
3. Be pragmatic about what will work in the cloud
Sticking with the missed deadline theme, sometimes cloud optimisation simply takes too long. If it doesn’t deliver good enough outcomes to justify the time spent, it also results in wasted spend. Rather than focusing on a complex workaround, it might be better to take an entirely different approach, perhaps using an intermediary step on your way to a cloud native solution. For instance, opting for another cloud service may be more effective than attempting to reconfigure a monolithic data cube into a microservices architecture, and it will get you one step closer to your final goal.
Take Amazon Aurora Serverless. This new service allows a traditional database to be run in the cloud, automatically starting up, shutting down and scaling based on the application’s needs. However, moving to Aurora Serverless is a big step as it involves migrating to a different database engine, so care must be taken and testing needs to be completed. It may be more practical to migrate to Amazon Relational Database Service (RDS) initially, using an engine similar to the existing one. Once in AWS, various cloud native features support the conversion of a database to use Aurora, and meanwhile you benefit from AWS’ managed service. This approach might not result in large savings immediately, but it reduces spend and migration effort while the new service is trialled.
4. Factor in dual running costs, but manage the migration bubble
The business case for cloud migration should look at costs from a long-term perspective rather than only focusing on immediate spend. Nevertheless, a spike in short term costs can set alarm bells ringing, especially if business leaders haven’t been forewarned.
Moving from a datacentre environment to the cloud always results in a period of dual running costs which skews the initial spend. It’s important that all parties understand this. But steps can also be taken to minimise the duration of this migration bubble.
Lift and shift can be a good solution here, providing workloads are earmarked for modernisation at the earliest opportunity and expectations are aligned (as per the first point). Cloud vendors also have programs and services to help mitigate the impact. AWS’ Migration Acceleration Program (MAP) covers some of the dual running costs for enterprise organisations.
5. Build an understanding of how key technologies will work in the cloud
Many cloud migration failures are linked to performance problems, rather than cost or time management. Much of the time the issues are rooted in poor understanding of the technology that underpins applications.
Database malfunctions can be a common problem due to incompatibility with the new environment. This can be resolved after migration, but it’s painstaking work.
My colleague Bethan Guy has written blogs on Five things to ask about your database before cloud migration and How to move a relational database to the cloud. She underlines the importance of assessing databases before migration, so you can be confident that they will work as expected in the cloud. It pays to have an expert select and analyse key technologies to avoid stumbling blocks which might result in failure.
6. Invest in project management as well as cloud engineering
Cloud migration is a complex and disruptive process, in terms of the wider organisation not just the technology. To keep things moving, it’s important to have dedicated project managers on board. They can ensure stakeholders are fully engaged and updated, as well as coordinating inputs from subject matter experts and technology specialists. Working alongside cloud engineers, they can help avoid cloud migration failure by maintaining a strategic focus on factors that will impact time, cost and performance.
It’s never to late to get back on track
If you’re part way through a cloud migration program and it’s not going to plan, think about the above factors before you continue. Better upfront planning and preparation can make a big difference. If you’re already in the cloud and the outcomes are disappointing, it’s not too late to do something about it. Conducting a Well-Architected Review and/or investing in cloud modernisation services will empower you to turn the situation around.
Colin is a cloud solutions architect at DevOpsGroup and an AWS Partner Ambassador.