ASA Quick Fire Questions Flashcards
What is a client? (Server)
A client is a person or computer that sends a request.
What is a Server?
A server handling the requests is a computer, or collection of computers, connected to the internet serving websites to internet users.
What does HTTP serves include?
Windows and Linux options
At a fundamental level, what are the three types of compute options?
Virtual Machines (VMs), Containers and Serverless
What is a Virtual Machine (VM)?
A VM emulates a physical server and allows you to install an HTTP server to run your application
What is a HTTP?
HTTP (Hypertext Transfer Protocol) is a set of rules that define how data is transmitted over the internet. It is the foundation of data communication on the World Wide Web.
HTTP allows web browsers and servers to communicate and exchange data, such as web pages, images, videos, and other multimedia content.
What is a hypervisor?
In its simplest form, a hypervisor is software or firmware that makes it possible to share physical hardware resources across one or more virtual machines. The hypervisor provisions the resources to create and run your VMs
What is an EC2?
Is a resizable compute capacity in the cloud, in which you can provision virtual servers called EC2 instances.
What’s three things you can do with EC2?
- Provision and launch one or more EC2 instances in minutes
- Stop or shut down EC2 instances when you finish running a workload
- Pay by the hour or second for each instance type (minimum of 60 seconds)
To create an EC2 instance, what two things must you define?
- Hardware Specifications: CPU, memory, network and storage
- Local Configurations: Networking location, firewall rules, authentication, and the operating system of your choice
When launching an EC2 instance, what do you first configure?
Amazon Machine Image (Operating Image)
Whats the relationship between EC2 and AMI?
The AMI is the Operating System that sits under the EC2, the AMI is the blueprint and the EC2 instance is the product created and run through the AMI blueprint
Whats an advantage of an AMI? (Give example)
They are reusable. you could create an another AMI through an EC2 instance, and repeat this process meaning you would have the same configurations as all AMI’s are the same.
When updating an AMI, does it automatically update all other AMIs?
NO. AMIs are immutable, which means that once an AMI is created, its contents and configuration cannot be directly modified or updated. An AMI is a snapshot of the state of an instance at a specific point in time.
What are five categories of AMIs, and what do they offer?
- Quick Start AMI - Pre-made AMIs created by AWS
- Marketplace AMIs - Open-source Third-party created
- My AMIs - Your library of AMIs created from your EC2
- Community AMIs - Provided by the AWS user community
- Custom Image - Build your own custom image with EC2 image builder
What is open-source?
When code is publicly available and free to be used and modified
What could be the primary reasons for taking a snapshot (AMI) of an EC2 instance?
For Backup and Recovery: have a backup of the instances root volume and any attached EBS volumes, just in case of any data loss or corruption
What does the AMI include?
- Operating System
- Storage mapping
- Architecture type
- Launch Permissions
What will instance sizing depend on?
demands of application and anticipated size of your user base
What are EC2 instance made up of?
Virtual Processors, Memory, network, and in some cases instance storage and graphic processing units, which you choose how much you need of each when creating an instance.
Instant types consist of a prefix identifying the type of workload they are optimized for, followed by size. How can instance size be broken down? For example ‘c5n.xlarge’
- First Position (C) - Instance family (Example indicates it is Compute Optimized)
- Second Position (5) - Generation of the instance
- Remaining letters before the period (n) Additional attributes such as NVMe storage
- After Period (xlarge) - Instance size
What are the 6 EC2 Instance Families, with a overview and use case?
- General Purpose: These instances provide a balanced mix of compute, memory, and networking resources, suitable for various workloads like web servers and code repositories.
- Compute Optimized: Designed for compute-intensive applications like high-performance processors, such as batch processing, media transcoding, high performance web servers.
- Memory Optimized: Ideal for memory-intensive applications like high-performance databases, in-memory caches, real-time analytics
- Accelerated Computing: These instances use hardware accelerators for efficient parallel processes making them suitable for machine learning, HPC, scientific simulations
- HPC Optimized: Purpose-built for running HPC workloads at scale on AWS, ideal for applications such as large scale simulations and deep learning workloads
- Storage Optimized: For workloads that require high sequential read and write access to large datasets on local storage, such as NoSQL databases, in-memory databases, data warehousing and analytics
Where is a EC2 instanced default placed when created?
VPC. However any resource you put in the default will be public and accessible by the public so you shouldn’t place any customer data
When architecting for high availability, what should you at least have?
two EC2 instances for two separate AZs
When you launch an EC2 instance, what lifecycle stage does it enter?
Pending. Billing has not started at this point, its where it performs all actions to set up an instance
What is the running stage of a lifecycle instance?
Its ready to use, and where billing begins. You are now able to take other actions such as reboot, terminate, etc
What is the Rebooting stage of a lifecycle instance?
Its like rebooting an operating system. The instance keeps its public DNS and private and public IPv4 addresses.
What is the stopping and stopped state of a lifecycle instance?
Similar to when you shut down your laptop. You can stop an instance if you have an EBS volume as its root device (as data will be lost otherwise) when you stop and start it can be placed on a new underlying physical server.
When you put the instance into stop-hibernate, it saves the last information or content into memory so the process starts faster
What is the terminate stage, in a instance lifecycle?
Charges are stopped and you no long have access to the machine. All is lost.
What is an On-Demand instance?
You per per second or per hour, depending on the instances your run. You can increase or decrease your compute capacity to meet demands of your application.
What use cases are On-Demand Instance for?
- Users who prefer low cost and flexibility of EC2 without long commitments or upfront payments
- Applications with short-term or spiky workloads that could be interrupted
- Applications being tested for the first time
What is a Spot Instance?
Applications that have flexible start and end times. You can request spare EC2 compute capacity for up to 90% off the on-demand price. You can set a cost limit for the instance hour which can gradually change based of long term trends in demand of spot instances
What use cases are for Spot Instances?
- Applications that have flexibility
- Applications that are cheaply feasible
- Users with fault tolerant or stateless workloads
What is Savings Plans?
Flexible pricing model that offers low usage prices for a 1-year or 3-year term commitment to a consistent amount of usage. It applies to EC2, Lambada and Fargate and provide up to 72% savings on AWS Compute usage
What use cases are for Savings Plans?
- Consistent and steady usage
- Customers who want to use different instance types and compute solutions across different locations
- Customers who can make 1-year to 3-year EC2 commitments
What is Reserved Instances?
Need for reserved capacity. You save up to 72% compared to on-demand. You can choose between; Upfront, partial upfront or no upfront payment (1-year or 3-year commitment)
What three type of Reserved Instances are there?
- Standard: provide the most significant discount (Up to 72% off On-Demand pricing) and best suited for steady state usage
- Convertible: Up to 54% discount and ability to change attributes of the reserved instance if the exchange results in creation of Reserved instances or equal or greater value
- Scheduled: Available to launch within the time windows that you reserve, which you can match to a predictable recurring schedule that only requires a fraction of a day, a week or month
What is a dedicated host?
A EC2 server dedicated to you. They can be purchased on demand (hourly) and can be purchased as a reservation for up to 70% off
What use case are for Dedicated Host?
Customers who want to use their own, existing server licences such as Windows, SQL, Oracle and help meet compliance requirements.
What sort of workloads can Containers host?
web applications, lift and shift migrations, distributed applications, streamlining of development
What is a Container?
A standardized unit that packages your code and its dependencies which creates its own environment
What is Docker?
A container runtime that simplifies the management of the entire operating system required for container isolation, including networking and storage. It helps customers create, package, deploy and run containers
What’s the difference between VMs and Containers?
- Containers share the same operating system and kernel as the host that they exist on. But VMs contain their own operating system, in which each must maintain a copy of, resulting in wasted resources.
- They are quicker and more lightweight, meaning a quicker spinup
- containers provide speed but VMs provide full strength of an operating system and more resources such as package instillation and dedicated kernel
What is a Kernel?
Central of the operating system, it is the bridge between the hardware and software applications
How should you run containers in a high available and scalable manner?
Running many containers on many EC2 instances across several AZs
What two container management services are there?
- ECS (Elastic Container Service)
- EKS (Elastic Kurbernetes Service)
What is ECS?
Define containers in a task definition that you use to run an individual task or a task within a service.
How could you run a ECS?
- Via AWS Fargate,, through a serverless infrastructure
- EC2 instance cluster which you manage yourself (but must download an agent on your instances)
What is an EC2 instance with a container agent called?
Container instance
What actions can you perform on a ECS container instance?
- Launching and stopping
- Getting cluster state (running, pending, etc)
- Scaling
- scheduling placement of containers across your cluster
assigning permissions - meeting availability requirements
To prepare for your app to run on ECS, what should you do?
create a task definition (JSON format) that describes the containers, which are the blueprints describing the resources needed to run such as CPU, memory, etc
What are Kubernetes?
Kurbenetes is a portable, extensible, open-source platform for managing container workloads and services
What is EKS?
Manage kurbenetes on AWS without the need to install and operate
What is control plane?
The brain of the kurbenetes managing the state.
What is a node?
virtual machine that runs containerized workload