By Sameer Karmarkar, Co-Founder & CTO at CloudHedge
By Rahul Chugh, Sr. Partner Solutions Architect at AWS
More than ever, cloud adoption and application modernization projects run with tight deadlines. It’s imperative to quickly demonstrate value-add and results.
Many vendors, services, and resources are available to migrate one or two applications at a time, but most struggle to migrate a large number of applications with the same skill level and outcomes. A tool that provides effective application discovery and containerization for a large number of apps was missing.
In this post, I will recap the challenges involved in transforming applications to cloud-native, describe the CloudHedge transformation tools, and explain how they manage the transformation of different types of applications.
CloudHedge’s automated discovery, containerization, and deployment tools can reduce the time and effort required to transform large numbers of monolithic, on-premises Windows applications to cloud-native services running on Amazon Web Services (AWS).
Challenges of Transforming to Cloud-Native
Monolithic on-premises applications that are built with different underlying development frameworks and Windows operating system (OS) versions are tedious to refactor and containerize.
A big-bang rewrite or complete refactoring of these Windows applications is economically difficult to justify and poses business risk.
Application migration projects can be successful if they address the following problems:
- Difficulty discovering applications resting on age-old legacy architecture like Windows 2003/2008, and migrating them to modern, supported operating systems.
- Tracking optimum usage of Windows licensing, and providing suggestions during the process without slowing the speed of migration.
- Difficulty migrating AIX applications to open systems without affecting development timelines.
- Absence of developer tooling support for cloud migration and container migration.
- Complications moving workloads that can be re-platformed to open systems to reduce operating expenses.
CloudHedge Transformation Tools
CloudHedge helps businesses make the technology investments during the digital transformation journey that enable you to meet long-term goals, such as creating programmable API-based commercial models for products or services.
A fully automated workload discovery and assessment solution, CloudHedge provides an application-centric view of your IT landscape. With CloudHedge, you can skip the lift and shift migrations that have been the norm for several years. Instead, the automated nature of our transformation tools makes it efficient to containerize a large number of application services quickly.
CloudHedge allows IT teams to define multiple waves of applications/hosts andtransform each wave in your modernization journey whenever you are ready for it.
To see our automated application migration tools in action, watch our demo on YouTube.
Figure 1 shows the stages in the CloudHedge method for discovering and transforming legacy applications.
Figure 1 – CloudHedge methods and tools for digital transformation.
Three tools in the CloudHedge portfolio are particularly relevant to the transformation of your applications to cloud-native:
- CloudHedge Discover
- CloudHedge Transform
- CloudHedge Cruize
Before explaining how the transformation works, we’ll summarize each one of these tools.
CloudHedge Discover analyzes existing workloads and applications to identify those that would benefit from transformation to cloud-native. You can use it to understand the nature of applications and make informed decisions by looking at in-depth data about interdependencies and application behavior.
Discover creates recommendations by evaluating current deployments for possible optimizations. Moreover, the Discover tool automatically discovers Windows and Linux applications within minutes instead of days or weeks.
Application owners can override Discover’s recommendations to suit their business purposes and, instead, classify the applications according to these migration actions:
- Retain (no change)
- Retire (discard)
- Reinvest (migrate, containerize, modernize, rewrite, etc.)
- Refactor application services
CloudHedge Transform is a patent-pending technology that suggests the best way to transform existing applications so they are easier to install, distribute, and adopt on AWS. In minutes, Transform can suggest whether to convert your application into containers, functions, microservices, or scalable clusters, without the need to write custom scripts.
CloudHedge Cruize operationalizes AWS services so you can consume AWS features in a systematic, standardized manner. Cruize makes it easier to set up deployment targets like Amazon Elastic Container Service (Amazon ECS) and Amazon Elastic Kubernetes Service (Amazon EKS) with and without AWS Fargate.
Transformations for Windows Applications
CloudHedge Discover can select from multiple strategies to identify and re-platform Windows applications in a way that is best suited to your business. The table in Figure 2 lists the target environments we recommend for each version of Windows your applications are running on.
|Secure Windows Configurations||Target Windows Configurations|
|OS versions||.NET framework versions||Container OS||Deployment clusters|
|.NET framework v2.0|
.NET framework v3.5
.NET framework v.4x
Figure 2 – Supported target environments for cloud-native applications.
For Applications Running on Windows IIS
CloudHedge Discover identifies the complete configuration of applications running on Windows IIS, starting from Windows 2003 onwards. Discover further identifies the technologies such as .NET, Java, PHP, and/or Python the applications rely on, and suggests transformation approaches for each technology.
If CloudHedge identifies an application has a tight dependency on one of these underlying technologies, it identifies the most suitable target OS and web server to replace them.
If an application is strategic, CloudHedge enables you to transform the application from legacy to cloud-native using a step-wise approach with intermediate technologies.
CloudHedge also migrates applications with different types of security and resource configurations for the target containers by, for example, specifying integrated Windows authentication, and separate application pools for different applications.
For Applications Running on Older Versions of Windows
CloudHedge supports discovery of applications running on Windows 2003 and later. For applications that are running on older .NET frameworks and Windows 2003 or later, CloudHedge removes the dependency on the underlying OS licensing wherever possible.
For .NET core adoption, CloudHedge helps optimize your resource utilization. Depending on the application, we can reduce operating expenses by 20 percent or more.
For Java Applications Running on Windows
CloudHedge detects all of the top Java application servers (JBoss, Weblogic, Websphere, and Tomcat) that your applications use, and determines whether they can be executed on a container base OS that uses fewer resources.
If you must continue running a particular application in Windows OS, CloudHedge recommends the best version of Windows to use and how to re-platform it for the target OS. This approach optimizes license resources and costs for Windows OS, and reduces the cost of migrating your application to a supported Windows OS.
In addition, our customer success teams help assess your source code for sticky sessions and/or other architectural considerations, and devise strategies to deploy them correctly on a target AWS region and/or service.
Deployments and Operations
To make it easy for development teams to adopt the newer services on AWS, CloudHedge provides a command line interface (CLI) interface, and an API to integrate into the programmable pipelines of your choice.
CloudHedge blueprints enable developers to evolve how their applications use resources after the migration. For example, the blueprint could specify that v3.1 be the version that is deployed, v3.2 be the version that is currently being tested, and versions v3.5 and v4.0 be used for development.
CloudHedge containerizes applications, making them portable enough to be standardized across deployments. In addition, the ongoing updates and upgrades to the production applications are automated by integrating them with DevSecOps tools like SonarQube. This approach ensures they can be distributed, managed, and updated in a standard, repeatable manner.
Customer Use Case: Moveable Container Storage
Moveable Container Storage (MCS) has a network with more than 60 locations in the United States, and it wanted to move its Windows workloads to AWS.
MCS had an IIS-based ASP monolithic .NET application hosted on a Windows 2008 R2 Server. Having an over-provisioned infrastructure and enterprise license, it was an expensive setup to maintain, as it generated high billing.
The environment also lacked features such as auto scale up/down, auto start/stop, and efficient management of infrastructure. To make matters worse, Microsoft had announced the end of support for its Windows 2008 R2 Server by January 2020, so it was necessary for MCS to move to AWS for business continuity.
MCS used CloudHedge Discover to analyze its current setup and gather all relevant information, which included application, database, current and historical data, web services, and schedulers.
Based on the information it gathered, Discover generated recommendations to simplify the containerization process. CloudHedge then installed prerequisites like IIS, the .NET framework, and Visual Studio to run the application. MCS then used CloudHedge Transform to securely containerized the ASP monolithic .NET application.
Finally, MCS used CloudHedge Cruize to deploy the application to AWS within minutes.
To simplify the process and save additional resources, CloudHedge’s CloudLease feature was implemented to auto start/stop application instances with respect to working hours.
Post containerization, the MCS application performed with these capabilities:
- Fault tolerant, highly available, and ready to scale based on the requirements.
- 60 percent reduction in total cost of ownership (TCO) compared to its previous setup.
- Its CloudLease feature enabled it to start/stop Amazon EC2 instances, ensuring efficient management of the application on AWS.
Instead of using a lift and shift method for transforming your monolithic legacy applications from on-premises to the cloud, you can use CloudHedge tools to migrate applications in a systematic, predictable, and time-bound fashion.
CloudHedge’s automated modernization and containerization tools set up your transition to AWS and containers so your investment in time and money produce positive returns.
To learn more about migrating Windows workloads to AWS, download the CloudHedge App Modernization guide.
CloudHedge – APN Partner Spotlight
CloudHedge is an APN Select Technology Partner that specializes in transforming on-premises monolithic applications to cloud-native at scale.
*Already worked with CloudHedge? Rate this Partner
*To review an APN Partner, you must be an AWS customer that has worked with them directly on a project.
from AWS Partner Network (APN) Blog: https://aws.amazon.com/blogs/apn/how-cloudhedge-transforms-legacy-web-applications-on-windows-to-containerized-cloud-native-on-aws/