The DevOps team at QloudX recently completed a large-scale migration of 160+ containerized microservices from OpenShift to Amazon EKS for one of our enterprise customers. Although not a migration per se, the primary objective of this 7-month project, was to make all our workloads deployable on any Kubernetes platform, not just OpenShift.
Broadly speaking, there are 2 steps to accomplish this:
Convert all OpenShift templates to Helm charts
Migrate running customer production workloads from OpenShift templates to Helm charts
This article (part 1 of 3) is all about step 1: converting OpenShift templates to Helm charts.
A Bit of A Background
Our products have been running as containers on OpenShift for many years now. They benefit immensely from all the features & addons that OpenShift provides over & above vanilla Kubernetes. However, this convenience comes at a cost.
All our microservices are defined as OpenShift templates. The end customers of our products are also force to use OpenShift since that’s the only supported platform. And so, it was only a matter of time, before customers requested compatibility with other Kubernetes platforms.
Sometime last year, we finally took the leap & decided to migrate everything from OpenShift templates to Helm charts, that can be installed on any Kubernetes platform, including OpenShift. The biggest driver for this decision was the huge savings we could bring our customers, by providing them the option to avoid OpenShift licensing fees.
OpenShift Templates to Helm Chart Conversion
Fortunately, Red Hat provides a CLI tool for converting OpenShift templates to Helm charts:
- host: # Route's host
- path: /
name: # Target service name
# Provide either port name or number
name: # Port name
number: # Port number
And that’s it! That’s all you need to do to get Helm charts deployable on vanilla Kubernetes. There will of course be some more work to do based on your specific use cases, such as the ingress annotations based on the choice of your ingress controller.
Head on over to part 2 of this blog series to learn how to orchestrate the migration of running workloads from OpenShift templates to Helm charts.
About the Author ✍🏻
Harish KM is a Principal DevOps Engineer at QloudX & a top-ranked APN Ambassador. 👨🏻💻
With over a decade of industry experience as everything from a full-stack engineer to a cloud architect, Harish has built many world-class solutions for clients around the world! 👷🏻♂️
With over 20 certifications in cloud (AWS, Azure, GCP), containers (Kubernetes, Docker) & DevOps (Terraform, Ansible, Jenkins), Harish is an expert in a multitude of technologies. 📚
These days, his focus is on the fascinating world of DevOps & how it can transform the way we do things! 🚀
Privacy & Cookies Policy
Necessary cookies are absolutely essential for the website to function properly. This category only includes cookies that ensures basic functionalities and security features of the website. These cookies do not store any personal information.
Any cookies that may not be particularly necessary for the website to function and is used specifically to collect user personal data via analytics, ads, other embedded contents are termed as non-necessary cookies. It is mandatory to procure user consent prior to running these cookies on your website.