docker Flashcards

(15 cards)

1
Q

What AWS services are used for managing Docker containers?

A

Amazon ECS: AWS’s native container orchestration platform

Amazon EKS: Managed Kubernetes (upstream Kubernetes)

AWS Fargate: Serverless compute for containers; works with ECS and EKS

Amazon ECR: Private container registry for container images

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is the Amazon ECS EC2 launch type and how does it work?

A

ECS = Elastic Container Service

Running containers on AWS = launching ECS tasks on ECS clusters

EC2 launch type requires you to provision and manage the EC2 instances

Each EC2 instance must run the ECS Agent to register with the cluster

AWS handles starting and stopping containers

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is the Amazon ECS Fargate launch type and how does it work?

A

Run Docker containers on AWS without managing EC2 instances

Fully serverless—no infrastructure provisioning

You only define task definitions

AWS runs tasks based on requested CPU and memory

Scaling = increasing the number of tasks (no instance management)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What IAM roles are used in Amazon ECS and what are they for?

A

EC2 Instance Profile (EC2 launch type only):

Used by the ECS Agent

Makes API calls to ECS

Sends container logs to CloudWatch Logs

Pulls images from ECR

Reads secrets from Secrets Manager or SSM Parameter Store

ECS Task Role:

Assigns a specific IAM role to each ECS task

Different tasks can use different roles

Defined in the task definition

Allows tasks to access services like S3, DynamoDB, etc

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What load balancers can be integrated with Amazon ECS, and when should each be used?

A

Application Load Balancer (ALB):

Fully supported

Best for most use cases

Network Load Balancer (NLB):

Use for high-throughput or high-performance needs

Good when pairing with AWS PrivateLink

Classic Load Balancer (CLB):

Supported but not recommended

No advanced features and not compatible with Fargate

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

How does Amazon ECS use EFS for data volumes?

A

You can mount Amazon EFS filesystems onto ECS tasks

Works with both EC2 and Fargate launch types

Tasks in any Availability Zone share the same EFS data

Fargate + EFS provides a fully serverless setup

Ideal for persistent, multi-AZ shared storage

Note: S3 cannot be mounted as a filesystem

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

How does ECS Service Auto Scaling work and what scaling methods does it support?

A

Automatically adjusts the number of ECS tasks

Uses AWS Application Auto Scaling with metrics such as:

Average CPU utilization

Average memory utilization

ALB request count per target

Supports three scaling strategies:

Target Tracking: scales to maintain a metric target

Step Scaling: reacts to CloudWatch alarms

Scheduled Scaling: scales at specific times

ECS task-level scaling is different from EC2 instance–level autoscaling

Fargate scaling is simpler because it’s serverless

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

How does auto scaling work for EC2-based ECS clusters?

A

EC2 instances must scale to support ECS service scaling

Auto Scaling Group (ASG) Scaling:

Scales EC2 instances based on CPU utilization

Adds instances over time as needed

ECS Cluster Capacity Provider:

Automatically provisions and scales EC2 infrastructure for ECS tasks

Works with an ASG

Adds EC2 instances when cluster capacity (CPU, RAM, etc.) is insufficient

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is Amazon ECR and how is it used with ECS?

A

ECR = Elastic Container Registry

Stores and manages Docker images on AWS

Offers private and public repositories (ECR Public Gallery)

Fully integrated with ECS and backed by Amazon S3

Access controlled through IAM (permission issues = IAM policy)

Supports vulnerability scanning, versioning, tags, and image lifecycle policies

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What node types can be used in Amazon EKS?

A

Managed Node Groups:

EKS creates and manages EC2 worker nodes

Nodes run in an ASG controlled by EKS

Supports On-Demand and Spot instances

Self-Managed Nodes:

You create and register the nodes yourself

Can use EKS-Optimized AMIs

Supports On-Demand and Spot instances

AWS Fargate:

No nodes to manage

Fully serverless for running pods

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

How does Amazon EKS handle data volumes and what storage options does it support?

A

Requires defining a StorageClass manifest in the cluster

Uses CSI (Container Storage Interface) drivers for storage integration

Supported storage options:

Amazon EBS

Amazon EFS (works with Fargate)

Amazon FSx for Lustre

Amazon FSx for NetApp ONTAP

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is AWS App Runner and what does it provide?

A

Fully managed service to deploy web apps and APIs at scale

No infrastructure expertise required

Deploy from source code or a container image

Builds and deploys automatically

Provides autoscaling, high availability, load balancing, and encryption

Supports VPC access

Can connect to databases, caches, and message queues

Ideal for web apps, APIs, microservices, and fast production deployments

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What does AWS App2Container (A2C) do?

A

CLI tool for containerizing Java and .NET web apps

Lift-and-shift apps from on-prem, VMs, or any cloud to AWS

No code changes required; accelerates modernization

Generates CloudFormation templates (compute, networking, etc.)

Registers generated Docker images to ECR

Deploys to ECS, EKS, or App Runner

Supports pre-built CI/CD pipeline integration

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What are the main steps of the AWS App2Container (A2C) workflow?

A

Discover & Analyze: Build an inventory and analyze runtime dependencies

Extract & Containerize: Extract the app with dependencies and create a Docker image

Create Deployment Artifacts: Generate ECS task defs, EKS pod defs, CI/CD pipelines, and CloudFormation templates

Deploy to AWS: Push image to ECR and deploy to ECS, EKS, or App Runner

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q
A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly