Schogini - Amazon AWS, Magento and Mobile Developers
 

Magento 2 EE DevOps - Continuous Delivery (CD) Pipeline

Success Story

This case study started in January, 2016. It was a period when completely revised Magento 2 version was being launched worldwide and companies were busy updating their teams with a total paradigm shift from M1 to M2!

Schogini team was fully geared up for the challenge. Schogini’s core Magento expertise coupled with AWS Elastic Compute Cloud experience helped Schogini to successfully implement the entire CD Pipeline.

Customer

Magento 2 EE Enterprise Edition with pre-existing Magento 1 EE. They had an in-house development team.

Requirements

  • Seamless, failure safe deployments from Development Servers to Testing Servers to Staging Servers to Production Cluster.
  • All aspects of Build Automation and Continuous Integration along with Test Automation and Deployment Automation

Caveats

  • M2EE Catalog/Customer/Order etc. i.e, Full production database should be safe and untouched
  • Minimum M2EE maintenance period for the Production Cluster
  • DNS (Route53) Custom M2EE maintenance page that masks all clusters of the production environment
  • IP excluded M2EE front-end, visible for validation during the maintenance mode
  • Built-in Backup and Rollback mechanism in case of any failures in the pipeline

Schogini’s Custom Solution Highlights

  • Custom Bash scripted automation hooks in Git repositories to trigger timed integration events.
  • Testsuite validation and push to Staging is done using automated scripts.
  • Staging team has been given a single “push to production” command that initiates a well validated sequence of events like
    • Placing the Production server in maintenance mode at the DNS (AWS Route53) level itself to an AWS S3 based custom maintenance page.
  • Production M2EE files and DB are backed up and tagged as the Rollback snapshot.
  • Validated Staging code (and any static/media if applicable) are sent to the production cluster’s auto-scaling source.
  • Once validated, the clusters under the load balancer are restarted and maintenance mode is removed.

Issues Faced

  • Catalog thumbnail generation initiated by Magento Frontend was not being sent to the CDN!
    • Schogini team had to build scripts to auto/pre-generate product thumbnails.
  • Static files caching by the Varnish frontend cache posed issues in the cluster.
    • Special multi-Varnish cache clearing system was introduced to overcome this.

GET THE SOLUTION!

Author

Sree - Founder/MD/Chief Cloud & DevOps Architect
Sree is an evangelist and thought leader in the Continuous Delivery and DevOps space. In addition to being a Cloud Architect, he also imparts training in AWS, Docker and other DevOps related technologies. Sree's core speciality is in building scripted, version-able, repeatable, auto-scaling, load-balanced and self-healing infrastructures. Sree also works in server-less architectures using AWS Lambda service and Internet of Things (IOT). Sree is also an Amazon Certified AWS Cloud Architect with 15+ years of server experience.
Know more about the author.
 
 
 

CONTACT US

We love to talk to you, all enquires are replied to in under 4 hours.