Posted on 10 Dec 18 by Luke Dudney - Senior System Engineer
Learn how KZN helped Navitas accelerate their time-to-market while increasing reliability with a DevOps cultural uplift, enablement and technical remediation program.
Navitas is a leading global education provider that has helped generations of learners transform their lives through education. Navitas creates life-changing opportunities to learn by delivering an extensive range of educational services to over 70,000 aspirational students across a global network of 120 colleges and campuses in 24 countries.
Navitas develop and operate a bespoke student management system and were adopting DevOps practices and tooling with the aim to increase speed, automation, and reliability of feature releases.
Navitas were facing a large scale roll-out within a very short time frame but with the various teams that develop and operate the system already highly constrained, there was a risk that without becoming more agile, the development process may not have been able to keep up with increasing business demands resulting in missed deadlines and lost market opportunities. For example, the process for taking a new piece of software code from the developer into production involved careful planning and a number of manual steps, creating delays, uncertainty and consuming valuable developer time. The existing strategy of defining entire complex software stacks as a single monolithic template had the potential to hinder agility by preventing infrastructure components such as the web frontend and API backends from being deployed and managed as separate entities from the very large but mostly static database, significantly impacting the speed of development.
Initially, KZN engaged with Navitas in an advisory role to gain an understanding of the existing business, cultural, organisational and technical landscape. Based on this process, a findings report detailing the current state, where Navitas’s posture sat in relation to best practices, and a prioritised list of recommendations for remediation of any shortcomings was produced. KZN then embarked on a DevOps cultural uplift, enablement and technical remediation program to assist with aligning to AWS best practice process and tooling. KZN augmented Navitas’s DevOps team, providing guidance, delivery of the remediation items, as well as advisory services on a number of future initiatives.
While Navitas had already adopted a continuous integration (CI) process using the on-premises Jenkins CI tool, by leveraging key enabling AWS services including CodePipeline, CodeBuild, and CodeDeploy, KZN and Navitas replaced the manual deployment process with a fully automated, end-to-end continuous integration and continuous deployment (CI/CD) process that saw code committed to the main branch of the on-premises BitBucket code repository deployed into production within minutes instead of hours and with no further planning, manual install steps or other intervention required from the devops team.
In adopting the CI/CD model of delivery, the CodeBuild service plays a key role in generating reproducible, deployable application artefacts including all library dependencies, executing quality and test processes, and installing and configuring infrastructure instrumentation and monitoring components. Within a CodeBuild project, the Hashicorp Packer tool generates reproducible AMIs and docker images for application and test environments including the CloudWatch, CloudWatch Logs and CodeDeploy agents. These images are then launched into deployment groups using the AutoScaling capability as the targets for software deployment using the CodeDeploy service.
To accelerate the development process and facilitate on-demand dev/test environment provisioning, KZN refactored the existing CloudFormation template into discrete infrastructure functional components as a series of loosely coupled systems.
Moving to a full CI/CD model of delivery has given Navitas greater confidence that software changes will be released to production quickly and reliably. The increased agility of the DevOps pipeline has enhanced IT’s ability to keep up with business demands and focus on delivering value.
Making the infrastructure more modular allows development and test environments to be created and destroyed orders of magnitude faster that was previously possible, while also reducing costs. Developers now spend more time delivering business value and less time roadblocked waiting for infrastructure provisioning and environment refresh tasks to complete.
DevOps is Agile. By building and supporting cross-functional teams with the right tooling, you can empower teams to spend their time on value-creating activity that helps you identify and deliver what your customers need most.
Your DevOps journey is unique, and as cloud experts we will partner with you to help you identify any gaps and use your project to start building out DevOps culture and practices.
Learn more about how KZN can assist you with your DevOps ambitions here.