Prior to working with Mission, SERVIZ had an architecture that was not highly-available or scalable. They lacked an automated deployment processes, making it difficult to perform application deployments. In addition, their servers were being configured manually by the SERVIZ team, which made keeping the servers configuration homogeneous a constant bottleneck. Because of this, their developers often complained that the infrastructure was difficult to manage. In order to resolve these issues, SERVIZ wanted to re-architect their current AWS infrastructure for their website, Serviz.com. They also wanted to be able to deploy new infrastructure and application versions more rapidly in an automated fashion, using a CI/CD solution.
Mission proposed a scalable and highly-available architecture for the Serviz.com and api.serviz.com website, consisting in a Web layer (ELB + Auto Scaling Group), and an Application layer for api.serviz.com (ELB + Auto Scaling Group). The database layer proposed was RDS Aurora for the relational databases and DynamoDB for unstructured data. Mission incorporated many AWS services into this solution including EC2, ELB, EBS, EBS Snapshots, RDS Aurora, DynamoDB, S3, CloudFormation and CodeDeploy, by creating an architecture for automated infrastructure and/or application deployments. The CloudFormation Blue/Green deployment mechanism now allows fully infrastructure deployments together with new versions of the application (for major application version changes), effective cutovers and the ability to roll-back within minutes. The Blue/green deployment was enabled for most of the layers (Web, App, DB and Cache layers). At the same time, the new self-service application deployment mechanism created with CodeDeploy, offers the customer the ability to deploy application releases automatically and independently from the infrastructure deployment. This is used for situations when minor or patch versions need to be deployed quickly in a rolling fashion and with roll-back capabilities.