Previously, we discussed about cloud computing. To conclude the benefit, cloud computing is the on-demand delivery of computer power, database storage, applications and other IT resources through a cloud services platform via the internet with pay-as-you-go pricing. In this article, we will focus on the overview of AWS Cloud service.
AWS Cloud Infrastructure
Generally, all the things in traditional infrastructure always happen on AWS.
When we talk about the infrastructure of AWS, we should learn regions, Availability Zones (AZs) and Edge Locations first. But please note that different cloud provider will have different definition.
This is a picture that I capture from https://www.infrastructure.aws
Generally speaking, Regions mean geographic locations and consist of at least two Availability Zones (AZs). AZs mean the clusters of data centers. It isolated from failures in other AZs. It connected through low-latency links. Each AZ is made up of one or more data centers. It is designed for fault isolation. And it interconnects with other AZs using high-speed private links.
The most important point is that some service in AWS work for regions while some services in AWS work for zones.
An edge location is where users access AWS services. To deliver content to end users with lower latency, Amazon CloudFront uses a global network of 220+ Points of Presence (210+ Edge Locations and 12 Regional Edge Caches) in 87 cities across 44 countries.
AWS Foundational Services
Then we move to talk about the foundation service.
Basically, it could be classified as compute, network, storage, security & identity and applications.
For advanced users, they may also use databases, analytics, app services, management tools, developer tools, mobile services and IoT.
It is not necessary to use all of them, we just need to pick some useful services which are beneficial for us. For beginner, Amazon EC2 should be the most convenient service because it is just a VM on cloud. But if you are advanced user, you can even use serverless architecture that no any servers are own by the user. I had a demonstration for serverless architecture on AWS in this article.
Cost is probably the most critical part when considering cloud computing. Some people are under the impression that migrating to cloud can save much money. This is true or may not be true. The reason is that it depends your solution architecture. That’s why a good solution architecture is valuable.
The first way to optimize the cost is choosing the right-sizing of instance.
If we know the instance will run for long time, reserved instance should be a good choice.
Sometimes we should use scale out instead of scale up. This means we buy more cheap instance instead of buying fewer expensive instance.
By using AWS trusted advisor and cost explorer, we can easily find the most expensive service and try to reduce the cost.
Total Cost of Ownership (TCO)
As I said, cost is the critical point when considering cloud computing. But the cost does not only mean the money, but also the responsibility.
When we run a data center, we need server costs, storage costs, network costs. And the most important cost we always ignore – IT labor costs.
When we use cloud, we also outsource the data center maintenance cost to cloud provider. For example, we do not need to handle the air-conditioner, the fire equipment, the humidity and the electricity. In case if we want to handle these issues by ourselves, we need to hire some people with 7 x 24 shift, it may not be affordable for everyone.
In this article, we talked about the AWS cloud infrastructure. We must find a set of services which are equal to on-premises. Secondly, we have a overview of AWS foundational services which are compute, network, storage, security & identity and applications. Thirdly, we talk about cost optimization, some simple ways to reduce the cost. Finally, we learnt that public cloud can save our money indirectly by outsourcing the responsibility.