Case Study: HAMPR AWS Platform, CI/CD and Application Migration

Flavio Oliveira
Jul 27 · 4 min read
Photo by Samuel Zeller on Unsplash

Summary

HAMPR is a startup focused on corporate catering, events catering and kitchen supplies in Sydney and Melbourne.

DNX worked with HAMPR to redesign their AWS platform to a new, AWS Well-Architected platform providing a solid, secure, and cost-efficient infrastructure enabling HAMPR to deploy their workloads.

The project was comprised of three phases:

  • AWS Well-Architect Foundations
  • CI/CD Implementation
  • Application Deployment

After the AWS foundations were set in place, DNX introduced a Continuous Integration and Continuous Delivery platform to deploy AWS infrastructure and application changes and then migrated their applications and Database to this new environment using Containers, CI/CD and ECS with blue/green deployment concepts relying on DNX best practices.


The Challenge

HAMPR was already an AWS user who needed a more reliable, highly available and secure architecture to support its growing user base and fast-paced value delivery throughout development and deployment of new features.

Even using a Cloud environment, HAMPR was not able to achieve the potential of AWS and DevOps, facing some challenges like:

  • Use of only one AWS account creating an administrative burden for separation of duties roles and permissions
  • Lack of a real vision of the current state of the environment as changes were made directly through the Management Console with no configuration management.
  • Highly tailored instances hindering auto-scaling and high availability
  • Manual deployment process creating long release windows on the weekends with large downtime for the users

Project Outcomes & Success Metrics

With the project completed, HAMPR can now deploy workloads in an automated way across 2 main AWS accounts (non-production and production), and with the following benefits:

  • Full automation of cloud platform to avoid configuration drifts across environments.
  • AWS Billing under control
  • Zero Downtime deployments
  • Daily deployments to production
  • Improved time-to-market using CI/CD pipelines and immutable servers on AWS
  • A secure and scalable platform to allow the company to grow
New CI/CD Pipeline utilising GitLab

Lessons Learned

The following are the most important take-aways from this project:

  • The AWS Design Phase is integral to understanding the platform and application constraints
  • Including the development team in the design phase helps the engagement and build trust, reducing grey areas during the implementation
  • CI/CD pipelines for infrastructure is essential to avoid mistakes within the Implementation Phase
  • Application containers provide immutability and safety to the roll-out of new deployments with zero downtime in production
  • Infrastructure as Code allows full control of the environment configuration enabling scalability and availability

Next Steps

With an AWS Well-Architected Infrastructure and a CI/DC pipeline implemented, HAMPR is going to transfer their Jenkins jobs scheduled to AWS Batch and Lambda and start an application modernisation using Serverless architecture on Lambda.

Conclusion

HAMPR's project was delivered in less than one (1) month, and the velocity was due to automation and CI/CD pipelines — both core DNX principles. The result of our work is now live, providing a cost-effective, secure, and reliable AWS experience for the client.

Proposed Solution & Architecture

DNX was engaged as a trusted advisor to design, implement and deploy HAMPR’s cloud platform and application stacks.

By using DNX One — our all-in-one AWS platform based on open source Terraform modules — HAMPR could promptly start planning the deployment phase into the AWS platform. The following features were implemented:

  • AWS Design and Documentation
  • Infrastructure-as-code using Terraform and DNX open source modules
  • CI/CD Pipelines for Terraform Projects
  • Application Container Strategy
  • Application Blue/Green Deployment
  • AWS ECS Cluster Configuration
  • AWS RDS Setup and Configuration
  • CloudFront and Web Application Firewall Implementation

The diagram below illustrates the high-level design used for HAMPR:

HAMPR's AWS High-Level Design

At DNX Solutions, we work to bring a better cloud and application experience for digital-native startups in Australia.

Our current focus areas are AWS, Well-Architected Solutions, Containers, ECS, Kubernetes, Continuous Integration/Continuous Delivery and Service Mesh.

We are constantly hiring cloud engineers for our Sydney office, focusing on cloud-native concepts.

Check our open-source projects at https://github.com/DNXLabs and follow us on our Twitter or Linkedin

DNX Labs

A cloud-native company

Thanks to Helder Klemp

Flavio Oliveira

Written by

Flavio Oliveira ia a Cloud Project / Product Manager helping clients in their journey to the Cloud with Amazon Web Service — AWS.

DNX Labs

DNX Labs

A cloud-native company

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