Add system design notebook image
As well as two Kubernetes basic exercises.
This commit is contained in:
parent
e54648d47f
commit
e1379fb6b5
14
README.md
14
README.md
@ -73,7 +73,7 @@
|
||||
<td align="center"><a href="#mongo"><img src="images/mongo.png" width="75px;" height="75px;" alt="Mongo"/><br /><b>Mongo</b></a></td>
|
||||
<td align="center"><a href="#puppet"><img src="images/puppet.png" width="75px;" height="75px;" alt="puppet"/><br /><b>Puppet</b></a></td>
|
||||
<td align="center"><a href="#distributed"><img src="images/distributed.png" width="110px;" height="75px;" alt="Distributed"/><br /><b>Distributed</b></a></td>
|
||||
<td align="center"><a href="#questions-you-ask"><img src="images/you.png" width="110px;" height="75px;" alt="you"/><br /><b>Questions you can ask</b></a></td>
|
||||
<td align="center"><a href="#questions-you-ask"><img src="images/you.png" width="90px;" height="75px;" alt="you"/><br /><b>Questions you can ask</b></a></td>
|
||||
</tr>
|
||||
</table>
|
||||
</center>
|
||||
@ -5220,7 +5220,9 @@ Because each container has its own writable container layer, and all changes are
|
||||
|
||||
|Name|Topic|Objective & Instructions|Solution|Comments|
|
||||
|--------|--------|------|----|----|
|
||||
|My First Pod|Dockerfile|WIP|WIP
|
||||
| My First Pod | Pods | [Exercise](exercises/kubernetes/pods_01.md) | [Solution](exercises/kubernetes/solutions/pods_01_solution.md)
|
||||
| Creating a service | Service | [Exercise](exercises/kubernetes/services_01.md) | [Solution](exercises/kubernetes/solutions/services_01_solution.md)
|
||||
|
||||
|
||||
### Kubernetes Self Assesment
|
||||
|
||||
@ -6342,13 +6344,15 @@ View more [here](https://www.youtube.com/watch?v=rDCWxkvPlAw)
|
||||
<details>
|
||||
<summary>What is Helm?</summary><br><b>
|
||||
|
||||
Package manager for Kubernetes. Basically the ability to package YAML files and distribute them to other users.
|
||||
Package manager for Kubernetes. Basically the ability to package YAML files and distribute them to other users and apply them in different clusters.
|
||||
</b></details>
|
||||
|
||||
<details>
|
||||
<summary>Why do we need Helm? What would be the use case for using it?</summary><br><b>
|
||||
|
||||
Sometimes when you would like to deploy a certain application to your cluster, you need to create multiple YAML files / Components like: Secret, Service, ConfigMap, etc. This can be tedious task. So it would make sense to ease the process by introducing something that will allow us to share these bundle of YAMLs every time we would like to add an application to our cluster. This something is called Helm.
|
||||
Sometimes when you would like to deploy a certain application to your cluster, you need to create multiple YAML files/components like: Secret, Service, ConfigMap, etc. This can be tedious task. So it would make sense to ease the process by introducing something that will allow us to share these bundle of YAMLs every time we would like to add an application to our cluster. This something is called Helm.
|
||||
|
||||
A common scenario is having multiple Kubernetes clusters (prod, dev, staging). Instead of individually applying different YAMLs in each cluster, it makes more sense to create one Chart and install it in every cluster.
|
||||
</b></details>
|
||||
|
||||
<details>
|
||||
@ -11724,7 +11728,7 @@ Bonus: extract the last word of each line
|
||||
<summary>Replace 'red' with 'green'</summary><br><b>
|
||||
</b></details>
|
||||
|
||||
#### System Design
|
||||
## System Design
|
||||
|
||||
<details>
|
||||
<summary>Explain what is a "Single point of failure" and give an example</summary><br><b>
|
||||
|
11
exercises/kubernetes/pods_01.md
Normal file
11
exercises/kubernetes/pods_01.md
Normal file
@ -0,0 +1,11 @@
|
||||
## Pods 01
|
||||
|
||||
#### Objective
|
||||
|
||||
Learn how to create pods
|
||||
|
||||
#### Instructions
|
||||
|
||||
1. Choose a container image (e.g. redis, nginx, mongo, etc.)
|
||||
2. Create a pod (in the default namespace) using the image you chose
|
||||
3. Verify the pod is running
|
11
exercises/kubernetes/services_01.md
Normal file
11
exercises/kubernetes/services_01.md
Normal file
@ -0,0 +1,11 @@
|
||||
## Services 01
|
||||
|
||||
#### Objective
|
||||
|
||||
Learn how to create services
|
||||
|
||||
#### Instructions
|
||||
|
||||
1. Create a pod running ngnix
|
||||
2. Create a service for the pod you've just created
|
||||
3. Verify the app is reachable
|
6
exercises/kubernetes/solutions/pods_01_solution.md
Normal file
6
exercises/kubernetes/solutions/pods_01_solution.md
Normal file
@ -0,0 +1,6 @@
|
||||
## Pods 01 - Solution
|
||||
|
||||
```
|
||||
kubectl run nginx --image=nginx --restart=Never
|
||||
kubectl get pods
|
||||
```
|
19
exercises/kubernetes/solutions/services_01_solution.md
Normal file
19
exercises/kubernetes/solutions/services_01_solution.md
Normal file
@ -0,0 +1,19 @@
|
||||
## Services 01 - Solution
|
||||
|
||||
```
|
||||
kubectl run nginx --image=nginx --restart=Never --port=80 --labels="app=dev-nginx"
|
||||
|
||||
cat << EOF > nginx-service.yaml
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: nginx-service
|
||||
spec:
|
||||
selector:
|
||||
app: dev-nginx
|
||||
ports:
|
||||
- protocol: TCP
|
||||
port: 80
|
||||
targetPort: 9372
|
||||
EOF
|
||||
```
|
BIN
images/system_design_notebook.png
Normal file
BIN
images/system_design_notebook.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 16 KiB |
Loading…
Reference in New Issue
Block a user