Technology Flashcards
Weighted Routing
Allows you to control how much traffic is routed to each resource. Great for load balancing and testing software. Is used by services such as Amazon Route 53.
Failover Routing
Allows for configuring active-passive failover.
Simple Routing
Allows for routing traffic to a single source, such as from a website to a web server.
Latency-based Routing
Allows for routing traffic to the AWS region with the best latency. Usually in cases when there are resources in multiple AWS regions.
AWS OpsWorks
A configuration management service that provides managed instances of Chef and Puppet. These are automation platforms that let you use code to automate the configurations of the servers.
AWS CodeDeploy
Automates code deployments to any instances, such as EC2 Instances and instances running on-premises. Allows you to release new features, avoid downtime during deployment, and handles the complexity of updating your applications.
AWS Batch
Allows developers and other users to run hundreds of thousands of batch computing jobs on AWS.
It’s a regional service.
Amazon RDS (Relational Database Service)
Allows the user to set up, operate, and scale a RDB in the cloud. Is less operationally efficient than Amazon DynamoDB.
Great for rapidly changing data. It’s not a global service.
Read Replica
The main purpose is scalability.
Allows the developer to create read-only copies that are synchronised with the master DB. Great for improved read performance. Can place the Read Replica in a different AWS Region closer to the users for better performance. It doesn’t enhance database availability, protect from a regional failure, or reduce DB usage costs.
Amazon RDS Multi-AZ
The main purpose is high availability. A primary DB Instance. is automatically created, followed by a standby instance in a different AZ. This allows for automatic failover.
Amazon RDS Multi-Region
The main purpose is disaster recovery and local performance.
There is asynchronous replication, and each region can have a Multi-AZ deployment.
AWS CloudFormation
It is an Infrastructure as Code (IaC) that allows you to model and provision resources needed for an application.
It gives developers and systems administrators a simple way to create and manage a collection of related AWS resources, provisioning and updating them in a clear manner.
You can use sample templates or create your own templates for AWS resources. It also allows for estimating the costs of the templates. These templates can be written in a programming language or a simple text file.
Can’t be used for automatic code deployment.
AWS Managed Microsoft AD (Active Directory)
Allows directory-aware workloads and AWS resources to use managed Active Directory in the AWS Cloud. It can’t deploy resources.
Amazon LightSail
Easy way to launch and manage a virtual private server with AWS. Not good for deploying more complex resources.
Has compute, storage, and networking capacity and capabilities to deploy and manage websites and web applications.
It’s a PaaS service.
It isn’t serverless.
Amazon Transcribe
Converts speech to text using Automatic Speech Recognition (ASR).
Amazon Polly
Converts text to speech.
AWS X-Ray
Can analyse and debug serverless and distributed applications, such as those built using a microservices architecture.
- Collect traces
- Record traces
- View service map
- Analyse issues
AWS Trusted Advisor
An online tool that gives you real-time guidance on provisioning your resources following AWS best practices on cost optimisation, security, fault tolerance, service limits and performance improvement.
Checklist covers five areas:
1. Cost Optimization
2. Security
3. Fault Tolerance
4. Performance
5. Service Limits
Can be used to check Amazon EBS volume configurations and warn when volumes appear to be underused. Charges being when a volume is created.
It can’t be used for debugging performance issues for serverless applications built using a microservices architecture. It can’t share reserved EC2 Instances amongst multiple AWS accounts. It can’t help with AWS migration.
It can be used to find underutilized EC2 Instances.
Amazon Pinpoint
Helps marketers and developers to deliver customer-centric engagement experiences by capturing customer usage data to derive real-time insights.
Amazon ECS (Elastic Container Service)
A highly scalable, fast, container management service for managing Docker containers on a cluster. Not a fully managed service.
AWS Fargate
A serverless compute engine for containers. Works with both Amazon ECS (Elastic Container Service) and Amazon EKS (Elastic Kubernetes Service).
It removes the need to provision and manage servers, so you can focus on development.
AWS Lambda
A compute service that lets you run code without provisioning or managing servers (serverless). It only executes code when needed and scales automatically. It doesn’t support running container applications.
It has a maximum execution time of 15 minutes.
It’s a region service.
Amazon ECR (Elastic Container Registry)
Can store, manage, and deploy Docker container images. It doesn’t support running container applications.
Amazon DynamoDB
A fully managed, scalable, serverless, key-value NoSQL DB designed to run high-performance applications at any scale. Has built-in security, continuous backups, automated multi-region replication, in-memory caching, and data export tools.
Can manage structured and unstructured data, including JSON documents.
Has the least operational overhead for any scale when storing data.
It isn’t free and you’re charged for reading, writing, and storing data in your DynamoDB tables, along with optional features that are enabled.
Amazon DynamoDB with Global Tables
Global tables replicate data automatically across selected AWS Regions and automatically scale capacity to accommodate your workloads. Offers active-active cross-region support that is needed for the company.
DAX (DynamoDB Accelerator)
An in-memory cache that delivers fast read performance for your tables at scale by allowing you to use a fully managed in-memory cache. Can improve DynamoDB table read performance by up to 10x. No active-active cross-region configuration.
No caching feature.
Amazon Aurora
A fully managed relational database engine that’s compatible with MySQL and PostgreSQL, but not NoSQL. Can deliver up to 5x the throughput of MySQL and up to 3x the throughput of PostgreSQL without changes to most existing applications.
A well-defined schema is needed.
In a multi-master cluster, all DB instances have read/write capability.
Not suitable when you need to set up a new DB on short notice.
Amazon RDS (Relational Database Service)
Allows for setting up a RDB in the cloud. Has cost-efficient and resizable capacity while automating administration tasks. Doesn’t support NoSQL.
The BYOL (Bring-Your-Own-License) model only applies to the Oracle Engine.
A well-defined schema is needed.
AWS IAM Identity Center
Built on top of AWS IAM, it simplifies access management for multiple AWS accounts, applications, and other SAML-enabled cloud applications. Workforce users get a user portal to access their assigned AWS accounts or cloud applications.
AWS Cognito
Allows for adding user sign-up, sign-in and access control for web and mobile apps. Can authenticate users through social identity providers such as Facebook, Twitter, or Amazon. It has SAML identity solutions, and allows for your own identity system. Great for those building B2C or B2B apps.
AWS IAM (Identity and Access Management)
Allows you to securely control access to AWS services and resources for your users. Can assign users to groups and use permissions to allow and deny their access for AWS resources.
It’s free to use.
AWS CLI (Command Line Interface)
Can manage multiple AWS services from the command line and automate them through scripts.
AWS CodeCommit
A fully-managed source control service that hosts secure Git-based repositories. Makes it easier for teams to collaborate.
AWS CodePipeline
A continuous delivery service that allows to model, visualise, and automate the steps required to release your software. Can model the full release process for building your code, deploying to pre-production environments, testing your application and releasing it to production.
Integrates with many other AWS services such as AWS CodeCommit, Amazon S3, AWS CodeBuild, AWS CodeDeploy, AWS Elastic Beanstalk, AWS CloudFormation, AWS OpsWorks, Amazon ECS, and AWS Lambda.
CodePipeline can’t by itself deploy the code.
AWS Compute Optimizer
It helps you identify the optimal AWS resource configurations, such as Amazon EC2 Instances types, Amazon EBS volume configurations, and AWS Lambda function memory sizes. It uses ML to analyse historical utilisation metrics.
It doesn’t optimise recommendations for S3 and EFS.
AWS Elastic Beanstalk
It’s a Platform as a Service (Paas) that allows you to deploy and scale web applications and services. It handles capacity provisioning, load balancing, auto-scaling, and application health monitoring.
It isn’t serverless.
AWS Partner Solutions
These are automated reference deployments built by AWS solutions architects and AWS Partners.
AWS Forums
A community forum where people can help each other about AWS.
AWS Whitepapers
These are whitepapers written by AWS and the AWS community.
Amazon S3 One Zone-IA (Infrequent Access)
It’s for data that is accessed less frequently but needs rapid access when required. This stores data in only one AZ instead of the standard 3 AZ’s. Thus, it’s 20% cheaper than the standard Amazon S3 Standard-IA.
Has retrieval fees.
Amazon S3 Standard-IA (Infrequent Access)
It’s for data that is accessed less frequently but needs rapid access when required. This stores data in the standard of 3 AZ’s. It’s more expensive than Amazon S3 One Zone (IA).
GET requests are more expensive than standard S3 storage type. Might not be best for websites that are visited frequently.
Amazon S3 Standard
Offers high durability, availability, and performance object storage for frequently accessed data. Doesn’t function as a DB. Doesn’t support file append operations, as it stores objects. All Amazon S3 buckets are encrypted by default using server-side encryption with Amazon S3 managed keys (SSE-S3).
Retrieval time is milliseconds.
No retrieval fees.
Amazon S3 Glacier Flexible Retrieval
A secure, durable, and low-cost storage class for data archiving. It’s cheaper than Amazon S3 One-Zone-IA, but retrieval time ranges from a minute to hours.
It’s less cost-optimal than Amazon S3 Glacier Deep Archive.
Has retrieval fees.
Amazon Neptune
A fully managed DB service built for the cloud, specifically for building and running graph applications.
Amazon EFS (Elastic File System)
A file storage service for use with Amazon EC2. It provides a file system interface, file system access semantics, and concurrently-accessible storage for up to thousands of Amazon EC2 Instances. It uses the Network File system protocol.
Can scale on-demand to petabytes without disrupting applications.
It isn’t encrypted by default, but can be configured to be encrypted.
It’s a regional service and can’t directly connect to CloudFront.
Amazon EBS (Elastic Block Store)
It’s a easy-to-use, high-performance block storage service designed for use with Amazon EC2 for both throughput and transaction-intensive workloads at any scale.
Useful for relational and non-relational DB’s, enterprise applications, containerised applications, big data analytics engines, file systems, and media workflows.
EBS isn’t encrypted by default.
It can’t be accessed simultaneously by multiple EC2 Instances.
When backing an instance, the following things are needed:
1. Security Group
2. EBS Root volume
3. VPC and subnet specification
Instance Store
It gives temporary block-level storage for your instance. This storage is located on disks that are physically attached to the host computer. This differs from persistent storage (i.e. HDD, SSD, Amazon EFS)
Ideal for temporary storage of information that changes frequently or for data that is replicated across a fleet of instances. The data is lost if the Instance experiences failure or is terminated.
They can’t be accessed simultaneously by multiple EC2 Instances.
AWS Systems Manager Session Manager
A fully managed service that has an interactive browser-based shell and CLI experience. It’s for secure and auditable instance management without the need to open inbound ports, maintain bastion hosts, and manage SSH keys.
Great for compliance with corporate policies that require controlled access to instances, increase security and auditability of access to the instances while providing simplicity and cross-platform instance access to end-users.
Amazon EC2 Instance Connect
Provides a simple and secure way to connect to your Linux instances using SSH. You use AWS IAM policies and principals to control SSH access to your instances. Thus there’s no need to share and manage SSH keys. Port 22 still needs to be open for traffic.