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 Business 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.
The Solution
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
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.
At DNX Solutions, we work to bring a better cloud and application experience for digital-native companies in Australia. Our current focus areas are AWS, Well-Architected Solutions, Containers, ECS, Kubernetes, Continuous Integration/Continuous Delivery and Service Mesh. We are always 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 Twitter, Linkedin or Facebook.
No spam - just releases, updates, and tech information.
Stay informed on the latest
insights and tech-updates