Explore AWS Compute
After completing this unit, you’ll be able to:
- Describe AWS compute services.
- Explain the need for servers.
Before you complete this module, make sure you complete AWS Identity and Access Management. The work you do here builds on the concepts you learn in there.
Now that you have permission to access AWS resources, you can start building your cat photo application.
The first building block you need is a place to host and store your website, so that others can access it. Often that place is a Hypertext Transfer Protocol (HTTP) server. It’s a computer, or collection of computers, connected to the internet serving websites to internet users.
These servers power your application by providing CPU, memory, and networking capacity to process users’ requests and transform them into responses. Common HTTP servers include:
- Windows options, such as Internet Information Services (IIS).
- Linux options, such as Apache HTTP Web Server, Nginx, and Apache Tomcat.
To run an HTTP server on AWS, you need to find a service that provides compute power in the AWS Management Console. You can log into the console and view the complete list of AWS compute services.
When looking at this list, you may feel intimidated by all of the options. Which one enables you to install an HTTP server to run your cat photo application in the best way?
Choose the Right Compute Option
If you’re responsible for setting up servers on AWS to run your infrastructure, you have many compute options. You need to know which service to use for which use case. At a fundamental level, there are three types of compute options: virtual machines, container services, and serverless. This module discusses all of these options and some of the key use cases and tradeoffs to be aware of.
If you’re coming to AWS with prior infrastructure knowledge, a virtual machine can often be the easiest compute option in AWS to understand. This is because a virtual machine emulates a physical server and allows you to install an HTTP server to run your applications. To run these virtual machines, you install a hypervisor on a host machine. This hypervisor provisions the resources to create and run your virtual machines.
In AWS, these virtual machines are called Amazon Elastic Compute Cloud or Amazon EC2. Behind the scenes, AWS operates and manages the host machines and the hypervisor layer. AWS also installs the virtual machine operating system, called the guest operating system.
Since other AWS compute services use Amazon EC2, it’s best to understand this service first before moving on to containers and serverless. In the next unit, you learn more about using Amazon EC2 as the compute layer for your cat photo application.