Interest in cloud-native technologies continues to grow among today's IT leaders. Many are looking to maximize the value of their existing investments in cloud technologies while realizing all the agility, cost savings and security that the cloud can provide. To achieve this aim, they'll need to modernize their first-generation cloud applications so that their entire portfolio is fully cloud native.
This isn't always easy. Many organizations are just getting started with cloud-native technologies, so the amount of internal expertise they have access to is limited. They may be heavily reliant on enterprise software that's tied to a particular cloud, making migration difficult. Or decision makers may be loath to lose the value of previous investments in legacy applications.
HCL Software has undertaken the same journey. The company develops, markets, sells and supports more than 20 software applications and product families for use cases ranging from marketing and retail to DevOps and security. HCL Software has created tools for secure automation and unified endpoint management, along with performance monitoring, software testing and many other purposes. It serves multiple major enterprise customers. All told, the value of the investments HCL Software has already made in these products is enormous.
HCL Software completed the cloud-native modernization of its full application estate in July 2021. As a result, its teams understand the challenges that customers face along the path to becoming entirely cloud native, because they've experienced the same issues firsthand. They also know how to overcome them. HCL Software's Cloud Native Maturity Model evolved along the way. It documents how HCL Software containerized its application portfolio, made it possible to run these newly containerized applications in Kubernetes, and created the container registries, runtimes and distributed database and storage infrastructure needed to support this cloud-native platform. In addition, it shows how HCL Software built a robust continuous integration/continuous delivery (CI/CD) pipeline to support its cloud-native development practice. The entire process took more than 500 person-hours of effort.
"We went through the same process as our enterprise clients," says Alex Mulholland, HCL Software's chief platform architect. "We had to do it multiple times, for many different products, with diverse development teams all over the world. We didn't start with a bunch of cloud-native experts. Instead, we had to build up those skills within our existing teams. We learned a lot along the way, and all that knowledge had been aggregated into the Cloud Native Maturity Model."
Getting started with containers and Kubernetes
The first step in HCL Software's cloud-native transformation journey involved packaging existing products, services and API components into containers. The team built stateless, immutable, single-process containers, and leveraged a container runtime interface (CRI) to manage them. The next step was to build Kubernetes applications to orchestrate the containers and then package the applications in Helm charts.
"Traditional enterprise software can have complex, multistep upgrade procedures with configurations spread across many files and formats," Mulholland explained. "Wrapping that all up into containers and Helm charts can transform the install or upgrade process from a multiday effort into something that takes place in 15 minutes after typing one command."
Even at this early stage in their cloud-native transformation, HCL Software enjoyed the agility that came with simplifying the process of installing and upgrading software. And these faster, easier updates can be completed without downtime — a major benefit for HCL Software since customers rely on its product's availability, but also important to any business that needs the ability to rapidly adapt software to keep pace with fast changing consumer demands.
Adding resilience, observability and orchestration
Kubernetes is a well known open-source container-orchestration platform that can automate many aspects of managing containerized applications. Building out these capabilities means your organization will have software that's more resilient (i.e., an application can automatically recover to a healthy state even if your systems or network has issues). Kubernetes-based applications scale automatically, and Kubernetes is associated with a number of open-source projects that can handle tasks like request routing and performance monitoring.
By this stage, adopting cloud-native technologies will reduce your software licensing costs and simplify the process of software maintenance. And, of course, Kubernetes-based applications are highly portable: They can run on the cloud of your choice, on premises or in a multicloud environment.
Cloud native: more than just a technology
We often associate the term "cloud native" with containers, Kubernetes and microservices, but realizing the full benefits of a software modernization initiative also requires adopting complementary development practices and the right mindset. We're talking about DevOps here. Setting up a CI/CD pipeline will make it so that changes to your source code automatically result in a new container being built, tested and deployed — eventually, all the way to production.
Not only are CI/CD pipelines and DevOps practices a natural fit for the modular nature of cloud-native architectures, but their adoption dramatically speeds release cycles. This supplies the underlying technology foundation for the business agility that will be vital for success as we move deeper into the 21st century.
HCL Software enjoys all the direct benefits of cloud-native modernization — software that's faster and easier to install, upgrade and manage — but it's also able to pass these benefits along to its customers. HCL Software provides all of its products in a cloud-native format, but also offers services and solutions that were expressly designed to smooth the journey to cloud native for its customers.
"The savings in time and skills that cloud native provides are very real for our own operations team," Mulholland said. "This lets us be completely confident that our clients will experience them, too."
To learn more about HCL Software's portfolio of products and solutions, including the HCL Solution Factory (SoFY), visit the HCL website.