Image for post
Image for post

Deployment strategies at scale using Edge at MakeMyTrip

Reliable, Robust, Rapid and Scalable approach for deployment automation

Paritosh Anand
Dec 16, 2017 · 4 min read
  • Canary checks for metric comparison
  • Auto roll-forward or roll-back based on Canary decision
  • Parallel deployments across data center
  • Application health checks
  • Robust and readily available reporting
  • Scheduled roll outs.

1. Distributed Architecture

Edge deployment framework in itself is a distributed application which has a capability of having multiple frontend and backend services running over multiple nodes across data center.

Image for post
Image for post
Architecture of Edge framework

2. Limiting distractions & empowering Engineers

Different teams in Engineering use Edge for their application deployments, In total there are ~250 different projects. Hence it is necessary to have a good amount of restriction, checks and balances on team members such that it is easier to find relevant projects.

Image for post
Image for post
Widgets

3. Handling large volumes of application deployments

At MakeMyTrip, like any other eCommerce setup, we are constantly rolling out some new feature/fix to production environment. Edge is developed on the ideology of Docker and its service orientation allows Edge to be horizontally scalable.

4. Deploying to heterogeneous environments

Edge’s design is such that it can be plugged into any environment. At MakeMyTrip we do deploy web application, micro services & topologies over production machines hosted in data centers and on servers hosted on MakeMyTrip internal private cloud.

5. Grooving with Docker and Elastic Search

Our approach of using Docker in building Edge proved to be beneficial in several ways. Any new feature in Edge can be rolled out seamlessly using CI setup at Jenkins and an in house Docker registry configured over VMWare harbor . It is straightforward to horizontally scale Edge workers or back-end services to cater high number of deployments at once.

  1. Number of successful deployments.
  2. Average time taken to perform health checks.
Image for post
Image for post

MakeMyTrip-Engineering

MakeMyTrip Engineering & Data Science

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store