EC2 Fundamentals Flashcards
What is EC2
Elastic Compute Cloud
Infrastructure as a service
What are the 4 main purposes of EC2?
- Renting virtual machines (EC2)
- Storing data on virtual drives (EBS)
- Distributing load across machines (ELB)
- Scaling the services using an auto-scaling group (ASG)
What does the cloud provide?
On demand computing
Features:
- Operating System (OS): Linux(most popular), Windows or Mac OS.
- How much compute power and cores (CPU)
- How much random-access memory (RAM)
- How much storage space:
- Network-attached (EBS & EFS)
- hardware (EC2 Instance store)
- Network card: speed of the card, Public IP address
- Firewall rules: security group
- Bootstrap script (configure at first launch): EC2 User Data
EC2 sizing & configuration options
How can an instance be bootstrapped?
With an EC2 User Data script
What is bootstrapping?
launching commands when the machine starts
When does the user data script run?
Once during the first start instance.
Examples:
- Installing updates
- installing software
- Downloading common files from the Internet
- Anything you can think of…
EC2 user data script to automate boot tasks.
EC2 User Data scripts runs with a root user?
True
Any command you have will have the pseudo rights?
True
Instance type:
- Balance between:
- Compute
- Memory
- Networking
- In the course, we will be using the t2.micro which is a General Purpose EC2 instance
General Purpose
Instance type:
- Batch processing workloads
- Media transcoding
- High performance web servers
- High performance computing (HPC)
- Scientific modeling & machine learning
- Dedicated gaming servers
Compute Optimized - of C name
Instance type:
- High performance, relational/non-relational databases
- Distributed web scale cache stores
- In-memory databases optimized for BI (Business Intelligence)
- Applications performing real-time processing of big unstructured data
Memory Optimized - of R/X/Z name
Instance type:
- High frequency online transactions processing (OLTP) system
- Relational and NoSQL databases
- Cache for in-memory databases (ex: Redis)
- Data warehousing applications
- Distributed systems
- HPC Optimized
- Instance Features
- Measuring Instance Performance
Storage Optimized - of I/G/H1
Uses hardware accelerators, or co-processors, to perform functions, such as floating point number calculations, graphics processing, or data pattern matching, more efficiently than is possible in software running on CPUs.
- Accelerated Computing
Provides a balance of compute, memory and networking resources, and can be used for a variety of diverse workloads. These instances are ideal for applications that use these resources in equal proportions such as web servers and code repositories.
General Purpose