OneShield Software delivers business solutions to global insurance and financial services industry. The Cloud-based solutions are offered as standalone, subscription and as-a-service which includes enterprise-class policy-management, billing, claims, rating, product configuration, business intelligence and smart analytics. OneShield has more than 46 products across property & casualty; life; health; insurance; and specialty markets which automates and simplifies complexities of core systems with targeted solutions.
OneShield wanted to move its development environment to AWS Cloud to take advantage of the scalability, elasticity and security. The customer wanted robust infrastructure platform and DevOps enabled automated processes to aid its business imperative of rolling out new products; functionality and enhancements; updates and patches at high velocity to achieve competitive advantage.
As with any software company Dev &Test is the lifeline of OneShield and as a solution operating in the insurance sector the company has to innovate continuously to keep pace with regulatory challenges. No feature, update or patch can go into production without testing.
OneShield wanted high automation in Dev & Test environment to facilitate collaboration between different teams—its production center is in the US and multiple Dev & test teams are working on enhancements and custom solutions with tight deadlines and efficient collaboration is critical for high productivity.
So critical is Dev & Test for OneShield that the company wanted a fail-over strategy which will automatically initiate Disaster Recovery for business continuity and help meet SLA commitments for custom solutions. In the absence of DR, system downtime was severely affecting operations as any delay in dev & test was having a ripple effect and crippling production capability. Considering that software applications frequently require security patches and updates, any delay in roll out increases application vulnerability, putting businesses at high risk.
OneShield wanted to achieve the following business objectives with DevOps-enabled automation:
Enhance product quality and security
Increase developer productivity
Consistency in Dev Environment
UMBRELLA DEVOPS SOLUTION & TOOLS
Umbrella set up a CICD pipeline for application release and used automation in following areas:
Code release process management using Bitbucket for code repository, Ansible for configuration and Bamboo pipeline
Infrastructure provisioning using CloudFormation
Automated Disaster Recovery using custom scripts and CloudFormation
Infrastructure provisioning using CloudFormation where infrastructure configuration is saved as portable templates with separate templates for each application. This makes the application environment consistent and recoverable in case of disaster.
Centralized configuration management is achieved by creating Ansible playbook for updating configuration in the server to add SMTP relay, service startup scripts, update server host name etc. The objective of Ansible-based automation was to increase efficiency while reducing margin of error.
Application code is stored on bitbucket repository and Bamboo integration and deployment tools are used for new releases. Pipeline comprises server backup, then application code is pulled from bit bucket, code is built on Bamboo server and deployed using custom ssh script. Separate pipelines are configured for each application.
Custom scripts take AMI back-ups of application and database server before code deployment and roll back is enabled in case deployment fails.
Disaster Recovery in Singapore region is configured in auto mode with custom scripts to
invoke Cloud Formation
migrate AMI from primary set up to DR
update host name in DR
Automatic creation of CloudWatch reports enabled with custom scripts to get insights on server configuration, utilization, and status of servers.
Developers are able to focus on creating high-quality code and innovate better to enhance application functionality as automation facilitates continuous development and testing, enabling faster shipping to production. Also roll back is faster with automation capabilities.
Collaboration amongst different developer teams and between dev & test and production teams have increased with DevOps automation providing consistent infrastructure environment.
Business continuity with close monitoring of environment and automated capabilities to trigger DR capabilities in case of failure/disruption in primary datacenter.