Medallion Learning Implements More Robust DevOps Strategies to Get Production-Ready
AWS DevOps and Disaster Recovery Cloud DevOps and Continuous Integration Best Practice
Medallion Learning provides organizations with engaging eLearning courses that utilize best-practices in instructional design, delivery and assessment. By tailoring instruction to the needs of each individual, Medallion Learning brings its learners to content mastery in less time and at lower cost.
Medallion Learning had successfully established an AWS infrastructure to meet its needs and sought a review by an AWS expert. The review would include a DevOps assessment as well as a review of the company’s general setup, developer workflows, and release process. Medallion also wanted to identify areas where automation could be applied to support fast disaster recovery as well as be self- healing and human-agnostic. Finally, the company wanted to further enhance its software and developer security.
Flux7 Solution High Performance, Scalable Infrastructure
Matt Krusemark, CTO and Product Development Manager at Medallion Learning, led the search for a solution, along with lead developer, Shilo Rohlman.
They found that most providers were traditional IT and managed services organizations, and some were just starting to blend into DevOps for enterprises and occasionally for start-ups. Medallion Learning selected Flux7 for its DevOps consulting expertise, advanced knowledge of Amazon Web Services, flexibility, and willingness to create a solution that fits its budget and desired business outcomes.
An Architectural Roadmap
During the initial phase of the engagement, Flux7 developed an architectural blueprint by performing an in-depth DevOps assessment that identified the areas of Medallion’s infrastructure that could be improved. Together, these areas were prioritized and solved through a mix of Flux7 consulting, internal resources, and a third party that had developed the original Medallion Learning platform. The architectural roadmap kept the groups synchronized and allowed Medallion to address the issues at the pace it wanted and with the appropriate resources.
Disaster Recovery with DevOps
In a disaster, Medallion’s existing infrastructure would need to be rebuilt manually. Although the technology platform was well documented, this would lead to an increase in downtime.
Medallion required that the solution possess the following attributes:
- A self-healing infrastructure
- Repeatable: It must turn server creation into a science
- Quick: The ability to conduct regular fire drills
- Human-agnostic: Its use must be simple enough that any individual can follow it
A key aim was to provide push- button disaster recovery capabilities. Flux7 established a system using Amazon Machine Images (AMI) to provide the information required to launch or relaunch an instance.
- Reduction of business risk and downtime
- Ensured a high degree of uptime to promote customer satisfaction
- Saved between 30 minutes to a few hours of 30 engineering time per outage, accumulates to tens of man-hours per quarter
Site Performance and Security
A solution for fast and easy performance testing was a must, and it needed to be accessible so that it could be run regularly to keep on top of even small performance degradation. Performance monitoring and alarms needed to be added. Additionally, analysis showed there were some minor bottlenecks in the systems.
A true AWS autoscaling solution was implemented and a new system for load testing was established in the Jenkins continuous integration hub. Automated performance testing can now be created to check the load-handling capacity of the application server.
A few additional security improvements were recommended based on cloud security best practices.
- Improved user experience (UX)
- The ability to monitor ongoing performance and be alerted to potential problems
- Reduced cost of performance debugging – fixing issues before they become urgent and expensive
- Cost-saving opportunities
- Improved understanding of marginal costs
A DevOps Solution for High Developer Productivity
Krusemark said, “We were impressed with Flux7’s technical skill, customer service and the overall experience. We dealt with some difficult IT problems and things went as smoothly as they can be expected to go.”
Fast, Preconfigured Provisioning with VPCs – By establishing AWS CloudFormation templates using best practices, Flux7 enabled Medallion to easily launch a new stack, provisioned with all the required resources, in minutes. This allows the Dev and Ops teams to quickly obtain the right resources, without creating a bottleneck and allowing Ops to focus on other priorities.
New Application Server Capacity – For Test, Medallion wanted to be able to easily increase its server capacity. This was accomplished by providing an easy way to modify the desired capacity in an autoscaling group.
As Medallion Learning’s business grows, it plans to continue implementing the items identified in the original blueprint. However, the team is always looking for new ways to innovate.
“AWS and DevOps is clearly where Flux7’s expertise lies, and that is why it is important for us to work with them – to leverage that expertise, while keeping our team focused on our customers,” Krusemark concludes.
“Flux7 took the extra time needed to educate us on what was important and what we shouldn’t be worried about.”
— Matt Krusemark, CTO and Product Development Manager
- Outgrowing existing cloud based infrastructure
- Desired an increased security framework for developer build and deploy operations
- A lean software development team focused on its subject matter expertise without the bandwidth to specialize in DevOps details
- Need to further develop AWS disaster recovery planning and scaling to support increased use of the platform