Founded in 2000, the company is headquartered in Vienna, Austria, and has offices in Germany, Greece, Hungary, Italy, Liechtenstein and Spain. DIMOCO partners with 210 mobile network operators (MNOs) in 48 countries and performs around 2 million mobile transactions every day.
Driving development agility at scale is the number one priority for Philipp-Michael Radl, systems engineer at DIMOCO. He is responsible for providing development environments for a host of different development teams across the business. Over the last 12 months, Radl’s primary goal has been to transform his central provisioning hub. The aim? To galvanize and better support DIMOCO’s legion of developers and simplify management processes. With container technology the enabler, the company is setting its sights on international growth and is putting Kubernetes, and SUSE Rancher, at the center of its success strategy.
DIMOCO is one of the world’s bestknown international payment and messaging innovators. As an industry leader at the cutting edge of mobile technology, it has paved the way in direct carrier billing, mobile payments and messaging services. The group provides market-leading services to global telecom carriers, card schemes, content publishers, large merchants and corporations.
The journey to containers
The payments and messaging industry is one of the most highly regulated and security-conscious in the world. By virtue of its relationships with retailers, MNOs and financial services providers, DIMOCO is governed by the gamut of stringent regulations and regional and local data protection laws. It’s no surprise, then, that DIMOCO has always favored a tightly managed, highly secure, on-premises infrastructure. That strategy continues to this day; the company operates a 100% on-premises estate, running virtual machines (VMs) in a network of data centers in Austria.
When Radl joined the company in 2017, containers were a side project. The team operated a small Red Hat Enterprise Linux Atomic Host cluster, running a minor operational application, alongside a vanilla Kubernetes development cluster that was mainly used for testing. Everything else was either home-grown or running on Red Hat and VMs.
As time progressed, the number of development teams and projects proliferated, and the team’s thoughts turned to how best to hasten and improve the provisioning of development environments. The team was receiving requests from sister companies to provide a host of high-availability development environments based on Kubernetes, to serve several separate development teams. It made sense, therefore, to completely transform DIMOCO’s development hub and build the central architecture around Kubernetes.
The team had a number of priorities; whichever Kubernetes management platform they chose had to be capable of scaling rapidly with demand, and it had to bring simplicity and ease of cluster management. It had to provide authentication with DIMOCO’s Active Directory and had to seamlessly integrate with Red Hat and VMs. There also had to be the potential for cloud migration. DIMOCO wasn’t about to put everything in the cloud, but Radl knew the cloud would become increasingly important in the future. They needed the flexibility to change direction and experiment at any time.
After evaluating several options, Radl and the team realized SUSE Rancher met all of its requirements and conducted a monthlong proof of concept (PoC) in May 2019. The team created a high-availability cluster, conducting a simple provisioning exercise to see how much human intervention was needed to spin up a new cluster. SUSE Rancher completely automated the provisioning process. Not only did SUSE Rancher integrate perfectly with the existing infrastructure, it required hardly any human involvement.
It wasn’t long before DIMOCO decided SUSE Rancher was the best fit to enable its infrastructure transformation. The team has been going through a period of migration ever since. Now DIMOCO runs several of its core services in production in SUSE Rancher and continues to migrate its applications to the SUSE Rancher platform.
“As we grow, containers are the most sensible and coherent direction for us to take. Working with SUSE Rancher, we get the most out of Kubernetes while reducing our management burden.”
What were the problems DIMOCO was trying to solve?
Streamlining multi-service DevOps provisioning
DIMOCO’s original infrastructure development hub had worked well for many years — providing the company’s developers with VM-based programming environments for billing, payments and messaging services. As the customer and partner base proliferated, the demands on the hub started to change. DIMOCO’s sister brands started to demand new and innovative development environments. With Kubernetes key to the strategy, the infrastructure team realized it was time to start down the journey toward a container-based future.
What was on top of the growing list of requirements? The team needed multiple Kubernetes high-availability clusters that could run in several data centers, providing four distinct development environments — development, testing, staging and production. This requirement prompted Radl and the team to look at ways to scale rapidly without hands-on management of multiple clusters and hundreds of nodes. SUSE Rancher was the most obvious choice. After the successful PoC, the team deployed two initial clusters and provided the four required CI/CD environments.
SUSE Rancher integrated perfectly with DIMOCO’s existing infrastructure and met Radl’s basic requirements: providing the right authentication with active directory and working flawlessly with VMware. Then, in summer 2019, the SUSE Rancher platform went live, and the new hub started to take shape.
The team started with DIMOCO’s portfolio of payment providers, who were distributed throughout 48 countries. They moved each provider, one-by-one, into production in SUSE Rancher. As services were migrated, Radl immediately noticed a difference in deployment time. Clusters were created in minutes and deployed with minimal intervention.
SUSE Rancher automates a host of deployment processes (Role-based access control or RBAC, Namespaceas-a-Service, authentication, application catalog, etc.). Yet, the beauty of SUSE Rancher is that Radl can be selective about which processes he wants to automate and which he wants to automate in other solutions. Tailoring the approach in this way has hastened development, simplified management and improved security. Now, Radl has more time to devote to new projects, such as a major new log monitoring development that otherwise would not be possible.
Scale and agility
By introducing ease into the way deployments are viewed and managed, Radl has completely revolutionized the way the hub operates. Working with SUSE Rancher, DIMOCO’s development teams experience a more streamlined relationship with the company’s central hub, but day-to-day, they aren’t concerned with managing SUSE Rancher. They can still use the terminal and command line access they are accustomed to without having to use a GUI.
At the same time, the infrastructure team benefits from a central management interface from which each individual microservice can be viewed, managed and monitored.
SUSE Rancher is completely agnostic, so its beauty lies in its flexibility. The team is free to capitalize on some, or all, of SUSE Rancher’s built-in process automation, or none at all. In this case, Radl relies on Active Directory authentication to properly manage access rights across the CI/CD journey. Without this, the team couldn’t make proper use of the new dev/test/ staging/prod environment.
Radl also wants to automate via command line with Ansible in other areas. Similarly, the team has a history of using application catalogs, but have switched to Helm due to the ease of automation via command line. SUSE Rancher allows the team to pick, choose and integrate with whichever tools are right for the job.
Finally, having a dispersed network of payment providers, MNOs and retailers creates interesting regulatory and compliance challenges. By virtue of working with SUSE Rancher, individual development teams can replicate clusters where identical conditions exist or tailor individual microservices from the central user interface to ensure consistency. In particular, the separation of production and non-production environments helps with regulatory checks.
What’s next for DIMOCO
DIMOCO’s next phase will see the team onboard more customers in more territories and transition its sister brands into containers. With SUSE Rancher, they can create micro-clusters in moments and let them reside in non-production environments until new service providers are ready for development. Being able to scale and stage at such speed will allow the business to grow at a greater velocity than was possible.
On the technical front, Radl’s next priority is to implement a new monitoring methodology across his production clusters — to better protect mission-critical business applications. Giving developers a way to monitor their own workloads is critical, so Radl is developing an application monitoring stack that will sit on each cluster.
With individual stacks, monitoring and reporting parameters can be modified according to the needs of each individual developer. When fully rolled out, this self-service monitoring methodology will not only put power back in the hands of development teams, but also dramatically reduce management time for Radl and his infrastructure team.
Finally, the team is starting to make small steps toward the cloud, albeit tentatively. The team knows cloud migration will become a part of DIMOCO’s future and is, initially, trialing some cloud-based operational business tools. As this strategy crystallizes, SUSE Rancher will allow them to experiment in the safety of separate dev and test environments.