APP SERVICES, CONTAINERS & SERVERLESS Flashcards

1
Q

What’s a Task Role used for within ECS?

A

It allows the Task to assume an IAM role that it requires for access to other AWS ressources.

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

What’s a Task representing within ECS?

A

It represents the entire application, which may consist of one or more containers.

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

What’s a Service Definition used for within ECS?

A

It defines how an application scales, i.e. how many applications run in parallel in an ECS cluster, including a load balancers to distribute traffic. Services should be used for any production workloads.

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

What’s a Container Definition within the context of ECS?

A

Part of the Task Definition, defining the properties for a single container such image, port number, CPU & memory

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

What’s a Task Definition used for within ECS?

A

Defines the security (Task Role) and container(s) to use, and the resources (CPU, memory, network, etc.) that each container gets assigned.

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

Which two cluster types exist with ECS?

A

EC2 mode and Fargate mode

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

What is maximum size for a payload with SNS?

A

256 KB

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

What is maximum size for a message with SQS?

A

256 KB

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

What’s VisibilityTimeout referring to with SQS?

A

Time that a message is hidden in the queue after it’s been picked up

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

How often can a message be delivered with Standard vs FIFO queues in SQS?

A

Standard: at least once
FIFO: exactly once

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

What is the performance of FIFO queues with and without batching (in messages per second)?

A

Batch: 3000 messages per second

Non-Batch: 300 messages per second

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

What’s the maximum time in seconds allowed for Long Polling with SQS (configured via waitTimeSeconds)?

A

Up to 20 seconds

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

How long can a message live in SQS?

A

Up to 14 days

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

What is important to know about the names of FIFO queues?

A

The name of a FIFO queue must end with the .fifo suffix

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

What’s the SQS Extended Client Library used for?

A

It automatically puts the payload of messages larger than 256 KB onto S3 when sending a message, and links the S3 object in the SQS message. When processing a message, it will also automatically retrieve the payload via S3 again and delete the S3 object when processing was finished successfully.

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

What are the min, max and default values for VisibilityTimeout in SQS?

A

Min: 0 seconds
Max: 12 hours
Default: 30 seconds

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

On which elements in SQS can the VisibilityTimeout be set?

A

Queue or Per-Message

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

What’s DelaySeconds referring to with SQS?

A

Time that a message is hidden in the queue after it’s been added to the queue

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

What are the min and max values for DelaySeconds in SQS?

A

Min: 0
Max: 15 minutes

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

When support for protocols like AMQP, MQTT, OpenWire or STOMP is required, what AWS service is a great fit?

A

Amazon MQ

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

If you’re using Jakarta Messaging API (formerly Java Message Service or JMS API) and want to continue using this on AWS, what AWS service is a great fit?

A

Amazon MQ

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

Is Amazon MQ a public or private service?

A

Private, so it requires setup in a VPC

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

What are supported runtimes with Lambda?

A

Python, Ruby, Java, Go, C#, NodeJS

Other languages are supported via Custom Runtimes.

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

What’s the min and max memory allocation with Lambda?

A

Min: 128 MB
Max: 3 GB

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

What’s the max run time with Lambda before a function times out?

A

15 minutes

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

Where does Lambda provision temporary storage, and how much of it?

A

512 MB storage available via /tmp

27
Q

When running Lambda in private mode (=> using a VPC), what two options would you have to access a public AWS service such as DynamoDB?

A

Option 1: deploy VPC Endpoint for DynamoDB in private subnet

Option 2: deploy NATGW + IGW in public subnet

28
Q

What serverless service requires EC2 network permissions under certain conditions?

A

AWS Lambda, when run in private mode (=> using a VPC) as it requires permissions to create ENIs

29
Q

What are resource-based policies used for in the context of AWS Lambda?

A

They define what services and accounts can invoke the Lambda function. This is in contrast to IAM roles that are attached to the Lambda function and control the permissions the function has to other services.

30
Q

What are the three invocation modes available for Lambda?

A

Synchronous, Asynchronous, Event Source Mapping

31
Q

When Lambda functions are invoked via Event Source Mapping, does the Lambda function require permissions on the source (like a Kinesis Stream)?

A

Yes. And that is in contrast to the other two modes (Synchronous, Asynchronous), where data is delivered to the Lambda by the service, rather than Lambda reading from the service.

32
Q

Which services invoke Lambda functions via Event Source Mapping?

A

Kinesis Streams, SQS Queues, DynamoDB Streams, Amazon Managed Streaming for Kafka

33
Q

What does a Lambda version consist of?

A

Code and configuration of the Lambda function

34
Q

In which scenario can usage of the /tmp storage in Lambda improve performance?

A

It can be used to download and store resources such as images, that may be required for additional invocations of the same Lambda function. If the same function is executed multiple times, they can likely re-use what’s been stored in /tmp by a previous execution (but no guarantee).

35
Q

If requests from a client or responses from a Lambda function contain headers with multiple values or contains the same header multiple times, or query parameters with multiple values for the same key, what do you need to enable to support this?

A

Multi-value headers

36
Q

When implementing an event-based application model, should you use AWS CloudWatch Events or AWS EventBridge?

A

AWS EventBridge as this supports everything CloudWatch Event does, and additional things.

37
Q

What are valid targets for an Amazon API Gateway request?

A
  • Lambda
  • HTTP
  • Mock
  • AWS Services
  • VPC Link
38
Q

What “authorizers” are supported by Amazon API Gateway?

A

Most common: Cognito (via User Pools) and Lambda Authorizers

But also via IAM, resource policies and endpoint policies.

39
Q

What endpoint types does Amazon API Gateway support?

A

Regional, Edge-Optimized, Private

40
Q

What’s HTTP error code 400 referring to?

A

Bad Request - Generic

41
Q

What’s HTTP error code 403 referring to?

A

Access Denied

42
Q

What’s HTTP error code 429 referring to?

A

Too Many Requests (Throttling, etc.)

43
Q

What’s HTTP error code 502 referring to in the context of API Gateway?

A

Bad Gateway (e.g. bad output from Lambda)

44
Q

What’s HTTP error code 503 referring to in the context of API Gateway?

A

Service unavailable (e.g. backend endpoint offline)

45
Q

What’s HTTP error code 504 referring to in the context of API Gateway?

A

Integration failure/timeout (e.g. Lambda took more than 29s to respond)

46
Q

Can Amazon API Gateway caches be encrypted?

A

Yes

47
Q

What is the min, max and default TTL for the cache of Amazon API Gateway?

A

Min: 0
Max: 3600 seconds
Default: 300 seconds

48
Q

What’s the max. duration of a Step Function execution?

A

1 year

49
Q

What are the two execution types that exist with AWS Step Functions?

A

Standard and Express

50
Q

What’s ASL in context of AWS Step Functions?

A

Amazon Stages Language - JSON template that defines an AWS Step Function flow

51
Q

What are common integrations for a Task within AWS Step Functions?

A

Lambda, Batch, DynamoDB, ECS, SNS, SQS, Glue, SageMaker, EMR, Step Functions

52
Q

What’s the max. duration of a Simple Workflow Service (SWF) execution?

A

1 year

53
Q

What is AWS Flow Framework?

A

Collection of convenience libraries that make it faster and easier to build applications with Amazon Simple Workflow

54
Q

When any kind of external signal is required to be fed into a workflow, what is the right product to use?

A

Amazon Simple Workflow Service (SWF)

55
Q

When it’s required to launch child workflows (and returning to the parent), what is the right product to use?

A

Amazon Simple Workflow Service (SWF)

56
Q

When you need bespoke/complex decision logic in a workflow, what is the right product to use?

A

Amazon Simple Workflow Service (SWF)

57
Q

When an integration with Mechanical Turk is required, what is the right product to use?

A

Amazon Simple Workflow Service (SWF)

58
Q

When having to choose between Amazon Elastic Transcoder and AWS Elemental MediaConvert, what’s the better product?

A

AWS Elemental MediaConvert as it’s a super set of Amazon Elastic Transcoder, with more features and lower costs.

59
Q

When would you still use Amazon Elastic Transcoder, instead of using it’s successor, AWS Elemental MediaConvert?

A

When any of the following is required

  • WebM (VP8/VP9) input and output
  • Animated GIF output
  • MP3, FLAC, Vorbis, and WAV audio-only output
60
Q

What’s the “sam-package” command used for?

A

Takes local assets, builds a ZIP file from them, and uploads it to S3. Also generates the sam-deploy.yaml in the working directory that is required for the sam-deploy command.

61
Q

What’s the “sam-deploy” command used for?

A

Deploys the infrastructure that’s defined in sam-deploy.yaml to AWS. If no sam-deploy.yaml exists yet, will also run sam-package before the deployment.

62
Q

Can you access Kinesis Video Streams data directly on the underlying storage (S3, EBS, EFS, etc.)?

A

No, only via APIs

63
Q

What are valid data sources for AWS Glue (name 6)?

A
  • S3
  • RDS
  • JDBC-compatible DBs
  • DynamoDB
  • Kinesis Data Stream
  • Apache Kafka
64
Q

What are valid data targets for AWS Glue (name 3)?

A
  • S3
  • RDS
  • JDBC-compatible DBs