Skip to main content
AI
  • Get started with AI

    • Red Hat AI

      Accelerate the development and deployment of enterprise AI solutions.

    • AI learning hub

      Explore learning materials and tools, organized by task.

    • AI interactive demos

      Click through scenarios with Red Hat AI, including training LLMs and more.

    • AI/ML learning paths

      Expand your Red Hat OpenShift AI knowledge using these learning resources.

    • AI quickstarts

      Focused AI use cases designed for fast deployment on Red Hat AI platforms.

    • No-cost AI training

      Foundational Red Hat AI training.

  • Featured resources

    • Red Hat OpenShift AI
    • Open source AI for developers
    • AI product application development
    • Open source-powered AI/ML for hybrid cloud
    • AI and Node.js cheat sheet

Red Hat AI Factory with NVIDIA

Red Hat AI Factory with NVIDIA is a co-engineered, enterprise-grade AI solution for building, deploying, and managing AI at scale across hybrid cloud environments.

Learn
  • Self-guided

    • Documentation

      Find answers, get step-by-step guidance, and learn how to use Red Hat products.

    • Learning paths

      Explore curated walkthroughs for common development tasks.

    • Guided learning

      Receive custom learning paths powered by our AI assistant.

    • See all learning
  • Hands-on

    • Developer Sandbox

      Spin up Red Hat's products and technologies without setup or configuration.

    • Interactive labs

      Learn by doing in these hands-on, browser-based experiences.

    • Interactive demos

      Click through product features in these guided tours.

  • Browse by topic

    • AI/ML
    • Automation
    • Java
    • Kubernetes
    • Linux
    • See all topics
  • Training & certifications

    • Courses and exams
    • Certifications
    • Skills assessments
    • Red Hat Academy
    • Learning subscription
    • Explore training
Build
  • Get started

    • Red Hat build of Podman Desktop

      A downloadable, local development hub to experiment with our products and builds.

    • Developer Sandbox

      Spin up Red Hat's products and technologies without setup or configuration.

  • Download products

    • Red Hat Enterprise Linux
    • Red Hat AI
    • Red Hat OpenShift
    • Red Hat Ansible Automation Platform
    • See all products
  • Featured

    • Red Hat build of OpenJDK
    • Red Hat JBoss Enterprise Application Platform
    • Red Hat OpenShift Dev Spaces
    • Red Hat Developer Toolset
  • References

    • E-books
    • Documentation
    • Cheat sheets
    • Architecture center
Community
  • Get involved

    • Events
    • Live AI events
    • Red Hat Summit
    • Red Hat Accelerators
    • Community discussions
  • Follow along

    • Articles & blogs
    • Developer newsletter
    • Videos
    • Github
  • Get help

    • Customer service
    • Customer support
    • Regional contacts
    • Find a partner

Join the Red Hat Developer program

Download Red Hat products and project builds, access support documentation, learning content, and more.

ConsoleDocsSupport Search
New For you

Recommended

We'll recommend resources you may like as you browse. Try these suggestions for now.

  • Product downloads
  • Cheat sheets
  • Red Hat Developer learning portal
  • Developer blog
  • E-books
  • Developer Sandbox
Log in

Get more with a Red Hat Developer account

  • Product downloads
  • Console access
  • Event registration
  • Training & trials
Explore more account benefitsLog in or register

A subscription may be required for some services.

Contact us

Modernize and migrate to Kubernetes with open source tools

December 8, 2021
James Labocki Marco Berube Miguel Pérez Colino Ashok Pon Kumar Ramon Roman Nissen
Related topics:
ContainersDevOpsGitOpsKubernetes
Related products:
Red Hat OpenShift

    An enormous change is taking place throughout the computer industry where monolithic applications are being modernized into lightweight, container-based services on hybrid clouds. Some of the factors driving the change are:

    • The difficulty of maintaining and upgrading monolithic applications, particularly after adopting a DevOps development process.
    • Long times required to roll out bug fixes.
    • Inability to scale up in production.
    • Slow reaction times due to heavyweight Java processes and virtual machines.

    The following video presents a few of the problems you might encounter during this transition, based on a fictional company named Globex Corporation. We use this invented case study to show how to modernize and migrate an n-tier monolithic retail application to Kubernetes, and feature free and open source tools offered by the Konveyor community.

    Read on for a summary of the issues discussed in the video.

    Why did Globex decide to modernize its retail application?

    Pain points experienced by the company are typical for the industry:

    • The time from code commit to production deployment took months.
    • A series of code deployments once brought down the system. Failures often took hours to fix, leading to long downtime.
    • The system couldn't handle transaction volume during peak times.

    These issues negatively affected the company's DevOps software delivery metrics for the application.

    Initial migrations

    To solve these problems, the Globex developers started unpacking the monolith. The services they identified within the manufacturing application were the gateway, customers, orders, and inventory. The relationship of these services to the company's computing infrastructure is shown in Figure 1.

    A single application, running on virtual machines and communicating through a web server, served four separate functions.
    Figure 1. A single application, running on virtual machines and communicating through a web server, served four separate functions.

    First, the team broke out the gateway and orders services on Cloud Foundry using Spring Boot (Figure 2).

    Two services remained on the virtual machines, whereas two were moved to Cloud Foundry.
    Figure 2. Two services remained on the virtual machines, whereas two were moved to Cloud Foundry.

    However, they eventually halted the migration to Cloud Foundry when they saw the momentum of innovation taking place in Kubernetes, a competing container orchestration platform. With Kubernetes as the new target platform, they migrated the inventory service into a Kubernetes environment. A benefit of this migration was that they could bring their database onto Kubernetes because the platform can handle persistence.

    Furthermore, since Globex learned that Quarkus was more efficient than Spring Boot for cloud application development, they turned to Quarkus to develop the inventory service on Kubernetes (Figure 3).

    The final architecture runs a Quarkus application on Kubernetes.
    Figure 3. The final architecture runs a Quarkus application on Kubernetes.

    Meanwhile, the operations team embraced a GitOps methodology for development and wanted to redeploy services in an automated fashion instead of relying on manual deployments. Unfortunately, the inventory service was still manually deployed, and the operations team would not allow it to be promoted to production until it was automated.

    Missing steps to the desired state

    The result of all these modernization efforts left the company with several issues needing attention:

    • The customer service still remains on virtual machines, which slows the frequency of new deployments.
    • Services on Cloud Foundry need a path forward to a platform that has a strong future of innovation.
    • The deployment of the inventory service needs to be automated.
    • Maintaining three platforms is inefficient.

    Konveyor community tools

    The desired state is a set of services running on Kubernetes, with development following a GitOps paradigm to improve software delivery metrics. At this point, Globex leadership brought in the Konveyor community to learn how open source tools can help them reach this state.

    The demonstration in the video focuses on:

    • Assessing the parts of the application service using Tackle and, in particular, preparing the customers service for containerization.
    • Refactoring the customers' service to run on Kubernetes.
    • Rehosting the Oracle database to KubeVirt using Forklift.
    • Replatforming the services running on Cloud Foundry to Kubernetes using Move2Kube.
    • Replatforming the inventory service into a new Kubernetes cluster and transforming it to use an automated deployment method using Crane.

    Conclusion

    A lot of companies today are in the position of the fictional company discussed in our video. Better packages and development processes, together with cloud deployments, can provide the rapid upgrades and scale needed by these companies. The Konveyor community provides tools to ease modernization and migration.

    To learn more about modernizing your applications, see the following resources:

    • Application modernization patterns with Apache Kafka, Debezium, and Kubernetes
    • Modernizing Enterprise Java: A cloud native guide for developers
    • Red Hat Summit: Lowering the risk of monolith to microservices
    • The fast-moving monolith: how we sped-up delivery from every three months, to every week
    Last updated: September 20, 2023

    Related Posts

    • Modernizing Enterprise Java: A cloud native guide for developers

    • Application modernization patterns with Apache Kafka, Debezium, and Kubernetes

    • Modernizing applications with Apache Camel, JavaScript, and Red Hat OpenShift

    • Why you should migrate your Java workloads to OpenShift

    • Quarkus: A quick-start guide to the Kubernetes-native Java stack

    Recent Posts

    • A day in the life of an NVIDIA H100 on Red Hat OpenShift 5

    • Migrate BuildConfigs to builds for Red Hat OpenShift with one plug-in install

    • Run Red Hat Enterprise Linux CoreOS on NVIDIA BlueField DPUs

    • Agent harness engineering: Separating model capabilities from enforcement

    • What's new for developers in Red Hat Enterprise Linux 10.3 and 9.9

    Red Hat Developers logo

    Platforms

    • Red Hat AI
    • Red Hat Enterprise Linux
    • Red Hat OpenShift
    • Red Hat Ansible Automation Platform
    • See all products

    Build

    • Developer Sandbox
    • Developer tools
    • Interactive tutorials
    • API catalog

    Quicklinks

    • Learning resources
    • E-books
    • Cheat sheets
    • Blog
    • Events
    • Newsletter

    Communicate

    • About us
    • Contact sales
    • Find a partner
    • Report a website issue
    • Site status dashboard
    • Report a security problem

    Red Hat Developer

    Build here. Go anywhere.

    We serve the builders. The problem solvers who create careers with code.

    Join us if you’re a developer, software engineer, web designer, front-end designer, UX designer, computer scientist, architect, tester, product manager, project manager or team lead.

    Sign me up

    Red Hat legal and privacy links

    • About Red Hat
    • Jobs
    • Events
    • Locations
    • Contact Red Hat
    • Red Hat Blog
    • Inclusion at Red Hat
    • Cool Stuff Store
    • Red Hat Summit
    © 2026 Red Hat

    Red Hat legal and privacy links

    • Privacy statement
    • Terms of use
    • All policies and guidelines
    • Digital accessibility
    Ask AI