From b45aa4a2b1a5eda4d4c2c8911e93db1d60d2d96e Mon Sep 17 00:00:00 2001 From: abregman Date: Sun, 11 Apr 2021 23:07:25 +0300 Subject: [PATCH] Add a couple of Virtualization questions --- README.md | 119 +++++++++++++++++++++++++++++++++++++------- certificates/cka.md | 51 +------------------ 2 files changed, 103 insertions(+), 67 deletions(-) diff --git a/README.md b/README.md index 3d3eac6..ddca94a 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ :information_source:  This repo contains questions and exercises on various technical topics, sometimes related to DevOps and SRE :) -:bar_chart:  There are currently **1540** questions +:bar_chart:  There are currently **1553** questions :books:  To learn more about DevOps and SRE, check the resources in [devops-resources](https://github.com/bregman-arie/devops-resources) repository @@ -59,7 +59,7 @@ Testing
Testing
Databases
Databases
RegEx
Regex
- Design
System Design
+ Design
System Design
Hardware
Hardware
Big Data
Big Data
you
Questions you ask
@@ -79,12 +79,6 @@ -## Linux Master Application - -A completely free application for testing your knowledge on Linux - - - ## DevOps
@@ -474,6 +468,14 @@ Note: cross-dependency is when you have two or more changes to separate projects What is Distributed Tracing?
+
+What is GitOps?
+ +GitLab: "GitOps is an operational framework that takes DevOps best practices used for application development such as version control, collaboration, compliance, and CI/CD tooling, and applies them to infrastructure automation". + +Read more [here](https://about.gitlab.com/topics/gitops) +
+ #### SRE
@@ -721,6 +723,10 @@ It's important to note that: * Serverless Computing allows you to have a different paying model. You basically pay only when your functions are running and not when the VM or containers are running as in other payment models
+
+Can we replace any type of computing on servers with serverless?
+
+
Is there a difference between managed service to SaaS or is it the same thing?
@@ -3945,6 +3951,12 @@ MemAvailable - The amount of available memory for new workloads (without pushing Why there are different sections in man? What is the difference between the sections?
+#### Linux Master Application + +A completely free application for testing your knowledge on Linux + + + ## Operating System
@@ -4046,6 +4058,42 @@ Cache: Cache is usually used when processes reading and writing to the disk to m Explain what is Virtualization
+
+What is a hypervisor?
+ +Red Hat: "A hypervisor is software that creates and runs virtual machines (VMs). A hypervisor, sometimes called a virtual machine monitor (VMM), isolates the hypervisor operating system and resources from the virtual machines and enables the creation and management of those VMs." + +Read more [here](https://www.redhat.com/en/topics/virtualization/what-is-a-hypervisor) +
+ +
+What types of hypervisors are there?
+ +Hosted hypervisors and bare-metal hypervisors. +
+ +
+What are the advantages and disadvantges of bare-metal hypervisor over a hosted hypervisor?
+ +Due to having its own drivers and a direct access to hardware components, a baremetal hypervisor will often have better performances along with stability and scalability. + +On the other hand, there will probably be some limitation regarding loading (any) drivers so a hosted hypervisor will usually benefit from having a better hardware compatibility. +
+ +
+What types of virtualization are there?
+ +Operating system virtualization +Network functions virtualization +Desktop virtualization +
+ +
+Is containerization is a type of Virtualization?
+ +Yes, it's a operating-system-level virtualization, where the kernel is shared and allows to use multiple isolated user-spaces instances. +
+
What is "time sharing"?
@@ -4663,8 +4711,9 @@ Output variables are named values that are sourced from the attributes of a modu The primary difference between containers and VMs is that containers allow you to virtualize multiple workloads on the operating system while in the case of VMs the hardware is being virtualized to run multiple machines each with its own OS. +You can also think about it as containers are for OS-level virtualization while VMs are for hardware virtualization. -* Containers don't require an entire guest operating system as VMs +* Containers don't require an entire guest operating system as VMs. Containers share the system's kernel as opposed to VMs * It usually takes a few seconds to set up a container as opposed to VMs which can take minutes or at least more time than containers as there is an entire OS to boot and initialize as opposed to container where you mainly lunch the app itself * Containers are isolated from each other, but not as concretely as virtual machines. It is possible for a malicious user to break into the host OS from a container and vice versa.
@@ -4976,6 +5025,12 @@ False. A Kubernetes cluster consists of at least 1 master and can have 0 workers Explain what is a pod
+
+Deploy a pod called "my-pod" using the nginx:alpine image
+ +`kubectl run my-pod --image=nginx:alpine --restart=Never` +
+
How many containers can a pod contain?
@@ -5050,13 +5105,25 @@ Another way is using the deployment configuration file: `kubectl delete -f deplo The pod related to the deployment will terminate and the replicaset will be removed.
+
+How make an app accessible on private or external network?
+ +Using a Service. +
+ #### Kubernetes Service
What is a Service in Kubernetes?
-"An abstract way to expose an application running on a set of Pods as a network service." - more [here](https://kubernetes.io/docs/concepts/services-networking/service) +"An abstract way to expose an application running on a set of Pods as a network service." - read more [here](https://kubernetes.io/docs/concepts/services-networking/service) -Note: Even if connected to a pod, their lifecycles aren't connected. +In simpler words, it allows you to expose the service by attaching permanent IP address for example to a certain pod. +
+ +
+True or False? The lifecycle of Pods and Services isn't connected so when a pod dies, the service still stays
+ +True
@@ -9732,7 +9799,7 @@ A list of services and their endpoints ## Security
-Can you describe the DevSecOps core principals? (or what is DevSecOps)
+What is DevSecOps? What its core principals?
@@ -9780,7 +9847,13 @@ Access control based on user roles (i.e., a collection of access authorizations
-## Security SSH +## Security - Web + +
+What is Nonce?
+
+ +## Security - SSH
What is SSH how does it work?
@@ -11309,11 +11382,7 @@ Bonus: extract the last word of each line Replace 'red' with 'green'
-## System Designotebookn - -This section contains only questions on System Design subject. The exercises can be found in [system-design-notebook repository](https://github.com/bregman-arie/system-design-notebook). - -#### Architecture +#### System Design
Explain what is a "Single point of failure" and give an example
@@ -11400,6 +11469,10 @@ A load balancer. You can add more resources, but if you would like them to be pa Also, data inconsistency is a concern with horizontal scaling.
+
+Explain when in which use cases will you use vertical scaling and in which use cases you will use horizontal scaling
+
+
Explain Resiliency and what ways are there to make a system more resilient
@@ -11502,6 +11575,12 @@ DNS redirection How would you build a URL shortener?
+#### More System Design Questions + +Additional exercises can be found in [system-design-notebook repository](https://github.com/bregman-arie/system-design-notebook). + +

+ ## Hardware
@@ -11580,6 +11659,10 @@ An answer from [talend.com](https://www.talend.com/resources/what-is-data-archit What is "Data Versioning"? What models of "Data Versioning" are there?
+
+What is ETL?
+
+ #### Apache Hadoop
diff --git a/certificates/cka.md b/certificates/cka.md index 5ca3aac..34c4958 100644 --- a/certificates/cka.md +++ b/certificates/cka.md @@ -1,54 +1,7 @@ ## Certified Kubernetes Administrator (CKA) -#### Basic Commands -
-Which command you run to view your nodes?
+Deploy a pod called web-1985 using the nginx:alpine image
-`kubectl get nodes` -
- -
-Which command you run to view all pods running on all namespaces?
- -`kubectl get pods --all-namespaces` -
- -
-How to list all namespaces?
- -`kubectl get namespaces` -
- -
-How to create a deployment?
- -``` -cat << EOF | kubectl create -f - -> apiVersion: v1 -> kind: Pod -> metadata: -> name: nginx -> spec: -> containers: -> - name: nginx -> image: nginx -> EOF -``` -
- -
-How to print information on a specific pod?
- -`kubectl describe pod pod_name` -
- -
-How to delete a pod?
- -`kubectl delete pod pod_name` -
- -
-How to check the status of all the components?
+`kubectl run web-1985 --image=nginx:alpine --restart=Never`