AWS EC2

Amazon Elastic Compute Cloud

EC2 is a web service offered by Amazon Web Services (AWS) that provides resizable and scalable computing capacity in the cloud. In simple terms, AWS EC2 allows you to launch and manage virtual machines, known as instances, in the AWS cloud.

AWS EC2 is widely used for a variety of applications, including web hosting, data processing, machine learning, and more. It forms the foundation for many cloud-based solutions and allows businesses to rapidly deploy and manage virtual machines in the cloud without the need for physical hardware.

Scale Computing Resources

EC2 instances can be easily scaled up or down based on your workload demands. This scalability ensures that you pay only for the compute capacity you use.

Instance Types

AWS offers a variety of instance types optimized for different workloads, including general-purpose, compute-optimized, memory-optimized, and GPU instances.

AWS has over 700 instance types or combinations of CPU, memory, storage, networking, and specialized chips, offered as virtual or bare metal running Linux, Windows, or Mac operating systems.

Customize Instances

Choosing the right instance can be challenging, cloud infrastructure and IaC enable testing different configurations and changing over time as requirements and usage are better known or evolve.

Check all the available options on the AWS Instance Type Details page.

Processor Architectures

Instances are available in multiple processor architectures:

  • x86 (64-bit Intel Xeon and AMD EPYC),
  • ARM (64-bit AWS Graviton processors),
  • Apple (64-bit M1 and M2).

Specialized Chips

Additionally, instances can have specialized chips like

  • AMD and NVIDIA GPUs,
  • AWS Inferentia2 accelerators for deep learning (DL),
  • AWS Trainium chips for deep learning training,
  • Xilinx FPGAs for custom hardware accelerations.

Secure and Manage Instances

AWS provides features for managing and securing instances, including security groups, key pairs, and Identity and Access Management (IAM) policies.

Load Balancing and Auto Scaling

AWS services like Elastic Load Balancing (ELB) and Auto Scaling in conjunction with EC2 provide high availability and efficient scaling of applications.

Instance autoscaling enables automatic adjustment of the number of virtual machines (VMs) or instances running your application based on real-time demand. Scaling policies use instance metrics like CPU utilization network traffic or custom application metrics that are constantly monitored and when a certain usage exceeds a threshold the cloud automatically adds new instances and shares the load. When the load decreases the additional instances are removed.

Data Storage Options

AWS offers various storage options, including Amazon Elastic Block Store (EBS) for block storage and Amazon S3 for object storage, which can be attached to your EC2 instances.

Networking and VPC

You can configure Virtual Private Cloud (VPC) networks and subnets to isolate and control the networking environment for the EC2 instances.

AMI Management

EC2 instances are launched from Amazon Machine Images (AMIs), allowing to create, customize, and share pre-configured system images.

Monitoring and Management

AWS provides tools like Amazon CloudWatch for monitoring and AWS Systems Manager for managing EC2 instances at scale.

Instance Lifecycle

Most instances can be started in seconds in any of the AWS regions, additionally can be paused (hibernated), stopped, destroyed, backed, or cloned by taking a point-in-time snapshot of the storage with the instance running or stopped.

Leave a Reply

Your email address will not be published. Required fields are marked *


Related Cloud Tutorials

Using the Terraform aws_route53_delegation_set, aws_route53_zone, and aws_route53_record resource blocks to configure DNS in AWS.
Using the Terraform aws_db_instance resource block to configure, launch, and secure RDS instances.
How to use the Terraform aws_instance resource block to configure, launch, and secure EC2 instances.
How to configure and use the Terraform aws_ami data source block to find and use AWS AMIs as templates (root volume snapshot with operating system and applications) for EC2 instances.
How to configure and use the Terraform aws_key_pair resource block to create and manage AWS Key Pairs for performing SSH Public Key Authentication into EC2 instances.
Javier Ruiz Cloud and SaaS Expert

Javier Ruiz

IT Wonder Lab tutorials are based on the diverse experience of Javier Ruiz, who founded and bootstrapped a SaaS company in the energy sector. His company, later acquired by a NASDAQ traded company, managed over €2 billion per year of electricity for prominent energy producers across Europe and America. Javier has over 25 years of experience in building and managing IT companies, developing cloud infrastructure, leading cross-functional teams, and transitioning his own company from on-premises, consulting, and custom software development to a successful SaaS model that scaled globally.

Are you looking for cloud automation best practices tailored to your company?

linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram