Services - Compute Flashcards
1
Q
Batch - Characteristics
A
- It allows to run thousands of computing jobs
- It dynamically maintains the optimal compute resources like CPU, Memory based on the volume of submitted jobs
- It executes workloads on EC2 instances and Fargate
- There is no charge for using this service
2
Q
Batch - Multi-node parallel jobs
A
- Allow to run single jobs that span multiple Amazon EC2 instances
- Can run large-scale, tightly coupled, HPC applications and distributed GPU model training
- A Batch multi-node parallel job is compatible with any framework that supports IP-based, internode communication, such as Apache MXNet, TensorFlow, Caffe2, or Message Passing Interface (MPI)
3
Q
Elastic Beanstalk - Characteristics
A
- It’s service for deploying and scaling web applications and services developed with Java, .NET, PHP, Node.js, Python, Ruby, Go, Docker, and Packer builder on servers like Apache, Nginx, Passenger, and IIS
- Upload the code and it automatically handles the deployment, capacity provisioning, load balancing, auto-scaling, and application health monitoring
- Can have control over the AWS resources powering the application and access those resources at any time
- Pay for AWS services used only
4
Q
Elastic Beanstalk - Types of environments
A
- Web tier environment: handles HTTP / HTTPS requests from the users
- Worker environment:
- A worker is a background process that helps applications for handling heavy resource and time-intensive operations
- EC2 instances and SQS queues are involved
5
Q
ECS - Characteristics 1
A
- It’s a managed container orchestration service that helps to deploy, manage, and scale containerized applications
- Manages clusters of instances that support Docker containers, and monitors resource consumption and availability requirements
- Scales elastically and integrates with other services
6
Q
ECS - Characteristics 2
A
- Security is achieved through policies, availability requirements, and resource allocation
- Pay for AWS resources created to store and run the application
- When launching an ECS instance can pass user data to that instance by setting your custom configuration details in the user data parameter
7
Q
ECS - Components
A
- ECS container agent: a container that allows EC2 instances to talk with the backend logic of ECS for resource management, lifecycle coordination, and efficient scheduling
- Cluster: a group of EC2 instances spread across many AZs that are running the ECS container agent
- Task definition: a file that describes one or more containers. It’s a blueprint that specifies various parameters of your application
- Task: instantiation of a task definition within a cluster
- (Optional) Service: run and maintain many tasks simultaneously in an ECS cluster. Can optionally run it behind a load balancer
8
Q
EKS - Characteristics 1
A
- It’s a managed container service to run and scale Kubernetes applications in the cloud or on-premises
- Doesn’t need to install, operate, and maintain your own Kubernetes control plane or node
- Scales the control plane across multiple AZs, based on load
9
Q
EKS - Characteristics 2
A
- Replaces unhealthy control plane instances, and provides automated version updates and patching for them
- It’s integrated with many services such as ECR, ELB, IAM, and VPC
- Consists of EC2 instances of Fargate compute, and a control plane
- Pay for every EKS cluster used. If you run your Kubernetes worker nodes on EC2 you pay also for EC2 instances and EBS volumes used
10
Q
ELB - Characteristics
A
- It distributes incoming traffic across multiple targets, such as EC2 instances, containers, and IP addresses, in one or more AZs
- It uses health checks on its registered targets to routes traffic only to healthy targets
- It can automatically scale to the vast majority of workloads
- Cross-zone load balancing:
- When enabled, each load balancer node distributes traffic across the registered targets in all enabled AZs
- When disabled, each load balancer node distributes traffic only across the registered targets in its AZ
11
Q
ELB - Types
A
- Application Load Balancing
- Network Load Balancing: for load balancing of TCP, UDP, and TLS traffic where extreme performance is required. Routes traffic to targets within VPC and can handle millions of requests per second. Support dynamic host port mapping as ALBs do
- Classic Load Balancing: basic load balancing across many EC2 instances. Operates at request or connection level. Intended for applications that were built within the EC2-Classic network
- Gateway LB
12
Q
ELB - ALB characteristics 1
A
- Makes routing decisions at the application layer
- Supports HTTP, HTTPS, HTTP/2 and WebSockets. Can use any TCP port
- Uses round-robin load balancing by default
- Provides health checks. They consist of a HTTP GET request and a success code
13
Q
ELB - ALB characteristics 2
A
- Supports path-based routing (forward request to different target groups) and host-based routing (forward requests based on host name)
- Supports native IPv6, WAF integration, dynamic ports (ports utilized by scheduled containers of ECS), deletion protection, and request tracing
- Support Server Name Indication (SNI) to enable hosting of multiple domain names with different TLS certificates for a single ALB. Many certificates can be associated with different listeners
- Supports authentication from OIDC compliant identity providers (Google, Amazon, Facebook). It’s implemented through an authentication action on a listener rule that integrates with Cognito to create the respective user pool
14
Q
ELB - ALB components
A
- Listener: process that checks for a connection request using the configured protocol and port, and according defined rules
- Target: traffic destination based on established listener rules
- Target group: routes requests to one or more registered targets. A target can belong to multiple target groups. Health checks can be configured per target
15
Q
ELB - Gateway Load Balancing
A
- Deploys, scales, and runs third-party virtual networking appliances
- Provides load balancing and auto scaling for fleets of third-party appliances
- It’s transparent to the source and destination of traffic. It’s well suited when using third-party appliances for security, network analytics, and other use cases