Monolithic App to Microservice Transformation
May 18, 2017


As we all know by now, unfortunate incidents happen even in our modern, cloud-enabled world. But, there’s always a silver lining: they demonstrate the benefits of a multi-cloud approach that relies on cloud-agnostic services to provide an unprecedented level of support, flexibility, and disaster recovery to companies.
The Need for a Cloud-Agnostic System
ClearScale was recently approached by a client providing banking software for the financial industry that needed to create a cloud-agnostic infrastructure for their legacy application and convert it into a cloud-based microservice SaaS solution. Their existing application incorporated an on-site approach, requiring customers to maintain their own hardware to run the application; needless to say, this solution caused frequent problems, leading to frustration for both customers and the provider.
Our client expressed interest in a microservice transformation in the cloud that would allow them to control all aspects of their product seamlessly. Not only would their customers benefit from a streamlined experience, high availability, and increased security and disaster recovery, our client reasoned, but they themselves would also reduce the time (and cost) spent supporting individual customer hardware and simplify their billing process.
One of their main goals was to ensure that this solution would be cloud-agnostic, enabling it to run on any major cloud platform available today and in the future. Because this customer serves the financial industry, it was important for them to offer a product that could support pre-existing arrangements their clients (other financial institutions) had in place with a specific public cloud provider.
Creating a Microservice Transformation
ClearScale leveraged a combination of tools and platforms to create a custom-built solution that would meet all of our client’s needs.
1. OpenShift
One of the key components of the solution ClearScale provided our client is Red Hat’s OpenShift platform, which combines Docker and Kubernetes to help developers rapidly deploy and scale container-based applications. Because of its seamless integration with Docker, OpenShift provides full support for Docker APIs as well as repositories of containers that help with development.
Additionally, because of its reliance on Docker and Kubernetes, high demand and flexible scaling are important components of OpenShift. For example, OpenShift ‘pods’ comprise any number of containers deployed together on a host. Each pod may contain a separate application, and pods can be used to scale an application to meet demand; thanks to the scalability of OpenShift, this can be done automatically. Because OpenShift is built around Docker and leverages its low-resource approach, this scaling can spin up and down in seconds.
2. Docker
Docker is the world’s leading software container platform. Essentially, a software container is a bundle of all of the frameworks and libraries required for an application to run. Unlike virtual machines, software containers don’t include an operating system — only the frameworks and libraries necessary to run the target application. This gives software containers a considerable advantage over virtual machines in terms of available resources and scalability. For example, because they don’t need an operating system, software containers are usually a fraction of the size of virtual machines and can be booted more rapidly, which in turn enables cloud-based applications to scale faster to meet demand.
Software containers can be created for both Windows and Linux with all of the necessary libraries and frameworks for a given platform. This helps ensure containers can function seamlessly with virtually any cloud provider’s servers.
As an added benefit, because software containers don’t depend on a specific machine’s setup, they can greatly accelerate the development process, allowing developers to debug identical instances of the application being created.
3. Kubernetes
Originally developed at Google, Kubernetes is a system for automating the process of managing containers — such as those created with Docker — including deployment and scaling. Kubernetes does this by grouping containers that make up an application “into logical units for easy management and discovery.”
The Final Result: 90 Percent Cloud-Agnostic Solution
By combining the above systems and platforms, ClearScale was able to create a custom solution that’s 90% cloud-agnostic; only 10% of the final application requires customization specific to the cloud platform being used.
Not only did this solution empower our client with the ability to provide a superior experience to their customers — regardless of the cloud platform they prefer — it also provided a platform that’s far more robust than their original on-site software. In addition, because the final product is 90% cloud-agnostic, it guarantees high availability as well as more robust security and disaster recovery, which is extremely important to banks and financial institutions.
ClearScale, has proven experience building and implementing microservices transformation. As more and more companies migrate their existing software and services to the cloud, it’s important to choose the right solution and the right cloud consultant to help make this pivotal transition.
Get in touch today to speak with a SaaS expert and discuss how we can help:
Call us at 1-800-591-0442
Send us an email at sales@clearscale.com
Fill out a Contact Form
Read our Customer Case Studies