Serverless Flashcards

1
Q

What does AWS X-Ray do?

A

it allows you to scan Lambda architecture and debug issues with AWS Lambda

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

Can an AWS Lambda function trigger another AWS Lambda Function?

A

No

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

What is AWS SAM?

A

A superset of Cloudformation functionality that allows you to run serverless applications locally

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

At a high level, what does ECS do?

A
  • ECS is a managed container orchestration service
  • It creates clusters to manage fleets of container deployments
  • Schedules containers for optimized placement within a cluster
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

In the context of ECS, What is a cluster?

A

In ECS, A cluster is a logical connection of ECS resources

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

In the context of ECS, what is the difference between a task definition and a container definition?

A
  • A task definition defines your application (think Dockerfile but for ECS)
  • A container definition defines the individual containers a task uses (think CPU, malloc, port mappings)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Suppose you have two containers that always need to run together. How would you ensure this in ECS?

A

put their container definitions under the same task definition

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

In the context of ECS, what is a task?

A

A single running copy of any containers defined in a task definition

(One working copy of your application)

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

In the context of ECS, what is a service?

A

A service allows task definitions to scale by adding tasks.

Sets a min/max number of tasks that varies with autoscaling

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

At a high level, what is Fargate?

A

Fargate is a serverless container engine

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

In what instances would you use EC2 instances instead of Fargate?

A
  • Strict compliance requirements
  • Your use case requires broader customization (since you can’t actually get in to the Fargate instance)
  • Your use case requires GPUs
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What does EKS stand for?

A

Elastic Kubernetes Service

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

At a high level, what is Kubernetes?

A

Kubernetes is an open-source software that lets you deploy and manage containerized applications at scale

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

In the context of EKS, what is a pod?

A

In EKS, containers are grouped into pods

It is roughly analagous to a task in ECS

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

What is the use case for EKS?

A
  • You are already using Kubernetes and want to migrate to AWS
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

How does ECR ensure high availability?

A

It is deployed across multiple AZs within a region

17
Q

At a high level, what is ECR?

A

ECR is a managed Docker container registry

18
Q

How does ECS benefit from ELB?

A

with ELB, you can distribute traffic evenly across tasks in your service

19
Q

What is the difference between EC2 Instance Roles and Task Roles?

A
  • An EC2 Instance Role applies a policy to all tasks running in that EC2 instance
  • A Task Role only applies to that task

So, Task Roles respect Least Priviledges better than EC2 instance Roles

20
Q

When configruing SQS as event source for AWS Lambda function, what is the maximum batch size supported by AWS SQS RecieveMessage API call?

A

10

21
Q

What Amazon CloudFront events can be used to trigger a Lambda Function?

A
  • Viewer Request
  • Viewer Response
  • Origin Request
  • Origin Response

(Source: https://github.cloud.capitalone.com/puggles/deposits-accounts-bankcard-pin/blob/develop/settings.xml#L9)

22
Q

Suppose you change code and upload a new version of code to an AWS Lambda Function. What will happen to requests sent immediately after the code change?

A

For a brief period (usually less than one minute) requests might be served by either the old or new version

23
Q

Are Lambda environment variables automatically encrypted?

A

They are encrypted when deployed, and decrypted when invoked (so your code can use them)

24
Q

What actions are required by Lambda Execution Role in order to write logs in CloudWatch?

A
  • CreateLogGroup
  • CreateLogStream
  • PutLogEvents
25
Q

When a lambda is synchronously invoked and errors, what is returned?

A

A 200 status code

A FunctionError field in the response

26
Q

What is the pricing model for AWS Lambda?

A
  • Requests (per million)
  • Total Duration and Hardware (per GB-s)
27
Q

In the context of ECS, what is a task definition?

A

A JSON template that describes containers which form your application

28
Q

What are the key features offered by ECS?

A
  • Containers and Images
  • Task Definitions
  • Tasks and Scheduling
  • Clusters
  • Container Agent
29
Q

How do ECS clusters get permissions to access your AWS resources?

A

They use container instance roles in IAM