Add more questions

This commit is contained in:
abregman 2021-01-23 00:45:53 +02:00
parent acead18249
commit 5be1cc1d54
2 changed files with 56 additions and 22 deletions

View File

@ -4,8 +4,6 @@
:bar_chart:  There are currently **1435** questions :bar_chart:  There are currently **1435** questions
:busts_in_silhouette:  [Join](https://www.facebook.com/groups/538897960007080) our [Facebook group](https://www.facebook.com/groups/538897960007080) for additional exercises, articles and more resources on DevOps
:warning:  You can use these for preparing for an interview but most of the questions and exercises don't represent an actual interview. Please read [Q&A](common-qa.md) for more details :warning:  You can use these for preparing for an interview but most of the questions and exercises don't represent an actual interview. Please read [Q&A](common-qa.md) for more details
:thought_balloon:  If you wonder "How to prepare for a DevOps interview?", you might want to read some of my suggestions [here](prepare_for_interview.md) :thought_balloon:  If you wonder "How to prepare for a DevOps interview?", you might want to read some of my suggestions [here](prepare_for_interview.md)
@ -14,6 +12,8 @@
: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
:busts_in_silhouette:  [Join](https://www.facebook.com/groups/538897960007080) our [Facebook group](https://www.facebook.com/groups/538897960007080) for additional exercises, articles and more resources on DevOps
**** ****
<!-- ALL-TOPICS-LIST:START --> <!-- ALL-TOPICS-LIST:START -->
@ -4739,12 +4739,12 @@ The workers are the nodes which run the applications and workloads.
</b></details> </b></details>
<details> <details>
<summary>True or False? Every cluster must have 0 or more master nodes and 1 or more workers</summary><br><b> <summary>True or False? Every cluster must have 0 or more master nodes and at least on e worker</summary><br><b>
False. A Kubernetes cluster consists of at least 1 master and 0 or more workers. False. A Kubernetes cluster consists of at least 1 master and can have 0 workers (although that wouldn't be very useful...)
</b></details> </b></details>
#### Pod #### Kubernetes Pod
<details> <details>
<summary>Explain what is a pod</summary><br><b> <summary>Explain what is a pod</summary><br><b>
@ -4773,6 +4773,28 @@ Even if connected, their lifecycles aren't connected.
<summary>What is the difference between an external and an internal service?</summary><br><b> <summary>What is the difference between an external and an internal service?</summary><br><b>
</b></details> </b></details>
#### Kubernetes Deployment
<details>
<summary>What is a "Deployment" in Kubernetes?</summary><br><b>
</b></details>
<details>
<summary>What happens after you edit a deployment and change the image?</summary><br><b>
The pod will terminate and another, new pod, will be created.
Also, when looking at the replicaset, you'll see the old replica doesn't have any pods and a new replicaset is created.
</b></details>
<details>
<summary>What happens when you delete a deployment?</summary><br><b>
The pod related to the deployment will terminate and the replicaset will be removed.
</b></details>
#### Kubernetes Ingress
<details> <details>
<summary>What is Ingress?</summary><br><b> <summary>What is Ingress?</summary><br><b>
</b></details> </b></details>
@ -4966,6 +4988,10 @@ View more [here](https://www.youtube.com/watch?v=rDCWxkvPlAw)
`kubectl get namespaces` `kubectl get namespaces`
</b></details> </b></details>
<details>
<summary>What <code>kubectl exec</code> does?</code></summary><br><b>
</b></details>
<details> <details>
<summary>How to view the current namespace?</code></summary><br><b> <summary>How to view the current namespace?</code></summary><br><b>
@ -5001,6 +5027,20 @@ EOF
``` ```
</b></details> </b></details>
<details>
<summary>What the coomand <code>kubectl get pod</code> does?</code></summary><br><b>
</b></details>
<details>
<summary>How to edit a deployment?</code></summary><br><b>
kubectl edit deployment some-deployment
</b></details>
<details>
<summary>What <code>kubectl apply -f [file]</code> does?</code></summary><br><b>
</b></details>
<details> <details>
<summary>How to print information on a specific pod?</code></summary><br><b> <summary>How to print information on a specific pod?</code></summary><br><b>
@ -5057,6 +5097,14 @@ kubectl api-resources --namespaced=false
kubectl delete pods --field-selector=status.phase!='Running' kubectl delete pods --field-selector=status.phase!='Running'
</b></details> </b></details>
<details>
<summary>What <code>kubectl logs [pod-name]</code> command does?</summary><br><b>
</b></details>
<details>
<summary>What <code>kubectl describe pod [pod name] does?</code> command does?</summary><br><b>
</b></details>
<details> <details>
<summary>How to display the resources usages of pods?</summary><br><b> <summary>How to display the resources usages of pods?</summary><br><b>
@ -5075,10 +5123,6 @@ Outputs the status of each of the control plane components.
Minikube is a lightweight Kubernetes implementation. It create a local virtual machine and deploys a simple (single node) cluster. Minikube is a lightweight Kubernetes implementation. It create a local virtual machine and deploys a simple (single node) cluster.
</b></details> </b></details>
<details>
<summary>True or False? A pod can manage multiple containers</summary><br><b>
</b></details>
<details> <details>
<summary>How do you monitor your Kubernetes?</summary><br><b> <summary>How do you monitor your Kubernetes?</summary><br><b>
</b></details> </b></details>
@ -5177,10 +5221,6 @@ It includes:
<summary>What is kubconfig? What do you use it for?</summary><br><b> <summary>What is kubconfig? What do you use it for?</summary><br><b>
</b></details> </b></details>
<details>
<summary>What is a "Deployment" in Kuberenetes?</summary><br><b>
</b></details>
<details> <details>
<summary>Can you use a Deployment for stateful applications?</summary><br><b> <summary>Can you use a Deployment for stateful applications?</summary><br><b>
</b></details> </b></details>
@ -7007,12 +7047,6 @@ a = f()
<summary>How yield works exactly?</summary><br><b> <summary>How yield works exactly?</summary><br><b>
</b></details> </b></details>
##### Python Geeks :)
<details>
<summary>Tell me something about Python that you think most people don't know</summary><br><b>
</b></details>
## Monitoring ## Monitoring
<details> <details>

View File

@ -12,11 +12,11 @@ Usually, the followup question is "How extensive should my knowledge be?" Out of
Not long ago, I've created a list of Linux resources right [here](https://dev.to/abregman/collection-of-linux-resources-3nhk). There are some good sites there that you can use for learning more about Linux. Not long ago, I've created a list of Linux resources right [here](https://dev.to/abregman/collection-of-linux-resources-3nhk). There are some good sites there that you can use for learning more about Linux.
#### Coding #### Programming
My personal belief is that any DevOps engineer should know coding, at least to some degree. Having this skill you can automate manual processes, improve some of the open source tools you are using today or build new tools & projects to provide a solution to existing problems. Knowing how to code = a lot of power. My personal belief is that any DevOps engineer should know programming, at least to some degree. Having this skill you can automate manual processes, improve some of the open source tools you are using today or build new tools & projects to provide a solution to existing problems. Knowing how to code = a lot of power.
When it comes to interviews you'll notice that the level of knowledge very much depends on the company or position you are interviewing for. Some will require you just to be able to write simple scripts while others will deep dive into common algorithms, data structures, etc. It's usually clear from the job requirements or phone interview. When it comes to interviews you'll notice that the level of knowledge very much depends on the company or position you are interviewing for. Some will require you just to be able to write simple scripts while others will deep dive into complex algorithms and data structures.
The best way to practice this skill is by doing some actual coding - scripts, online challenges, CLI tools, web applications, ... just code :) The best way to practice this skill is by doing some actual coding - scripts, online challenges, CLI tools, web applications, ... just code :)