CBS License Central needed a stable, highly available, and secure infrastructure to host their server. This system was the gateway to many difference vendors, via APIs. All license reporting with Microsoft etc. was done via this server. Due to the critical nature of this server, and the lack of on-premise hardware to host the server, they decided to run this server out of the AWS cloud.
The AWS Proposed Solution
A 2-tier architecture consisting of a web tier and a database tier.
The web tier servers web content to users with an application load balancer distributing traffic across 2 availability zones. AWS WAF is deployed on the application load balancer to protect against common Layer 7 attacks.
The database tier consists of Amazon RDS running Microsoft SQL Server Std. Edition across 2 availability zones. Amazon CloudWatch monitors the system to ensure that all critical metrics are within a defined threshold. Amazon S3 is used to store backups of the EC2 instances. A bastion host is used is control administrative traffic to the EC2 instances and to minimize the attack surface from the Internet. Amazon SES is used to deliver Emails to customers of the webstores.
Moving to the AWS cloud gave the License Central server developers the reliability that they needed for the gateway server that interfaced with the vendors. Without the need to purchase hardware upfront to meet their requirements, they could choose to pay by the hour, and only for the resources they consume. A huge benefit.
CBS Webstores experienced critical downtime in 2018. A gateway server between the users of all 100 webstores and the vendor order pages failed. Unfortunately, there was no HA architected for this server and it was assumed that the 99.999% availability, that comes by default, was always enough to keep this server up and available. The lesson learnt was that we should always architect HA in all systems and use managed services like Amazon S3 wherever possible.