Application Modernization: Moving Legacy Apps to a Modern OS is the Best First MoveNigel Stokes
The Best First Move for Application Modernization
Lots of talk these days about Application Modernization from big vendors like Microsoft and IBM. When large vendors talk about App Modernization, they’re usually talking about the process of re-architecting a legacy app’s system infrastructure, internal architecture, and functionality.
At VirtaMove, we too are excited about application modernization. We’re excited about the potential of containers and about taking advantage of Kubernetes and other orchestration tools and building solutions around microservices. Microservices is software development, like a service-oriented architecture, that structures an app as a collection of loosely coupled services. It makes tons of sense to move from monolithic legacy apps to cloud friendly, scalable microservices. However, in the Windows Server world, these exciting technologies are possible only on WS2019. Even on WS2019, containers and Kubernetes are available only in early release forms.
So, how do we modernize and deal with monolithic, legacy Windows Server apps that currently run the business? There are thousands of legacy apps running in production. Consultants will often promise that you can easily modernize apps to take advantage of microservice architectures. However, Kubernetes and containerization expectations are likely overdone. App re-architecture takes years.
Production apps have been refined and improved by years of gradual change. Redeveloping functionality is painstaking and difficult. The app owners and builders who originally designed the legacy system are likely long gone. Staff turnover means nobody really knows the business logic in the app nor why it was implemented in a specific way. How do you rebuild an app that you don’t fully understand? Ground up re-architecture takes time, investment, and involves risk.
You’ll eventually need to modernize apps
While it’s true that redevelopment is challenging, another truth is that apps don’t last forever. You’ll eventually need to modernize. The standard Microsoft SQL and Windows Server life cycle is 10 years (5 for mainstream + 5 for extended support). At the end of the extended support there are no patches and security updates, which creates security and compliance problems. Rebuilds are more likely as new, disruptive software tech like cloud computing, microservices, and containerization becomes stable and readily available.
There are many great reasons to re-architect and move your apps and software stacks forward. However, the business case for app modernization needs to be compelling. The biggest ROI comes from not investing in risky projects with uncertain pay offs that just replace existing functionality with a new technical architecture.
Luckily, there is an alternative. It’s the best first step in application modernization. It’s relatively simple and cost effective, and IT can do it ahead of a big re-architecture effort. The best first move is modernizing by moving legacy apps to a modern operating system. A stateful re-install of legacy Windows Server apps.
Why up-level legacy apps to a modern OS?
While planning a full app modernization and re-architecture, you can take steps to mitigate project risks by moving Windows 2000, WS2003, and WS2008 apps to new virtual machines and servers running WS2012, WS2016, and WS2019. Recent surveys show that 50% of organizations are already running some apps on WS2016 and WS2019. Why not consider re-installing an old app on modern servers?
Moving legacy apps to modern servers and planning for full re-architecture can be done at the same time. Modern servers extend the useful life of legacy apps by years, giving you time for modernization and re-architecture.
Re-development takes time. You need to test apps, educate users on new systems, run in parallel, and finally cut over and roll out new architecture. You may need to run old and new versions of apps in parallel for months. Parallel testing minimizes disruption and ensures that all business requirements are met.
Modernization – does it always mean re-architecture?
When you move legacy apps from an unsupported OS to a modern OS on new hardware, you are taking the first step in modernizing an app. Nothing really changes in the app life cycle. Moving is essentially a stateful re-install of the app on a new, secure OS. You get to keep the current state of the app – patches, configuration data, – and extend its life on a new OS.
Upgrade cycles and the app modernization stay the same. You can re-architect, manage, and install app upgrades as usual. Development, test, and production roll-over stay the same. Full app modernization can be planned and implemented over time as needed. You’re not forced into app re-architecture simply because you want to run on modern servers.
Benefits of moving old apps to modern servers
There are tangible benefits from running legacy apps on new servers:
- A new operating system closes known security exposures on WS2000, WS2003, and WS2008 servers and compliance issues raised from running on an unsupported OS.
- Modern hardware improves system performance and lets users do more work.
- Stack components such as IIS and SQL Server can be modernized during the move to a new OS.
- A modern OS opens the opportunity of moving apps to the cloud, where they can be managed with cloud management tools and easily scaled to meet demand.
- The life cycle of apps can be extended, and normal modernization projects can occur to address new functional requirements, such as security, privacy, multi-tenancy, or Azure SQL on the modern OS.
Moving legacy apps to new, faster, secure servers is a smart move. It’s your best first step if your organization needs to buy time for full app re-architecture.
If you’d like to learn more about how VirtaMove can help you buy time to properly plan for re-architecture, give us a call, register for a free demo, or send us an e-mail. We’re always delighted to show you what we can do.