A traditional solution would require to buy servers, storage, sign an expensive CDN contract, in order to efficiently deliver content globally, then launch the website or web application, and then manage its scaling and provisioning.
In the Cloud, however, it's much simpler than that: You don't need to buy any IT infrastructure, but you can get it on demand on Amazon Web Services, and you can deploy it worldwide from day one, without any additional extra costs. You can also scale your capacity up and down when needed, by benefiting from the autoscaling and load balancing features. Saving time will also allow you to focus more on your business.
For this web startup, we would likely use the following services (briefly explain these services)
15:00 Before we start, let me show you this architectural diagram. This is what we'll end up with. At the bottom, a self-managed Database, serving content to a cluster of auto-scaling web servers, serving web pages to internet users through an automated Load Balancer and a Content Delivery service. Sounds complicated? You will see it's not!
0:17 In step one, we launched a server, installed software, and made our website available online. Pretty simple. Interesting development: our web traffic goes up...
0:35 And we suddenly have a problem: how can we reach to our increasing number of fans worldwide? We need a CDN, or Content Delivery Network, a service that delivers content across multiple locations worldwide, improving the user experience. This way, every time someone visits our page, the content, in this case the pictures, are served from the closest location, automatically.
0:12 From an architectural perspective, we have a single web server, and requests for content will go through CloudFront, reducing the load on our server.
0:09 In your html code, change the URL of your pictures to the CloudFront distribution, like this.
0:12 In step two, we used pictures from Amazon S3 to create a CloudFront distribution, and changed our website to take advantage of it. Very simple.
0:08 In short, our IT Architecture needs an update. Let's see how it can be done.
0:15 A traditional way to grow our architecture would be to simply add servers, each one with its own database, and that's it. However, this could easily turn up into a mess. This is 2011. There should be a better way. Well, there is.
0:15 Look at the "old way" on the left. Right, you can see that we want to use an automated Load Balancer to manage traffic to our machines, and auto-scaling to automate the number of servers running. Just to start.
0:09 In step three we saw more servers being launched with the Autoscaling feature, and then being added to the Elastic Load Balancer.
0:15 One option is to use Amazon RDS, the Relational Database Service, our Database in the cloud. RDS is automatically managed by Amazon, as well as its Failover replicas.
0:15 In step four, we launched a new Database instance, or RDS, and pointed the web servers to it. Then we created a read replica, and our first backup snapshot. That's it!
0:15 There are many difficult things related to Databases: Administration, Backups, Clustering, Replication, and so on. Difficult, time consuming, error prone. How can we use automation to optimize this?
There is a strong focus on security, and security is our top priority together with operational excellence.