Amazon Elastic Compute Cloud (Amazon EC2)
Amazon EC2 (Elastic Compute Cloud) is a web service provided by Amazon Web Services (AWS) that allows users to rent virtual computers, known as instances, on which to run their own applications. EC2 provides resizable compute capacity in the cloud, making it easier for developers to scale their computing resources as needed. Users can choose from various instance types with different compute, memory, storage, and networking capacities, depending on their requirements. With EC2, users have full control over their virtual computing environment, including the ability to configure security settings, manage storage, and deploy custom software.
Let's take an example: Imagine you are the architect of resources in your company and need to support new web applications. With traditional on-premise model you have to do following:
1. Spend money to purchase the hardware.
2. Wait for the servers to be delivered.
3. Install the servers in physical data center.
4. Install necessary softwares / Make all necessary configurations.
Instead, With Amazon EC2 instance you can use a virtual server to run web applications on the cloud.
1. You can launch Amazon EC2 instance within minutes.
2. You can stop Amazon EC2 instance when you finish running a workload.
3. You need to pay only for the compute time Amazon EC2 instance is running , not for the time its stopped or terminated.
4. You can save the cost by paying only for the server capacity you want to use.
How Amazon EC2 works?
LAUNCH : First you launch the instance. You can begin by selecting from the basic template and configurations for your instance. You can select the operating system, application server or applications and also select the instance type that is basic hardware configuration for your instance. You can also select the security settings to control the network traffic that can flow in and out of your instance.
CONNECT : Second step is to connect your instance. Your program and applications have multiple different methods to connect with instance and exchange data.
USE : Once you connect your instance , you can start using it. You can run your programs / applications, run commands, add storage, copy / organize files etc..