Add a couple of questions
This commit is contained in:
parent
79cb765237
commit
682aaa483e
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
:information_source: This repo contains questions and exercises on various technical topics, sometimes related to DevOps and SRE
|
:information_source: This repo contains questions and exercises on various technical topics, sometimes related to DevOps and SRE
|
||||||
|
|
||||||
:bar_chart: There are currently **2402** exercises and questions
|
:bar_chart: There are currently **2500** exercises and questions
|
||||||
|
|
||||||
:books: To learn more about DevOps and SRE, check the resources in [devops-resources](https://github.com/bregman-arie/devops-resources) repository
|
:books: To learn more about DevOps and SRE, check the resources in [devops-resources](https://github.com/bregman-arie/devops-resources) repository
|
||||||
|
|
||||||
|
@ -59,6 +59,7 @@
|
|||||||
- [Identify the Service](#identify-the-service)
|
- [Identify the Service](#identify-the-service)
|
||||||
- [DNS (Route 53)](#dns-route-53)
|
- [DNS (Route 53)](#dns-route-53)
|
||||||
- [SQS](#sqs)
|
- [SQS](#sqs)
|
||||||
|
- [SNS](#sns)
|
||||||
- [Monitoring and Logging](#monitoring-and-logging)
|
- [Monitoring and Logging](#monitoring-and-logging)
|
||||||
- [Billing and Support](#billing-and-support)
|
- [Billing and Support](#billing-and-support)
|
||||||
- [AWS Organizations](#aws-organizations)
|
- [AWS Organizations](#aws-organizations)
|
||||||
@ -2581,6 +2582,12 @@ Amazon DocumentDB
|
|||||||
AWS Cognito
|
AWS Cognito
|
||||||
</b></details>
|
</b></details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>Which service is often reffered to as "used for decoupling applications"?</summary><br><b>
|
||||||
|
|
||||||
|
AWS SQS. Since it's a messaging queue so it allows applications to switch from synchronous communication to asynchronous one.
|
||||||
|
</b></details>
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>Which service would you use if you need messaging queue?</summary><br><b>
|
<summary>Which service would you use if you need messaging queue?</summary><br><b>
|
||||||
|
|
||||||
@ -2873,7 +2880,74 @@ Learn more about it [here](https://aws.amazon.com/sqs)
|
|||||||
</b></details>
|
</b></details>
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>Give an example of architecture or workflow that involves SQS</summary><br><b>
|
<summary>Explain "producer" and "consumer" in regards to messaging queue</summary><br><b>
|
||||||
|
|
||||||
|
Producer is the application or in general, the source that sends messages to the queue.
|
||||||
|
|
||||||
|
Consumer is the process or application that pulls the messages from the queue.
|
||||||
|
</b></details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>What "default retention of messages" means?</summary><br><b>
|
||||||
|
|
||||||
|
It refers to a retention period in which a message has to consumed/processed and deleted from the queue.
|
||||||
|
|
||||||
|
As of today, the retention of a message is 4 days by default and the maximum allows is 14 days.
|
||||||
|
</b></details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>What's the limitation on message size in SQS?
|
||||||
|
|
||||||
|
* 128KB
|
||||||
|
* 128MB
|
||||||
|
* 256KB
|
||||||
|
* 256MB</summary><br><b>
|
||||||
|
|
||||||
|
256KB
|
||||||
|
</b></details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>True or False? It's possible to have duplicated messages in the queue</summary><br><b>
|
||||||
|
|
||||||
|
True. It's referred to as "at least once delivery".
|
||||||
|
</b></details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>True or False? "Consumers" can be only EC2 instances</summary><br><b>
|
||||||
|
|
||||||
|
False. They can be Lambda functions and even on-premise instances
|
||||||
|
</b></details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>True or False? Processes/Applications use from the SDK the SendMessage API in order to send messages to the queue</summary><br><b>
|
||||||
|
|
||||||
|
True.
|
||||||
|
</b></details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>What it means "best effort ordering" in regards to SQS?</summary><br><b>
|
||||||
|
|
||||||
|
It means messages in the queue can be out of order.
|
||||||
|
</b></details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>What is "Delay Queue" in regards to SQS?</summary><br><b>
|
||||||
|
|
||||||
|
It's the time in seconds to delay the delivery of new messages (when they reached the queue already).
|
||||||
|
|
||||||
|
The limit as of today is 15 minutes.
|
||||||
|
</b></details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>What is "Visibility Timeout?"</summary><br><b>
|
||||||
|
|
||||||
|
The time in seconds for a message to not be visible for consumers.
|
||||||
|
|
||||||
|
The limit as of today is 12 hours
|
||||||
|
</b></details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>Give an example of architecture or workflow that involves SQS and EC2 & S3</summary><br><b>
|
||||||
|
|
||||||
A website that allows users to upload videos and adds subtitles to them:
|
A website that allows users to upload videos and adds subtitles to them:
|
||||||
|
|
||||||
@ -2884,23 +2958,11 @@ A website that allows users to upload videos and adds subtitles to them:
|
|||||||
5. SQS gets notified of the result and specifically the video location
|
5. SQS gets notified of the result and specifically the video location
|
||||||
</b></details>
|
</b></details>
|
||||||
|
|
||||||
### Monitoring and Logging
|
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>What is AWS CloudWatch?</summary><br><b>
|
<summary>What's MessageGroupID?</summary><br><b>
|
||||||
|
|
||||||
AWS definition: "Amazon CloudWatch is a monitoring and observability service..."
|
|
||||||
|
|
||||||
More on CloudWatch [here](https://aws.amazon.com/cloudwatch)
|
|
||||||
</b></details>
|
</b></details>
|
||||||
|
|
||||||
<details>
|
### SNS
|
||||||
<summary>What is AWS CloudTrail?</summary><br><b>
|
|
||||||
|
|
||||||
AWS definition: "AWS CloudTrail is a service that enables governance, compliance, operational auditing, and risk auditing of your AWS account."
|
|
||||||
|
|
||||||
Read more on CloudTrail [here](https://aws.amazon.com/cloudtrail)
|
|
||||||
</b></details>
|
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>What is Simply Notification Service?</summary><br><b>
|
<summary>What is Simply Notification Service?</summary><br><b>
|
||||||
@ -2922,6 +2984,38 @@ Read more about it [here](https://aws.amazon.com/sns)
|
|||||||
* Publishers - the provider of the message (event, person, ...)
|
* Publishers - the provider of the message (event, person, ...)
|
||||||
</b></details>
|
</b></details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>How SNS is different from SQS?</summary><br><b>
|
||||||
|
|
||||||
|
SNS, as opposed to SQS, works in a publisher/subscriber model. Where's SQS works in Producer/Consumer model.
|
||||||
|
|
||||||
|
SQS delivers the message to one consumer where's SNS will send a message to multiple subscribers.
|
||||||
|
</b></details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>What's a Fan-Out pattern?</summary><br><b>
|
||||||
|
|
||||||
|
A messaging pattern where a single message is send to multiple destinations (often simultaneously). So one-to-many broadcast message.
|
||||||
|
</b></details>
|
||||||
|
|
||||||
|
### Monitoring and Logging
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>What is AWS CloudWatch?</summary><br><b>
|
||||||
|
|
||||||
|
AWS definition: "Amazon CloudWatch is a monitoring and observability service..."
|
||||||
|
|
||||||
|
More on CloudWatch [here](https://aws.amazon.com/cloudwatch)
|
||||||
|
</b></details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>What is AWS CloudTrail?</summary><br><b>
|
||||||
|
|
||||||
|
AWS definition: "AWS CloudTrail is a service that enables governance, compliance, operational auditing, and risk auditing of your AWS account."
|
||||||
|
|
||||||
|
Read more on CloudTrail [here](https://aws.amazon.com/cloudtrail)
|
||||||
|
</b></details>
|
||||||
|
|
||||||
### Billing and Support
|
### Billing and Support
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
@ -3356,6 +3450,15 @@ Network Load Balancer
|
|||||||
You can use an ElastiCache cluster or RDS Read Replicas.
|
You can use an ElastiCache cluster or RDS Read Replicas.
|
||||||
</b></details>
|
</b></details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>You have two applications who communicate synchronously. It worked fine until there suddenly a spike of traffic. What change you might apply in this case?</summary><br><b>
|
||||||
|
|
||||||
|
More details are missing to determine for sure but it might be better to decouple the applications by introducing one of the following:
|
||||||
|
|
||||||
|
* Queue model with SQS
|
||||||
|
* Publisher/Subscriber model with SNS
|
||||||
|
</b></details>
|
||||||
|
|
||||||
### Misc
|
### Misc
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
|
@ -1,3 +1,7 @@
|
|||||||
## Hello Function
|
# Hello Function
|
||||||
|
|
||||||
Create a basic AWS Lambda function that when given a name, will return "Hello <NAME>"
|
Create a basic AWS Lambda function that when given a name, will return "Hello <NAME>"
|
||||||
|
|
||||||
|
## Solution
|
||||||
|
|
||||||
|
Click [here](solution.md) to view the solution.
|
@ -1,4 +1,8 @@
|
|||||||
## DevOps
|
# DevOps
|
||||||
|
|
||||||
|
## Questions
|
||||||
|
|
||||||
|
### General
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>What is DevOps?</summary><br><b>
|
<summary>What is DevOps?</summary><br><b>
|
||||||
@ -69,7 +73,7 @@ A couple of thoughts:
|
|||||||
3. You might want to set a possibly better goal such as "be able to deploy whenever we need to deploy"
|
3. You might want to set a possibly better goal such as "be able to deploy whenever we need to deploy"
|
||||||
</b></details>
|
</b></details>
|
||||||
|
|
||||||
#### Tooling
|
### Tooling
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>What do you take into consideration when choosing a tool/technology?</summary><br><b>
|
<summary>What do you take into consideration when choosing a tool/technology?</summary><br><b>
|
||||||
@ -120,7 +124,7 @@ Things to think about:
|
|||||||
* What does the switch from one platform to another will require from the organization? For example, training users who use the platform? How much time the team has to invest in such move?
|
* What does the switch from one platform to another will require from the organization? For example, training users who use the platform? How much time the team has to invest in such move?
|
||||||
</b></details>
|
</b></details>
|
||||||
|
|
||||||
#### Version Control
|
### Version Control
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>What is Version Control?</summary><br><b>
|
<summary>What is Version Control?</summary><br><b>
|
||||||
@ -179,7 +183,7 @@ to a server will result in a new server instead of updating it. Terraform is an
|
|||||||
which follows the immutable infrastructure paradigm.
|
which follows the immutable infrastructure paradigm.
|
||||||
</b></details>
|
</b></details>
|
||||||
|
|
||||||
#### Software Distribution
|
### Software Distribution
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>Explain "Software Distribution"</summary><br><b>
|
<summary>Explain "Software Distribution"</summary><br><b>
|
||||||
@ -414,6 +418,8 @@ Note: cross-dependency is when you have two or more changes to separate projects
|
|||||||
<summary>What is Distributed Tracing?</summary><br><b>
|
<summary>What is Distributed Tracing?</summary><br><b>
|
||||||
</b></details>
|
</b></details>
|
||||||
|
|
||||||
|
### GitOps
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>What is GitOps?</summary><br><b>
|
<summary>What is GitOps?</summary><br><b>
|
||||||
|
|
||||||
@ -422,6 +428,20 @@ GitLab: "GitOps is an operational framework that takes DevOps best practices use
|
|||||||
Read more [here](https://about.gitlab.com/topics/gitops)
|
Read more [here](https://about.gitlab.com/topics/gitops)
|
||||||
</b></details>
|
</b></details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>What are some of the advantages of applying GitOps?</summary><br><b>
|
||||||
|
|
||||||
|
* It introduces limited/granular access to infrastructure
|
||||||
|
* It makes it easier to trace who makes changes to infrastructure
|
||||||
|
</b></details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>What are some practical implementations or practices of GitOp?</summary><br><b>
|
||||||
|
|
||||||
|
* Store Infra files in a version control repository (like Git)
|
||||||
|
* Apply review/approval process for changes
|
||||||
|
</b></details>
|
||||||
|
|
||||||
#### SRE
|
#### SRE
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
|
Loading…
Reference in New Issue
Block a user