Guest post by Savitha Raghunathan, Senior Software Engineer at Red Hat and John Matthews, Senior Principal Software Engineer at Red Hat

Konveyor 0.1 is now available to help modernize legacy Java applications to Kubernetes.

Diagram flow of Konveyor

The Konveyor team is excited to announce the initial release of Konveyor 0.1. This release includes exciting features like static code analysis, application assessment, and migration planning. See Konveyor in action by checking out our v0.1 overview video at – https://youtu.be/2g5hLvRDA5Y 

Overview of Konveyor

Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.  

Konveyor v0.1 will allow an enterprise architect to see high-level trends across the entire portfolio of applications and then drill down into a specific technical issue for a given application and see the exact lines of source code involved.  

Future releases of Konveyor will expand beyond surfacing information to help with all aspects of the modernization journey including the generation of Kubernetes manifests, creation of unit tests, and exploring strategies for monolith decomposition.

Methodology

Assess > Rationalize > Prepare > Pilot > Scale

The project’s design incorporates years of experience with consulting engagements successfully helping companies move existing applications to new technologies, such as Kubernetes. The patterns and processes that led to successful, predictable, and safe modernization engagements were distilled into our methodology. This methodology is not required to be used with Konveyor but remains available to help guide others embarking on their own modernization journey who don’t have a preferred methodology.

Unified Experience

The solution provides a Unified Experience to aid multiple personas such as Enterprise Architects who manage modernization engagements as well as the Migrators, or developers who carry out the specific refactoring development work.

Unified Experience architecture

 The experience is centered on:

  1. Surfacing information across an entire portfolio, providing the ability to see high-level trends combined with the ability to drill deep into the specific technical issues and view the impacted source code
  2. Aid the Enterprise Architect to make better informed decisions related to the modernization engagement
  3. Planning and managing work through integration with external tools for task creation and customized views of progress
  4. Execution of the modernization efforts by aiding the Migrators who will perform the refactoring.  Konveyor will not be a magic solution to automatically refactor source code, but it will aid the Migrator in carrying out the modernization work by automating tasks such as the generation of Dockerfiles, Kubernetes Manifests, unit tests, and executing refactoring recipes when possible

More information on the Unified Experience is available in the upstream repo:

https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience

Getting Started

We publish the Konveyor Operator in https://operatorhub.io/ to help manage installation and discovery of Konveyor, this can be installed on any Kubernetes cluster with Operator Lifecycle Manager.  

We provide instructions on how to install this locally for evaluation with minikube:

  1. Follow the below instructions for guidance of setting up minikube and installing Konveyor
    1. https://github.com/konveyor/tackle2-operator#installing-olm-support
  2. Walk through a guided example of running an analysis on a Java application
    1. https://github.com/konveyor/example-applications/tree/main/example-1

If you encounter issues or have feature requests, please create an issue here. Your feedback and contributions are invaluable in helping us improve Konveyor.

Get Involved

We are forming a user group of subject matter experts to share use-cases and learnings around modernization engagements to improve Konveyor and its Rules.  Please consider joining if you are willing to share use-cases and feedback from your engagements 

To stay updated on the latest Konveyor news, join our community meetings where you can learn more about upcoming features and share your insights. Additionally, you can subscribe to our mailing list for the latest updates on Konveyor or reach out to us in #konveyor on kubernetes.slack.com

We would like to give a shout-out to our contributors, whose hard work and dedication have made this release possible. Thank you for your support and contributions!