The infrastructure was designed to support dynamic scaling of EC2 instances by utilizing the EC2 Autoscaling.
Terraform is an open-source Infrastructure as Code (IaC) tool developed by HashiCorp that allows users to define and manage AWS infrastructure using a high-level configuration language known as HashiCorp Configuration Language (HCL). The Terraform template contained modules for networking, compute, database and caching components and were called different environments for different sets of configuration.
For build and deployment, Gitlab CI was used. The jobs were triggered automatically for 'dev' environment when new commits were pushed to 'master' branch. The 'production' deployment was triggered manually via GitLab.
- Cloud : AWS | - Hosting Platform : AWS EC2 | - CI/CD : GitLab CI |
---|
- Database: AWS RDS Aurora for MySQL | - Assets Storage: AWS S3 | - Caching: AWS Elasticache (Redis) |
---|
- Application Framework: Pimcore 10 (PHP Symfony) | - IAC: Terraform |
---|