Getting started moving applications to the cloud

Your company can realize significant benefits by moving valuable Java™ applications from older architectures to cloud environments. Use this guide to help you understand and begin planning to migrate and modernize your applications.

Understanding application modernization

Application modernization encompasses a number of different strategies for improving and accelerating your application runtime and development practices. Although there are different starting points and endpoints for each application's journey, the general process involves updating and moving monolithic Java applications from traditional WebSphere Application Server hosting environments into more streamlined, Liberty-based containers in the cloud and Kubernetes environments.

Application modernization is a journey, following these basic steps:
  1. Determine a long-term strategy for your overall modernization effort.
  2. Assess an inventory of your company's application estate.
  3. Develop a plan for each of the applications you want to modernize. Understanding the complexity, cost and criticality of each application helps drive your plan to fit your overall strategy.
  4. Implement your application modernization plans.
The modernization plan you ultimately decide on for each application could include any or all of the following steps:
  • Runtime modernization: the migration of your application source code to a modern, cloud- and container-optimized runtime. Typically this step means migrating from traditional hosting environment, such as WebSphere Application Server, to WebSphere Liberty or Open Liberty.
  • Operational modernization: moving your application to a Kubernetes-based container orchestration platform, such as Red Hat OpenShift Container Platform. You can move to an on-premises environment or a public, private, or hybrid cloud environment, with portability to move between these options.
  • Architectural modernization: refactoring your application into individually deployable and scalable cloud-native microservices.

Even if you only want to containerize your existing traditional WebSphere Application Server applications for cloud or Kubernetes environments (a process referred to as "lift and shift"), you will reap benefits of operational modernization as you can manage all your applications in a single management plane..

Developing a modernization strategy

As you develop your modernization strategy, your applications fall into various categories. Applications in the legacy category are the applications that are cost-prohibitive to be modernized or do not provide significant business value. Applications in the strategic category are mission critical applications that run your business and that you plan to invest future development resources.

For your strategic applications, Liberty is IBM's composable, cloud-ready server, which provides support for the latest Java SE, Java or Jakarta EE, and security enhancements. Liberty is poised to run your business applications targeted for your modernization journey.

For legacy applications, use traditional WebSphere Application Server v8.5.5 and v9.0.5 to provide stability through the lifespan of those applications. One strategy is to isolate each application in its own traditional WebSphere Application Server base container and deploy it to your cloud environment. This change affords you operational modernization, so you can manage all your applications in a single management plane.

Assessing your applications

To better understand your applications as you prepare for modernization, here is the primary set of tools with details of the key functionality each provides:
  • IBM Cloud Transformation Advisor
    • Scans WebSphere Application Server traditional profiles to inventory your deployed applications.
    • Analyzes applications to help move them from a WebSphere Application Server traditional profile to containerized deployments.
    • Provides complexity ratings and development cost estimates.
    • Provides options for deploying to different cloud runtimes (Open Liberty, WebSphere Application Server Liberty, and WebSphere Application Server traditional).
    • Generates a customized set of deployment artifacts for the selected target runtime.
    • Also evaluates applications running on Oracle WebLogic, Apache Tomcat, or JBoss application servers.
  • IBM WebSphere Application Server administrative console - Liberty readiness analysis
    • Runs in the WebSphere Admin Console versions 8.5.5.16+ and 9.0.0.11+.
    • Analyzes selected enterprise applications and their configuration for moving to Liberty.
    • Produces exportable reports that can be shared with teammates
  • IBM WebSphere Migration Toolkit for Application Binaries (binary scanner)
    • Command-line tool to analyze applications running in a traditional WebSphere Application Server, Liberty, and other competitive servers.
    • Provides inventory, analysis, evaluation, and configuration reports to facilitate moving an application to Liberty or to a later version of traditional WebSphere Application Server.
Consider the following:
  • IBM Cloud Transformation Advisor produces a full view of your application estate, including more comprehensive application and configuration analyses, provides important planning information, and generates customized assets and recommendations for cloud environments.
  • The IBM WebSphere Application Server administrative console provides a quick first look toward making your applications Liberty compatible without installing extra tools. This analysis can be run from the enterprise applications view.
  • The binary scanner is a good option when you have a few applications to scan or when you do not have access to the application source code. The scanner can quickly provide insights into your applications and their configuration. It generates the same reports as the reports displayed in the admin console and Transformation Advisor.
As you assess each application, determine whether it can be migrated to Liberty, whether to containerize it and deploy it to a cloud, or should it be left out of your modernization efforts until it is decommissioned. Consider the following questions during your assessment:
  • Will you retire or replace the application within 3 to 5 years?
  • Can you modify the applications source code?
  • Is the application critical to your business?
  • Does it use technologies that require it to be upgraded before it can be moved to a new platform?

Creating an application modernization plan

Once you know your modernization strategy, which includes both operational and application changes, and your applications are assessed, it is time to plan what to do with each of the applications.

Start by considering the applications that you identified as being strategic. For these applications, various modernization options are available. For your first attempts, plan to work with small, simple applications in order to build your expertise and confidence, then tackle bigger and more complex applications.

The various application modernization options include:
  • Runtime modernization.
    • You can choose to move applications to Liberty for use of a right-sized, container-ready application server.
    • As you move your applications to Liberty, it might be necessary to update your application to run on a later Java or Jakarta EE level. Use the WebSphere Application Migration Toolkit to identify and make the necessary changes. Where possible, the tool includes quick fixes to facilitate the changes.
  • Operational modernization.
    • You can choose to place the application in a traditional WebSphere Application Server container that can then be managed along side Liberty and other application stacks.
    • You might choose to leave the application running in its current traditional WebSphere Application Server environment, but want to containerize it.
  • Architectural modernization.
    • Either during or after runtime and operation modernization, you might decide to refactor your application into microservices. IBM Mono2Micro offers suggestions for refactoring your application and generates microservice code that you can use as a starting point.
    • You could decide to build a new replacement application.

Implementing your application modernization plan

As you carry out your plan, consider the following items.

Links to all resources and downloads

Links to all products, software, tools, and instructional resources mentioned in the previous sections are collected here.

Links to products and components of WebSphere Hybrid Edition:

Links to other software and tools:

Links to instructional resources: