AWS Core Services Flashcards
3 ways to interact with AWS
- Console: Users can leverage their browser to configure resources
- Command line interface (CLI) : Command line access for administering AWS resources
- Software Deveopment Kit (SDK) : Programmatic access to manage AWS resources
What is the AWS Management Console?
A web and app based interface for interacting with most all of the 150+ AWS services. All major browsers and mobile operating systems are supported.
What is the AWS Command Line Interface (CLI)?
Tool to manage your use of AWS services from the command line on Windows, Mac, and Linux. Most every task that can be done in the console can be done in with the CLI.
What is AWS Software Developer Kit (SDK)?
Programming language-specific resources that allow you to interact with AWS services via code. This approach enables you to automate many aspects of how you interact with the platform.
Languages are supported for the SDK
- Java
- .NET
- Node.js
- PHP
- JavaScript(Browser)
- Python
- Ruby
- Go
- C++
Roger’s company runs several production workloads in AWS
They have a new web application that manages digital assets for marketing
They need to automatically create a user account in Amazon Cognito on sign-up
They want this step seamlessly integrated into the application
Which interaction method would Roger’s company use for this?
Solution: Software Development Kit (SDK)
Eliza’s company is considering transitioning to AWS
They want to leverage Amazon Relational Database Service
Eliza wants to test out a single database on the service
What interaction method would Eliza use for this use case?
Solution: AWS Console
Jennifer’s company is a startup
They created a social network for entrepreneurs with a web and mobile app
Jennifer has a set of tasks she needs to run on AWS each day to generate reports
What interaction method would Jennifer use for this use case?
Solution: Command Line Interface (CLI)
3 Compute Services on AWS
- EC2: Provides secure and resizable virtual servers on AWS
- Elastic Beanstalk: Platform for scaling and deploying web apps and services
- Lambda: Enables compute without managing servers
What is Elastic Compute Cloud (Amazon EC2)?
A web service that provides resizable compute capacity in the cloud. It is designed to make web-scale computing easier for developers.
EC2 Instance Types
Defines the processor, memory, and storage type Cannot be changed without downtime Provided in the following categories - General purpose - Compute, memory, and storage optimized - Accelerated computing Pricing is based on instance type Some instance types have unique capabilities
What is the EC2 Instance Store?
Ephemeral storage that is physically attached to the host the virtual server is running on
What is Elastic Block Store (EBS)?
Persistent storage that exists separately from the host the virtual server is running on
Amazon Machine Image (AMI)
- Template for an EC2 instance including configuration, operating system, and data
- AWS provides many AMI’s that can be leveraged
- AMI’s can be shared across AWS accounts
- Custom AMI’s can be created based on your configuration
- Commercial AMI’s are available in the AWS Marketplace
3 EC2 Purchase Options
- On-Demand
You pay by the second for the instances that are launched - Reserved
You purchase at a discount instances in advance for 1-3 years - Spot
You can leverage unused EC2 capacity in a region for a large discount
Reserved Instance Cost Model
- All Upfront
Entire cost for the 1 or 3 year period is paid upfront. (Maximum Savings) - Partial Upfront
Part of 1 or 3 year cost is paid upfront along with a reduced monthly cost. - No Upfront
No upfront payment is made, but there will be a reduced monthly cost. (Minimum Upfront Cost)
Spot Instances
Can provide up to 90% discount over on-demand pricing
There is a market price for instance types per availability zone called the Spot price
When you request instances, if your bid is higher than Spot price they will launch
If the Spot price grows to exceed your bid, the instances will be terminated
Spot instances can be notified 2 minutes prior to termination
EC2 Purchase: If you have an instance that is consistent and always needed, you
should leverage what kind of purchase?
A Reserved Instance
EC2 Purchase: If you have batch processing where the process can start and stop without affecting the job, you should leverage what kind of purchase?
Spot Instance
EC2 Purchase: If you have an inconsistent need for instances that cannot be stopped without affecting the job, you should leverage what kind of purchase?
On-Demand Instance
What is AWS Elastic Beanstalk?
- Automates the process of deploying and scaling workloads on EC2 (PaaS)
- Supports a specific set of technologies
- Leverages existing AWS services
- Only pay for the other services you leverage
- Handles provisioning, load balancing, scaling, and monitoring
What are the Application platforms supported by AWS Elastic Beanstalk?
- Java
- .NET
- PHP
- Node.js
- Python
- Ruby
- Go
- Docker
What is the use case for AWS Elastic Beanstalk?
- Deploy an application with minimal knowledge of other services
- Reduce the overall maintenance needed for the application
- Few customizations are required
What is AWS Lambda?
- Enables the running of code without provisioning infrastructure
- Only charged for usage based on execution time
- Can configure available memory from 128 MB to 3008 MB
- Integrates with many AWS services
- Enables event-driven workflows
- Primary service for serverless architecture