Infrastructure as Code at Scale for Event-Driven Microservices Applications

Download: pdf

About the Customer

The client, who is a leading company in the mortgage industry, initiated a modernization project. The new software platform is expected to process multi-trillion dollars of assets and multi-billion dollars of cash flow. The Capitis team played a key role in automating infrastructure provisioning to enable continuous integration and continuous delivery.

The Challenge

The new software platform was implemented as event-driven microservices that are loosely coupled and independently deployable units. This architecture enabled the customer to achieve agility by independently developing services in dedicated teams. However, this added several layers of complexity to the process of enabling continuous integration and continuous delivery pipelines. The challenges resulting from this increased complexity include:

  • Ability to provision environments rapidly while enabling monitoring and security
  • Ability to evolve configuration and deployment architecture of microservices
  • Ability to provision increased number of independent databases (one for each microservice)
  • Ability to adapt to ever changing integration patterns and inter process communication needs of applications
  • Ability to provision AWS compute, storage, and platform services

The Solution

The Capitis team architected, designed, and implemented a mature DevOps practice supported by a sound data model for capturing infrastructure metadata. The solution included:

  • Extensive use of AWS cloud formation services and Terraforms for provisioning compute, storage, and RDS resources on AWS
  • Extensive use of Chef for creating and maintaining golden copies of AMIs for microservices application hosting, Oracle databases, and TIBCO EMS message provider
  • Orchestration of infrastructure provisioning pipeline using Jenkins
  • Automated testing infrastructure pipeline using Rspec and ServerSpec

The Benefits

  • By implementing a matured infrastructure as code pipeline, we enabled our customer to meet aggressive project deadlines without any disruption to development or testing activities despite the complexities introduced by the event-driven microservices architecture
  • The solution reduced infrastructure provisioning time from a multi-week effort down to 4 hours, which resulted in quicker iteration cycles and a productivity gain for development and testing activities
  • Automated instrumentation of monitoring solutions such as Splunk forwarders helped increase the productivity of troubleshooting and root cause analysis
  • We eliminated the problems created by drift in environment configuration by following the Phoenix approach of provisioning new environments instead of upgrading the existing environments
  • Infrastructure as code practice reduced the capital expenses and operational costs by fully leveraging AWS self-service APIs and best of breed industry proven configuration tools

Capitis Solutions and AWS

We are playing a key role in developing backend computation platfrom for the mortgage industry which is expected to handle multibillion dollars of assets and cash flows.