When it comes to legacy modernization, you’ve got options
Tom Manning, Practice Manager, Cloud Native Development & IoT, Rackspace Technology
The global competitive marketplace never slows, yet keeping up — ensuring that systems are agile, flexible and up-to-date — can be anxiety-inducing.
Cloud migration allows businesses to stay current and adapt to quickly shifting market needs, yet too many companies resist or delay the decision to migrate legacy applications to the cloud. It’s folly, when you consider that moving to the cloud is the most powerful, easiest, and often most cost-effective action a company can take to move forward, freeing up unavailable resources and reducing time and cost concerns.
At Rackspace Technology® we usually see application modernization customers when they’re experiencing some or all of these Typical Legacy App Problems:
- Usage spike. It's a common situation many growing companies find themselves in. You’re anticipating a huge usage spike, with a new customer coming on board. Or similarly, you are a retailer and an audience surge is heading straight for you.
- Talent scarcity/price. You cannot find or afford developers for legacy (COBOL / PHP) apps, as they are more experienced and therefore becoming more expensive. Alternatively, you could look offshore, but that comes with its own significant challenges.
- Taking forever. Your developer onboarding process is too slow to be effective. We heard about a recent customer whose process took nine months to fully onboard each developer.
- Can’t scale. The application can only scale vertically, and it’s reaching its limits.
- Aging frontend. Your app has earned its reputation in the market for being behind the times. Although the company’s business rules are the best in the industry, they’re losing out due to poor UI/UX or fixing issues with an architecture that is no longer feasible.
Cloud migration benefits:
In considering whether to migrate a legacy app to the cloud, an organization’s primary reason will likely be to REDUCE RISK in various forms by:
- Reducing costs. Amazon Web Services (AWS) makes it much easier to make highly available and fault tolerant applications with multi-AZ and multi-region on tap, with a pay-as-you-go model
- Reducing operational complexity. No more worrying about sourcing hardware or managing a data center that is not core to your business
- Reducing difficulty in finding engineers to work on their legacy codebase. An often overlooked, but key reason for migration to the cloud is that it becomes easier to recruit staff. Cloud computing is the future and this is where developers want their experience. The reality is that COBOL and PHP developers are increasingly harder to come by, and the pool of developers who want to work with cloud technologies is growing.
- Reducing the cost and time to market of new features. Well-architected applications built on cloud technologies are often extensible through the addition of microservices and lack that legacy inertia.
- Removing barriers to scalability and growth. Cloud-native architectures are almost infinitely scalable.
- Increasing the security of your application. Legacy applications were not designed to address modern security concerns. Best practices around encryption, single-sign-on with identity federation, and data security access protocols have changed in recent years. Nobody wants to make headlines with breaches in corporate security.
- Increasing the robustness of your application. Cloud providers make it much easier to implement highly available or fault-tolerant applications that are resilient across multiple data centers or even across a continent.
Many are unaware of the full spectrum of options available
Oftentimes when a company is considering a legacy app migration, it will also believe, erroneously, that the migration’s going to cost a fortune. The company has nowhere else to turn; the migration itself will be complex, time-consuming, and expensive. They’re going to have to pick up everything and move it to the cloud, meaning a complete re-architecture. This is not the case!
What to do?
Faced with upgrading their own aging app architecture or infrastructure, many don't realize there's an intermediate path — one where the process can be done in stages with less risk. They have the opportunity to gradually adopt these newer cloud technologies.
Three options to consider
Option 1: Containerize the legacy app; lift and shift to the cloud.
Sub-option: Migrate DB2 or flat files to AWS Aurora.
- Vertical scaling much easier; might be able to handle the new load in time for the market requirements
- Can be performed relatively quickly with relatively low risk (the database migration might be a challenge)
- Application will get an extended lifetime
- If the database is a bottleneck, DB2 to Postgres or MySQL (AWS Aurora) could require a rewrite of the data access layer which is complicated, specialized, and error-prone. Stored procedures could be a problem. This may not be possible at all
- Some modifications still required, but the existing team can handle it
- Doesn't solve the underlying legacy problem, it just kicks the can down the road
Option 2: Rearchitect the app to be serverless and cloud-native
- Modern serverless app will be modular, event-driven, able to scale to infinity
- Updated UI/UX looks better in the marketplace
- Modern languages that are more cloud-friendly enable easier staffing, faster onboarding
- Modern serverless architectures are well understood and there are countless up-to-date resources available
- Years/decades of functional and technical debt left behind
- Typically leaves a business with a much better understanding of how their business operates
- Time-consuming - might miss the market in time
- Can be expensive
Option 3: Lift and shift the entire application, then rearchitect only parts of the application that are key to achieving business goals
- Combines the benefits of both approaches with little drawback
- Reduced overall risk
- Current team can slowly reskill with help from experts in cloud technologies and cloud-native development techniques
- May be difficult to integrate new technologies into older parts of the application
Experienced architects who have seen and solved all three options in many companies can help you quickly uncover your other pros and cons and offer you a detailed modernization roadmap with time and cost estimates to support your decision-making process.
Some risk is involved if you need help understanding all your use cases. On the other hand, if you need help understanding all your company's use cases, that's a risk in itself. Turn this over to a professional and by the end you will understand how your company's business really works.
You may encounter resistance from the current team, who may feel threatened, unwilling, or unable to learn new paradigms. It’s not uncommon for a company to uncover risk related to this. On the other hand, some may be excited about learning new things and expanding their skills; employee retention may increase.
And always keep in mind: maintaining the status quo is an even greater threat to the business.
Next step: Engage Onica by Rackspace Technology™ for a migration assessment
Moving databases and systems from an on-premises data center to the cloud requires strategy. A successful migration requires advanced planning and the use of dedicated resources. You must take special care to limit disruption, avoid downtime and ensure your data remains secure throughout the migration. This is especially true in highly regulated industries like healthcare, defense, and finance.
When you don’t have the expertise or resources to create and execute a migration strategy, engaging a partner like Onica by Rackspace Technology™ from the start is the best way to help ensure the successful completion of your AWS migration.
The Onica team’s certified cloud migration consultants first conduct a holistic assessment of your IT environment and business goals. Next, we create a customized cloud migration strategy. A dedicated team of architects and engineers will then execute your strategy, migrating your databases and workloads while minimizing the risk of downtime. After your migration is completed, we can continue to work with you through ongoing management and optimization services.
Rackspace University Enables Execution through Education
January 23rd, 2024
Our Journey through AWS re:Invent 2023 Highlights — Recap and Wrap-up
December 7th, 2023