You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+9-3Lines changed: 9 additions & 3 deletions
Original file line number
Diff line number
Diff line change
@@ -10,7 +10,7 @@
10
10
11
11
:busts_in_silhouette: Join our [DevOps community](https://www.facebook.com/groups/538897960007080) where we have discussions and share resources on DevOps
12
12
13
-
:pencil: You can add more questions and exercises by submitting pull requests :) Read about contribution guidelines [here](CONTRIBUTING.md)
13
+
:pencil: You can add more exercises by submitting pull requests :) Read about contribution guidelines [here](CONTRIBUTING.md)
14
14
15
15
****
16
16
@@ -7605,7 +7605,7 @@ A load balancer accepts (or denies) incoming network traffic from a client, and
<summary>Why to used a load balancer?</summary><br><b>
7609
7609
7610
7610
* Scalability - using a load balancer, you can possibly add more servers in the backend to handle more requests/traffic from the clients, as opposed to using one server.
7611
7611
* Redundancy - if one server in the backend dies, the load balancer will keep forwarding the traffic/requests to the second server so users won't even notice one of the servers in the backend is down.
@@ -8276,14 +8276,20 @@ With vertical scaling alone, the component still remains a single point of failu
8276
8276
In addition, it has hardware limit where if you don't have more resources, you might not be able to scale vertically.
8277
8277
</b></details>
8278
8278
8279
+
<details>
8280
+
<summary>Which type of cloud services usually support vertical scaling?</summary><br><b>
8281
+
8282
+
Databases, cache. It's common mostly for non-distributed systems.
| Multiple Target Groups | ELB, ALB |[Exercise](alb_multiple_target_groups.md)|[Solution](solutions/alb_multiple_target_groups.md)| Easy |
32
40
33
41
#### AWS - Lambda
34
42
@@ -341,10 +349,10 @@ Storage Optimized:
341
349
EBS
342
350
</b></details>
343
351
344
-
##### AWS EC2 - Storage
352
+
##### AWS EC2 - EBS
345
353
346
354
<details>
347
-
<summary>Explain what is Amazon EBS</summary><br><b>
355
+
<summary>Explain Amazon EBS</summary><br><b>
348
356
349
357
[AWS Docs](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AmazonEBS.html): "provides block level storage volumes for use with EC2 instances. EBS volumes behave like raw, unformatted block devices."
350
358
</b></details>
@@ -393,12 +401,6 @@ Yes, with multi-attach it's possible to attach a single EBS volume to multiple i
393
401
True
394
402
</b></details>
395
403
396
-
<details>
397
-
<summary>How to move EBS volumes between availability zones?</summary><br><b>
398
-
399
-
Using snapshots.
400
-
</b></details>
401
-
402
404
<details>
403
405
<summary>What EBS volume types are there?</summary><br><b>
404
406
@@ -438,6 +440,14 @@ HDD - sc1
438
440
SSD: gp2, gp3, io1, io2
439
441
</b></details>
440
442
443
+
<details>
444
+
<summary>True or False? In EBS gp2 volume type, IP will increase if the disk size increases</summary><br><b>
445
+
446
+
True.
447
+
</b></details>
448
+
449
+
##### AWS EC2 - Instance Store
450
+
441
451
<details>
442
452
<summary>If you would like to have an hardware disk attached to your EC2 instead of a network one (EBS). What would you use?</summary><br><b>
443
453
@@ -494,15 +504,33 @@ False. EFS scales automatically and you pay-per-use.
494
504
</b></details>
495
505
496
506
<details>
497
-
<summary>Which EFS mode would you use if need maximum throughput?</summary><br><b>
507
+
<summary>What EFS modes are there?</summary><br><b>
498
508
499
-
Performance Mode (Max I/O): This provides high throughput and it's used for big data, media processing, etc.
509
+
* Performance mode
510
+
* General purpose: used mainly for CMS, web serving, ... as it's optimal for latency sensitive applications
511
+
* Max I/O: great for scaling to high levels of throughput and I/O operations per second
512
+
* Throughput mode
513
+
* Bursting: scale throughput based on FS size
514
+
* Provisioned: fixed throughput
515
+
</b></details>
516
+
517
+
<details>
518
+
<summary>Which EFS mode would you use if you need to perform media processing?</summary><br><b>
519
+
520
+
Performance Mode (Max I/O): It provides high throughput and scales to operations per second. Mainly used for big data, media processing, etc.
500
521
</b></details>
501
522
502
523
<details>
503
524
<summary>What is the default EFS mode?</summary><br><b>
504
525
505
-
Performance Mode (General Purpose): Used for web servers, CMS, etc.
526
+
Performance Mode (General Purpose): Used for web serving, CMS, ... anything that is sensitive to latency.
527
+
</b></details>
528
+
529
+
<details>
530
+
<summary>What EFS storage tiers are there?</summary><br><b>
531
+
532
+
* Standard: frequently accessed files
533
+
* Infrequent access: lower prices to store files but it also costs to retrieve them
506
534
</b></details>
507
535
508
536
##### AWS EC2 - Pricing Models
@@ -825,7 +853,7 @@ Amazon definition: "AWS Fargate is a serverless compute engine for containers th
More on storage classes [here](https://aws.amazon.com/s3/storage-classes)
913
-
914
941
</b></details>
915
942
916
943
<details>
@@ -988,14 +1015,6 @@ Learn more [here](https://docs.aws.amazon.com/AmazonS3/latest/dev/transfer-accel
988
1015
<summary>What storage options are there for EC2 Instances?</summary><br><b>
989
1016
</b></details>
990
1017
991
-
<details>
992
-
<summary>What is AWS Snowmobile?</summary><br><b>
993
-
994
-
"AWS Snowmobile is an Exabyte-scale data transfer service used to move extremely large amounts of data to AWS."
995
-
996
-
Learn more [here](https://aws.amazon.com/snowmobile)
997
-
</b></details>
998
-
999
1018
#### AWS Disaster Recovery
1000
1019
1001
1020
<details>
@@ -1056,23 +1075,92 @@ True
1056
1075
A transport solution which was designed for transferring large amounts of data (petabyte-scale) into and out the AWS cloud.
1057
1076
</b></details>
1058
1077
1059
-
#####AWS ELB
1078
+
#### AWS - ELB
1060
1079
1061
1080
<details>
1062
1081
<summary>What is ELB (Elastic Load Balancing)?</summary><br><b>
1063
1082
1064
-
AWS definition: "Elastic Load Balancing automatically distributes incoming application traffic across multiple targets, such as Amazon EC2 instances, containers, IP addresses, and Lambda functions."
1083
+
[AWS Docs](https://aws.amazon.com/elasticloadbalancing): "Elastic Load Balancing automatically distributes incoming application traffic across multiple targets, such as Amazon EC2 instances, containers, IP addresses, and Lambda functions."
1084
+
</b></details>
1085
+
1086
+
<details>
1087
+
<summary>True or False? Elastic Load Balancer is a managed resource (= AWS takes care of it)</summary><br><b>
1088
+
1089
+
True. AWS responsible for making sure ELB is operational and takes care of lifecycle operations like upgrades, maintenance and high availability.
1090
+
</b></details>
1091
+
1092
+
<details>
1093
+
<summary>What types of AWS load balancers are there?</summary><br><b>
1094
+
1095
+
* Classic Load Balancer (CLB): Mainly for TCP (layer 4) and HTTP, HTTPS (layer 7)
1096
+
* Application Load Balancer (ALB): Mainly for HTTP, HTTPS and WebSocket
1097
+
* Network Load Balancer (NLB): Mainly for TCP, TLS and UDP
<summary>Which load balancer would you use for services which use HTTP or HTTPS traffic?</summary><br><b>
1065
1103
1066
-
More on ELB [here](https://aws.amazon.com/elasticloadbalancing)
1104
+
Application Load Balancer (ALB).
1105
+
</b></details>
1106
+
1107
+
<details>
1108
+
<summary>True or False? With ALB (Application Load Balancer) it's possible to do routing based on query string and/or headers</summary><br><b>
1109
+
1110
+
True.
1111
+
</b></details>
1112
+
1113
+
<details>
1114
+
<summary>Explain "health checks" in the context of AWS ELB</summary><br><b>
1115
+
1116
+
Health checks used by ELB to check whether EC2 instance(s) are properly working.<br>
1117
+
If health checks fail, ELB knows to not forward traffic to that specific EC2 instance where the health checks failed.
1118
+
</b></details>
1119
+
1120
+
<details>
1121
+
<summary>True or False? AWS ELB health checks are done on a port and a route</summary><br><b>
1122
+
1123
+
True.
1124
+
1125
+
For example, port `2017` and endpoint `/health`.
1067
1126
</b></details>
1068
1127
1069
1128
<details>
1070
1129
<summary>What types of load balancers are supported in EC2 and what are they used for?</summary><br><b>
1071
1130
1072
-
* Application LB - layer 7 traffic
1073
-
* Network LB - ultra-high performances or static IP address (layer 4)
1074
-
* Classic LB - low costs, good for test or dev environments (retired by August 15, 2022)
1075
-
* Gateway LB - transparent network gateway and and distributes traffic such as firewalls, intrusion detection and prevention systems, and deep packet inspection systems. (layer 3)
1131
+
* Application LB - layer 7 traffic<br>
1132
+
* Network LB - ultra-high performances or static IP address (layer 4)<br>
1133
+
* Classic LB - low costs, good for test or dev environments (retired by August 15, 2022)<br>
1134
+
* Gateway LB - transparent network gateway and and distributes traffic such as firewalls, intrusion detection and prevention systems, and deep packet inspection systems. (layer 3)<br>
1135
+
</b></details>
1136
+
1137
+
<details>
1138
+
<summary>Which type of AWS load balancer is used in the following drawing?<br>
Application Load Balancer (routing based on different endpoints + HTTP is used).
1143
+
</b></details>
1144
+
1145
+
<details>
1146
+
<summary>What are possible target groups for ALB (Application Load Balancer)?</summary><br><b>
1147
+
1148
+
* EC2 tasks
1149
+
* ECS instances
1150
+
* Lambda functions
1151
+
* IP Addresses
1152
+
</b></details>
1153
+
1154
+
<details>
1155
+
<summary>True or False? ALB can route only to a single route group</summary><br><b>
1156
+
1157
+
False. ALB can route to multiple target groups.
1158
+
</b></details>
1159
+
1160
+
<details>
1161
+
<summary>True or False? Network load balancers operate in layer 4</summary><br><b>
1162
+
1163
+
True. They forward TCP, UDP traffic.
1076
1164
</b></details>
1077
1165
1078
1166
#### AWS Security
@@ -1915,6 +2003,14 @@ Amazon definition: "AWS OpsWorks is a configuration management service that prov
1915
2003
Learn more about it [here](https://aws.amazon.com/opsworks)
1916
2004
</b></details>
1917
2005
2006
+
<details>
2007
+
<summary>What is AWS Snowmobile?</summary><br><b>
2008
+
2009
+
"AWS Snowmobile is an Exabyte-scale data transfer service used to move extremely large amounts of data to AWS."
2010
+
2011
+
Learn more [here](https://aws.amazon.com/snowmobile)
2012
+
</b></details>
2013
+
1918
2014
<details>
1919
2015
<summary>What is AWS Athena?</summary><br><b>
1920
2016
@@ -2026,6 +2122,15 @@ AWS definition: "Amazon Simple Queue Service (SQS) is a fully managed message qu
2026
2122
Learn more about it [here](https://aws.amazon.com/sqs)
2027
2123
</b></details>
2028
2124
2125
+
#### AWS - High Availability
2126
+
2127
+
<details>
2128
+
<summary>What high availability means from AWS perspective?</summary><br><b>
2129
+
2130
+
* Application/Service is running in at least 2 availability zones
2131
+
* Application/Service should survive (= operate as usual) a data center disaster
2132
+
</b></details>
2133
+
2029
2134
#### AWS - Production
2030
2135
2031
2136
<details>
@@ -2042,8 +2147,36 @@ One way is through launching a new instance. In more detail:
2042
2147
...
2043
2148
</b></details>
2044
2149
2150
+
<details>
2151
+
<summary>You try to use an detached EBS volume from us-east-1b in us-east-1a, but it fails. What might be the reason?</summary><br><b>
2152
+
2153
+
EBS volumes are locked to a specific availability zone. To use them in another availability zone, you need to take a snapshot and restore it in the destination availability zone.
2154
+
</b></details>
2155
+
2045
2156
<details>
2046
2157
<summary>When you launch EC2 instances, it takes them time to boot due to commands you run with user data. How to improve instances boot time?</summary><br><b>
2047
2158
2048
2159
Consider creating customized AMI with the commands from user data already executed there. This will allow you launch instance instantly.
2049
2160
</b></details>
2161
+
2162
+
<details>
2163
+
<summary>You try to mount EFS on your EC2 instance and it doesn't work (hangs...) What might be a possible reason?</summary><br><b>
2164
+
2165
+
Security group isn't attached to your EFS or it lacks a rule to allow NFS traffic.
2166
+
</b></details>
2167
+
2168
+
<details>
2169
+
<summary>How to migrate an EBS volume across availability zones?</summary><br><b>
2170
+
2171
+
1. Pause the application
2172
+
2. Take a snapshot of the EBS volume
2173
+
3. Restore the snapshot in another availability zone
2174
+
</b></details>
2175
+
2176
+
<details>
2177
+
<summary>How to encrypt an unencrypted EBS volume attached to an EC2 instance?</summary><br><b>
2178
+
2179
+
1. Create EBS snapshot of the volume
2180
+
2. Copy the snapshot and mark the "Encrypt" option
2181
+
3. Create a new EBS volume out of the encrypted snapshot
0 commit comments