├── README.md
├── Vagrantfile
├── docs
├── 01-Introduction
│ ├── 01-Course-Introduction.md
│ └── 02-Certification.md
├── 02-Core-Concepts
│ ├── 01-Core-Concepts-Section-Introduction.md
│ ├── 02-Cluster-Architecture.md
│ ├── 03-ETCD-For-Beginners.md
│ ├── 04-ETCD-in-Kubernetes.md
│ ├── 05-Kube-API-Server.md
│ ├── 06-Kube-Controller-Manager.md
│ ├── 07-Kube-Scheduler.md
│ ├── 08-Kubelet.md
│ ├── 09-Kube-Proxy.md
│ ├── 10-Pods.md
│ ├── 11-Practice-Test-Introduction.md
│ ├── 12-Practice-Test-PODs.md
│ ├── 13-ReplicaSets.md
│ ├── 14-Practice-Tests-ReplicaSet.md
│ ├── 15-Deployments.md
│ ├── 16-Practice-Tests-Deployments.md
│ ├── 17-Namespaces.md
│ ├── 18-Practice-Test-Namespaces.md
│ ├── 19-Services.md
│ ├── 20-Services-ClusterIP.md
│ ├── 21-Practice-Test-Services.md
│ ├── 22-Imperative-Commands-with-kubectl.md
│ ├── 23-Practice-Test-Imperative-Commands.md
│ └── 24-Attachments.md
├── 03-Scheduling
│ ├── 01-Scheduling-Section-Introduction.md
│ ├── 02-Manual-Scheduling.md
│ ├── 03-Practice-Test-Manual-Scheduling.md
│ ├── 04-Labels-and-Selectors.md
│ ├── 05-Practice-Test-Scheduling.md
│ ├── 06-Taints-and-Tolerations.md
│ ├── 07-Practice-Test-Taints-and-Tolerations.md
│ ├── 08-Node-Selectors.md
│ ├── 09-Node-Affinity.md
│ ├── 10-Practice-Test-Node-Affinity.md
│ ├── 11.Taints-and-Tolerations-vs-Node-Affinity.md
│ ├── 12-Resource-Limits.md
│ ├── 13-Practice-Test-Resource-Limits.md
│ ├── 14-DaemonSets.md
│ ├── 15-Practice-Test-DaemonSets.md
│ ├── 16-Static-Pods.md
│ ├── 17-Practice-Test-StaticPods.md
│ ├── 18-Multiple-Schedulers.md
│ ├── 19-Practice-Test-Multiple-Schedulers.md
│ ├── 20-Configuring-Kubernetes-Schedulers.md
│ └── 21-Download-Presentation-Deck.md
├── 04-Logging-and-Monitoring
│ ├── 01-Logging-and-Monitoring-Section-Introduction.md
│ ├── 02-Monitor-Cluster-Components.md
│ ├── 03-Practice-Test-Monitor-Cluster-Components.md
│ ├── 04-Managing-Application-Logs.md
│ ├── 05-Download-Presentation-Deck.md
│ └── 06-Practice-Test-Managing-Application-Logs.md
├── 05-Application-Lifecycle-Management
│ ├── 01-Application-Lifecycle-Management--Section-Introduction.md
│ ├── 02-RollingUpdates-and-Rollback.md
│ ├── 03-Practice-Test-RollingUpdates-Rollback.md
│ ├── 04-Commands-and-Arguments-in-Docker.md
│ ├── 05-Commands-and-Arguments-in-Kubernetes.md
│ ├── 06-Practice-Test-Commands-and-Arguments.md
│ ├── 07.Configure-Environment-Variables-in-Applications.md
│ ├── 08-Configure-ConfigMaps-in-Applications.md
│ ├── 09-Practice-Test-Env-Variables.md
│ ├── 10.Secrets.md
│ ├── 11.Practice-Test-Secrets.md
│ ├── 12.Multi-Containers-PODs.md
│ ├── 13-Practice-Test-Multi-Container-Pods.md
│ ├── 14-Multi-Container-Pods-Design-Patterns.md
│ ├── 15.Init-Containers.md
│ ├── 16-Practice-Test-Init-Containers.md
│ ├── 17.Self-Healing-Applications.md
│ └── 18.Download-Presentation-Deck.md
├── 06-Cluster-Maintenance
│ ├── 01-Cluster-Maintenance-Section-Introduction.md
│ ├── 02-OS-Upgrades.md
│ ├── 03-Practice-Test-OS-Upgrades.md
│ ├── 04-Kubernetes-Software-Versions.md
│ ├── 05-Cluster-Upgrade-Introduction.md
│ ├── 06-Practice-Test-Cluster-Upgrade-Process.md
│ ├── 07-Backup-and-Restore-Methods.md
│ ├── 08-Working-With-ETCDCTL.md
│ ├── 09-Practice-Test-Backup-and-Restore-Methods.md
│ └── 10-Download-Presentation-Deck.md
├── 07-Security
│ ├── 01-Security-Section-Introduction.md
│ ├── 02-Kubernetes-Security-Primitives.md
│ ├── 03-Authentication.md
│ ├── 04-TLS-Certificates.md
│ ├── 05-TLS-Basics.md
│ ├── 06-TLS-in-Kubernetes.md
│ ├── 07-TLS-in-Kubernetes-Certificate-Creation.md
│ ├── 08-View-Certificate-Details.md
│ ├── 09-Certificate-Health-Check-Spreadsheet.md
│ ├── 10-Practice-Test-View-Certificate-Details.md
│ ├── 11-Certificate-API.md
│ ├── 12-Practice-Test-Certificates-API.md
│ ├── 13-kubeconfig.md
│ ├── 14-Practice-Test-KubeConfig.md
│ ├── 15-API-Groups.md
│ ├── 16-Authorization.md
│ ├── 17-RBAC.md
│ ├── 18-Practice-Test-RBAC.md
│ ├── 19-Cluster-Roles.md
│ ├── 20-Practice-Test-Cluster-Roles.md
│ ├── 21-Image-Security.md
│ ├── 22-Practice-Test-Image-Security.md
│ ├── 23-Security-Context.md
│ ├── 24-Practice-Test-Security-Context.md
│ ├── 25-Network-Policies.md
│ ├── 26-Practice-Test-Network-Policies.md
│ ├── 27-kubectx-and-kubens-commands.md
│ └── 28-Download-Presentation-Deck.md
├── 08-Storage
│ ├── 01-Storage-Section-Introduction.md
│ ├── 02-Introduction-to-Docker-Storage.md
│ ├── 03-Storage-in-Docker.md
│ ├── 04-Volume-Driver-Plugins-in-Docker.md
│ ├── 05-Container.Storage-Interface.md
│ ├── 06-Volumes.md
│ ├── 07-Persistent-Volumes.md
│ ├── 08-Persistent-Volume-Claims.md
│ ├── 09-Using-PVC-in-PODs.md
│ ├── 10-Practice-Test-Persistent-Volume-Claims.md
│ └── 11-Download-Presentation-Deck.md
├── 09-Networking
│ ├── 01-Networking-Introduction.md
│ ├── 02-Pre-requisite-Switching-Routing-Gateways.md
│ ├── 03-Pre-requisite-DNS.md
│ ├── 04-Pre-requisite-CoreDNS.md
│ ├── 05-Pre-requisite-Network-Namespace.md
│ ├── 06-Pre-requisite-Docker-Networking.md
│ ├── 07-Pre-requisite-CNI.md
│ ├── 08-Cluster-Networking.md
│ ├── 09-Practice-Test-Explore-Env.md
│ ├── 10-Pod-Networking.md
│ ├── 11-CNI-in-Kubernetes.md
│ ├── 12-CNI-weave.md
│ ├── 13-Practice-Test-CNI-weave.md
│ ├── 14-Practice-Test-Deploy-Network-Solution.md
│ ├── 15-ipam-weave.md
│ ├── 16-Practice-Test-Networking-weave.md
│ ├── 17-Service-Networking.md
│ ├── 18-Practice-Test-Service-Networking.md
│ ├── 19-DNS-in-kubernetes.md
│ ├── 20-CoreDNS-in-Kubernetes.md
│ ├── 21-Practice-Test-CoreDNS-in-Kubernetes.md
│ ├── 22-Ingress.md
│ ├── 23-Ingress-Annotations-and-rewrite-target.md
│ ├── 24-Practice-Test-CKA-Ingress-Net-1.md
│ ├── 25-Practice-Test-CKA-Ingress-Net-2.md
│ └── 26-Dowload-Presentation-Deck.md
├── 10-Install
│ ├── 01-Section-Introduction.md
│ ├── 02-Designing-a-Kubernetes-Cluster.md
│ ├── 03-Choosing-Kuberneter-Infrastructure.md
│ ├── 04-Choosing-Network-Solution.md
│ ├── 05-Configure-High-Availability.md
│ ├── 06-ETCD-in-HA.md
│ ├── 07-Demo-Prequisites.md
│ ├── 08-Provisioning-VMS.md
│ ├── 09-Install-Client-Tools.md
│ ├── 10-Secure-Cluster.md
│ ├── 11-Create-KubeConfigfiles.md
│ ├── 12-Data-Encryption.md
│ ├── 13-Kubernetes-Release-Binaries.md
│ ├── 14-Install-Control-Plane-Components-Intro.md
│ ├── 15-Install-ETCD-Cluster.md
│ ├── 16-Install-Control-Plane-Components.md
│ ├── 17-Install-Control-Plane-Load-Balancer.md
│ ├── 18-Install-Worker-node-componenets.md
│ ├── 19-TLS-Bootstrap-worker-node.md
│ ├── 20-Demo-TLS-Bootstrap-worker-node.md
│ ├── 21-Configure-Kubectl-for-remote-access.md
│ ├── 22-Provision-Networking.md
│ ├── 23-Kubapi-to-kubelet-connectivity.md
│ ├── 24-Deploy-Core-DNS.md
│ ├── 25-End-to-End-tests.md
│ ├── 26-End-To-End-Tests-Run-and-analyze.md
│ ├── 27-Smoke-test.md
│ ├── 28-End-to-End-test-part1.md
│ ├── 29-Practise-Test-instal-using-kubeadm.md
│ ├── 30-Solution-Install-a-K8s-cluster-kubeadm.md
│ └── 31-Download-Presentation-Deck.md
├── 11-Troubleshooting
│ ├── 01-Troubelshooting-Section-Introduction.md
│ ├── 02-Application-Failure.md
│ ├── 03-Solution-Application-Failure.md
│ ├── 04-Control-Plane-Failure.md
│ ├── 05-Practice-Test-Control-Plane-Failure.md
│ ├── 06-Solution-Control-Plane-Failure.md
│ ├── 07-Worker-Node-Failure.md
│ ├── 08-Practice-Test-Worker-Node-Failure.md
│ └── 09-Solution-Worker-Node-Failure.md
├── 12-Other-Topics
│ ├── 01-Labs-JSON-PATH.md
│ ├── 02-Pre-Requisites-JSON-PATH.md
│ ├── 03-Advance-Kubectl-Commands.md
│ └── 04-Practice-Test-Advance-Kubectl-Commands.md
├── 13-Lightning-Labs
│ ├── 01-Lightning-Labs-Introduction.md
│ └── 02-Lightning-Lab-1.md
└── 14-Mock-Exams
│ ├── 01-Introduction.md
│ ├── 02-Mock-Exam-1.md
│ ├── 03-Mock-Exam-2.md
│ ├── 04-CKA-MockExam-2-Solution.md
│ ├── 05-Mock-Exam-3.md
│ └── 06-CKA-MockExam-3-Solution.md
├── images
├── Readme.md
├── abac.PNG
├── acc1.PNG
├── acc2.PNG
├── acc3.PNG
├── annotations.PNG
├── api1.PNG
├── api10.PNG
├── api2.PNG
├── api3.PNG
├── api4.PNG
├── api5.PNG
├── api6.PNG
├── api7.PNG
├── api8.PNG
├── api9.PNG
├── app.PNG
├── args.PNG
├── at1.PNG
├── auth1.PNG
├── auth2.PNG
├── auth3.PNG
├── auth4.PNG
├── auth5.PNG
├── auth6.PNG
├── bash.PNG
├── bc.PNG
├── be.PNG
├── be1.PNG
├── brc.PNG
├── ca.PNG
├── ca1.PNG
├── ca2.PNG
├── cap.PNG
├── cert.PNG
├── cert1.PNG
├── cert10.PNG
├── cert11.PNG
├── cert2.PNG
├── cert3.PNG
├── cert4.PNG
├── cert5.PNG
├── cert6.PNG
├── cert7.PNG
├── cert8.PNG
├── cert9.PNG
├── certs.PNG
├── cmd.PNG
├── cmd1.PNG
├── cmi.PNG
├── cmp.PNG
├── cmp1.PNG
├── cms.PNG
├── cmv.PNG
├── cp.PNG
├── cp1.PNG
├── cr1.PNG
├── crt1.PNG
├── crt2.PNG
├── crt3.PNG
├── crt4.PNG
├── cs.png
├── cs1.PNG
├── cs2.PNG
├── csd.PNG
├── csec.PNG
├── csi.PNG
├── csr.PNG
├── csr1.PNG
├── csr2.PNG
├── csr3.PNG
├── csr4.PNG
├── das.PNG
├── dask.PNG
├── db.PNG
├── dc.PNG
├── deployment.PNG
├── deployment1.PNG
├── deployment2.PNG
├── dp.PNG
├── drain.PNG
├── ds-uc-kp.PNG
├── ds-uc.PNG
├── ds-ucn.PNG
├── ds.PNG
├── ds1.PNG
├── ds2.PNG
├── dsd.PNG
├── dst.PNG
├── el.PNG
├── enc.PNG
├── entry.PNG
├── entry1.PNG
├── env.PNG
├── er.PNG
├── erest.PNG
├── etc1.PNG
├── etc2.PNG
├── etcd-ha.PNG
├── etcd.PNG
├── etcd1.PNG
├── etcdctl.PNG
├── etcdctl1.PNG
├── ex.PNG
├── hpms.PNG
├── hrd.PNG
├── hrd1.PNG
├── hrd2.PNG
├── hrd3.PNG
├── hrd4.PNG
├── hrd5.PNG
├── hrd6.PNG
├── img1.PNG
├── img2.PNG
├── ing1.PNG
├── ing2.PNG
├── jnode.PNG
├── jpod.PNG
├── k8s-arch.PNG
├── k8s-arch1.PNG
├── ka.PNG
├── kc1.PNG
├── kc10.PNG
├── kc11.PNG
├── kc12.PNG
├── kc2.PNG
├── kc3.PNG
├── kc4.PNG
├── kc5.PNG
├── kc6.PNG
├── kc7.PNG
├── kc8.PNG
├── kc9.PNG
├── kctl1.PNG
├── kctl2.PNG
├── key-value.PNG
├── key-value1.PNG
├── key-value2.PNG
├── key-value3.PNG
├── kgn.PNG
├── kp.PNG
├── ks.PNG
├── ksec.PNG
├── kube-apiserver.PNG
├── kube-apiserver1.PNG
├── kube-apiserver2.PNG
├── kube-apiserver3.PNG
├── kube-apiserver4.PNG
├── kube-controller-manager.PNG
├── kube-controller-manager0.PNG
├── kube-controller-manager1.PNG
├── kube-controller-manager2.PNG
├── kube-controller-manager3.PNG
├── kube-proxy.PNG
├── kube-proxy1.PNG
├── kube-proxy2.PNG
├── kube-scheduler1.PNG
├── kube-scheduler2.PNG
├── kube-scheduler3.PNG
├── kube-scheduler4.PNG
├── kube-scheduler5.PNG
├── kube1.png
├── kubectl.PNG
├── kubelet.PNG
├── kubelet1.PNG
├── kubelet2.PNG
├── kubeu.PNG
├── kubeu1.PNG
├── kubeu2.PNG
├── kubeu3.PNG
├── kublet.PNG
├── la.PNG
├── labels-ckc.PNG
├── labels.PNG
├── lables-animals.PNG
├── lc.PNG
├── lco.PNG
├── ld.PNG
├── ld1.PNG
├── lf.PNG
├── lg.PNG
├── lk.PNG
├── ln.PNG
├── loga.PNG
├── logs-k8s.png
├── logs.PNG
├── logs1.PNG
├── loop.PNG
├── lpod.PNG
├── lrs.PNG
├── lrs1.PNG
├── ls.PNG
├── lse.PNG
├── lt.PNG
├── mcp.PNG
├── mcpc.PNG
├── mem.PNG
├── mmp.PNG
├── mode.PNG
├── mode1.PNG
├── mon.PNG
├── ms.PNG
├── ms1.PNG
├── msg.PNG
├── na.PNG
├── na1.PNG
├── na2.PNG
├── namespace.PNG
├── namespace1.PNG
├── nat.PNG
├── nats.PNG
├── nats1.PNG
├── node-auth.png
├── node-controller.PNG
├── node.PNG
├── note.PNG
├── note1.PNG
├── np.PNG
├── npol.PNG
├── npol1.PNG
├── npol2.PNG
├── npol3.PNG
├── npol4.PNG
├── npolsec.PNG
├── ns-old.PNG
├── ns.PNG
├── ns1.PNG
├── ns10.PNG
├── ns11.PNG
├── ns12.PNG
├── ns13.PNG
├── ns2.PNG
├── ns3.PNG
├── ns4.PNG
├── ns5.PNG
├── ns6.PNG
├── ns7.PNG
├── ns8.PNG
├── ns9.PNG
├── nsec.PNG
├── nsel.PNG
├── nsel1.PNG
├── nsl.PNG
├── opt.PNG
├── os.PNG
├── other-controllers.PNG
├── pki.PNG
├── pod.PNG
├── pod1.PNG
├── pod2.PNG
├── pod3.PNG
├── pod4.PNG
├── post.PNG
├── prvr.PNG
├── prvr1.PNG
├── r1.PNG
├── r2.PNG
├── r3.PNG
├── r4.PNG
├── rb.PNG
├── rbac.PNG
├── rbac1.PNG
├── rbac2.PNG
├── rbac3.PNG
├── rbac4.PNG
├── rbac5.PNG
├── rc.PNG
├── rc1.PNG
├── rc2.PNG
├── rc3.PNG
├── rcd.PNG
├── rcd1.PNG
├── rci.PNG
├── rcrl.PNG
├── ref.PNG
├── relational-dbs.PNG
├── replication-controller.PNG
├── rl.PNG
├── roles.PNG
├── rollc.PNG
├── rollv.PNG
├── rr-pod.PNG
├── rr.PNG
├── rs.PNG
├── rs1.PNG
├── rs2.PNG
├── rsc.PNG
├── rsl.PNG
├── rsl1.PNG
├── rsm.PNG
├── sc1.png
├── sc2.PNG
├── sc3.PNG
├── sec.PNG
├── secd.PNG
├── sech.PNG
├── seck.PNG
├── seco.PNG
├── secp.PNG
├── secpv.PNG
├── secv.PNG
├── sl.PNG
├── sleep.PNG
├── sleep1.PNG
├── sleep2.PNG
├── sort.PNG
├── sp.PNG
├── sp1.PNG
├── sp2.PNG
├── sp3.PNG
├── sp4.PNG
├── sp5.PNG
├── spvsds.PNG
├── srv-types.PNG
├── srv1.PNG
├── srv2.PNG
├── srv3.PNG
├── srv4.PNG
├── srvc1.PNG
├── srvc2.PNG
├── srvc3.PNG
├── srvnp.PNG
├── srvnp1.PNG
├── srvnp2.PNG
├── srvnp3.PNG
├── srvnp4.PNG
├── stg1.PNG
├── stg2.PNG
├── stg3.PNG
├── sum.PNG
├── svc.PNG
├── sxc1.PNG
├── sxc2.PNG
├── tandt.PNG
├── tls.PNG
├── tls1.PNG
├── tn-na.PNG
├── tn-ns.PNG
├── tn-nsa.png
├── tn.PNG
├── tntm.PNG
├── tp.PNG
├── traffic.PNG
├── up.PNG
├── up1.PNG
├── up2.PNG
├── view.PNG
├── web.PNG
├── web1.PNG
├── webhook.PNG
└── wrk.PNG
└── ubuntu
├── allow-bridge-nf-traffic.sh
├── cert_verify.sh
├── install-docker-2.sh
├── install-docker.sh
├── update-dns.sh
└── vagrant
├── install-guest-additions.sh
└── setup-hosts.sh
/docs/01-Introduction/02-Certification.md:
--------------------------------------------------------------------------------
1 | # Certification
2 |
3 | - Take me to [Video Tutorial](https://kodekloud.com/courses/539883/lectures/9814246)
4 |
5 | ## Certification Details
6 |
7 | - **`Certified Kubernetes Administrator`**: https://www.cncf.io/certification/cka/
8 |
9 | - **`Exam Curriculum (Topics)`**: https://github.com/cncf/curriculum
10 |
11 | - **`Candidate Handbook`**: https://www.cncf.io/certification/candidate-handbook
12 |
13 | - **`Exam Tips`**: http://training.linuxfoundation.org/go//Important-Tips-CKA-CKAD
14 |
15 | #### Use the code - KUBERNETES15 - while registering for the CKA or CKAD exams at Linux Foundation to get a 15% discount.
16 |
17 |
--------------------------------------------------------------------------------
/docs/02-Core-Concepts/01-Core-Concepts-Section-Introduction.md:
--------------------------------------------------------------------------------
1 | # Core Concepts Section Introduction
2 |
3 | - Take me to the [Video Tutorial](https://kodekloud.com/courses/539883/lectures/9808147)
4 |
5 | In this section, we will take a look at the below
6 | - Cluster Architecture
7 | - API Primitives
8 | - Services & Other Network Primitives
9 |
10 | k8s reference docs:
11 | - https://kubernetes.io/docs/concepts/overview/kubernetes-api/
12 | - https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/
13 | - https://kubernetes.io/docs/concepts/architecture/
14 | - https://kubernetes.io/docs/concepts/overview/components/
15 | - https://kubernetes.io/docs/concepts/services-networking/
16 |
17 |
--------------------------------------------------------------------------------
/docs/02-Core-Concepts/02-Cluster-Architecture.md:
--------------------------------------------------------------------------------
1 | # Cluster Architecture
2 |
3 | - Take me to [Video Tutorial](https://kodekloud.com/courses/539883/lectures/9808145)
4 |
5 | In this section , we will take a look at the kubernetes Architecture at high level.
6 | - 10,000 Feet Look at the Kubernetes Architecture
7 |
8 | 
9 |
10 | 
11 |
12 | K8s Reference Docs:
13 | - https://kubernetes.io/docs/concepts/architecture/
14 |
--------------------------------------------------------------------------------
/docs/02-Core-Concepts/08-Kubelet.md:
--------------------------------------------------------------------------------
1 | # Kubelet
2 | - Take me to [Video Tutorial](https://kodekloud.com/courses/539883/lectures/9808158)
3 |
4 | In this section we will take a look at kubelet.
5 |
6 | #### Kubelet is the sole point of contact for the kubernetes cluster
7 | - The kube-scheduler is only responsible for deciding which pod goes on which node. It doesn't actually place the pod on the nodes, thats the job of the **`kubelet`**.
8 | - The **`kubelet`** will create the pods on the nodes, the scheduler only decides which pods goes where.
9 | - The kubelet create or delete the pods on the nodes as instructred by scheduler on the master.
10 | - The kubelet in the kubernetes worker node, registers the node with the kubernetes cluster.
11 |
12 | 
13 |
14 | ## Install kubelet
15 | - Kubeadm does not deploy kubelet by default. You must manually download and install it.
16 | - Download the kubelet binary from the kubernetes release pages [kubelet](https://storage.googleapis.com/kubernetes-release/release/v1.13.0/bin/linux/amd64/kubelet). For example: To download kubelet v1.13.0, Run the below command.
17 | ```
18 | $ wget https://storage.googleapis.com/kubernetes-release/release/v1.13.0/bin/linux/amd64/kubelet
19 | ```
20 | - Extract it
21 | - Run it as a service
22 |
23 | 
24 |
25 | ## View kubelet options
26 | - You can also see the running process and affective options by listing the process on worker node and searching for kubelet.
27 | ```
28 | $ ps -aux |grep kubelet
29 | ```
30 |
31 | 
32 |
33 | K8s Reference Docs:
34 | - https://kubernetes.io/docs/reference/command-line-tools-reference/kubelet/
35 | - https://kubernetes.io/docs/concepts/overview/components/
36 | - https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/kubelet-integration/
37 |
--------------------------------------------------------------------------------
/docs/02-Core-Concepts/09-Kube-Proxy.md:
--------------------------------------------------------------------------------
1 | # Kube Proxy
2 | - Take me to [Video Tutorial](https://kodekloud.com/courses/539883/lectures/9808167)
3 |
4 | In this section, we will take a look at kube-proxy.
5 |
6 | Within Kubernetes Cluster, every pod can reach every other pod, this is accomplish by deploying a pod networking cluster to the cluster.
7 | - Kube-Proxy is a process that runs on each node in the kubernetes cluster.
8 | - The job of the kube-proxy is to look for new services and everytime a new service is created it creates the appropriate rules on each node to forward traffic to those services to the backend pods.
9 | - One way it does is through **`IPTABLES`** rules.
10 |
11 | 
12 |
13 | ## Install kube-proxy - Manual
14 | - Download the kube-proxy binary from the kubernetes release pages [kube-proxy](https://storage.googleapis.com/kubernetes-release/release/v1.13.0/bin/linux/amd64/kube-proxy). For example: To download kube-proxy v1.13.0, Run the below command.
15 | ```
16 | $ wget https://storage.googleapis.com/kubernetes-release/release/v1.13.0/bin/linux/amd64/kube-proxy
17 | ```
18 | - Extract it
19 | - Run it as a service
20 |
21 | 
22 |
23 | ## View kube-proxy options - kubeadm
24 | - If you set it up with kubeadm tool, kubeadm tool will deploy the kube-proxy as pod in kube-system namespace. In fact it is deployed as a daemonset on master node.
25 | ```
26 | $ kubectl get pods -n kube-system
27 | ```
28 | 
29 |
30 |
31 | K8s Reference Docs:
32 | - https://kubernetes.io/docs/reference/command-line-tools-reference/kube-proxy/
33 | - https://kubernetes.io/docs/concepts/overview/components/
34 |
--------------------------------------------------------------------------------
/docs/02-Core-Concepts/10-Pods.md:
--------------------------------------------------------------------------------
1 | # Pods
2 | - Take me to [Video Tutorial](https://kodekloud.com/courses/539883/lectures/9808169)
3 |
4 | In this section, we will take a look at PODS.
5 | - POD introduction
6 | - How to deploy pod?
7 |
8 | #### Kubernetes doesn't deploy containers directly on the worker node.
9 | - The containers are encapsulated into a kubernetes objects called **`POD`**.
10 | - A POD is a single instance of an application.
11 | - A POD is the smallest object that you can create in kubernetes
12 |
13 | 
14 |
15 | #### Here is a single node kubernetes cluster with single instance of your application running in a single docker container encapsulated in the pod.
16 |
17 | 
18 |
19 | #### Pod will have a one-to-one relationship with containers running your application.
20 | - To scale up, you create a pod and to scale down, you delete a pod.
21 | - You do not add additional containers to an existing POD to scale your application.
22 |
23 | 
24 |
25 | ## Multi-Container PODs
26 | - A single pod can have multiple containers except for the fact that they are usually not multiple containers of the **`same kind`**.
27 | - Sometimes you might have a scenario where a helper containers that might be doing some kind of supporting tasks for a web application such as processing a user entered data, processing a file uploaded by the user etc. and you want these **`helper containers`** to live along side your application container. In that case you can have both of these containers part of the same POD.
28 |
29 | 
30 |
31 | ## Docker Example (Docker Link)
32 |
33 | 
34 |
35 | ## How to deploy pods?
36 | Lets now take a look to create a nginx pod using **`kubectl`**.
37 |
38 | - To deploy a docker container by creating a POD.
39 | ```
40 | $ kubectl run nginx --image nginx
41 | ```
42 |
43 | - To get the list of pods
44 | ```
45 | $ kubectl get pods
46 | ```
47 |
48 | 
49 |
50 | K8s Reference Docs:
51 | - https://kubernetes.io/docs/concepts/workloads/pods/pod/
52 | - https://kubernetes.io/docs/concepts/workloads/pods/pod-overview/
53 | - https://kubernetes.io/docs/tutorials/kubernetes-basics/explore/explore-intro/
54 |
55 |
56 |
--------------------------------------------------------------------------------
/docs/02-Core-Concepts/11-Practice-Test-Introduction.md:
--------------------------------------------------------------------------------
1 | # Practice Test Introduction
2 |
3 | In this section, we will take a look at practice test demo.
4 | - Take me to [Video Tutorial](https://kodekloud.com/courses/539883/lectures/9808164)
5 |
6 |
--------------------------------------------------------------------------------
/docs/02-Core-Concepts/18-Practice-Test-Namespaces.md:
--------------------------------------------------------------------------------
1 | # Practice Test - Namespaces
2 | - Take me to [Practice Test](https://kodekloud.com/courses/539883/lectures/9816576)
3 |
4 | Solutions to practice test for namespaces
5 |
6 | 1. Run the command **`kubectl get namespace`** and count the number of pods.
7 |
8 |
9 |
10 | ```
11 | $ kubectl get namespace
12 | ```
13 |
14 |
15 | 1. Run the command **`kubectl get pods --namespace=research`**
16 |
17 |
18 |
19 | ```
20 | $ kubectl get pods --namespace=research
21 | ```
22 |
23 |
24 | 1. Run the below command
25 |
26 |
27 |
28 | ```
29 | $ kubectl run redis --image=redis --namespace=finance
30 | ```
31 |
32 |
33 | 1. Run the command **`kubectl get pods --all-namespaces`**
34 |
35 |
36 |
37 | ```
38 | $ kubectl get pods --all-namespaces
39 | ```
40 |
41 |
42 | 1. Connectivity Test
43 |
44 |
45 |
46 | ```
47 | Host Name: db-service and Host Port: 3306
48 | ```
49 |
50 |
51 | 1. Connectivity Test
52 |
53 |
54 |
55 | ```
56 | Host Name: db-service.dev.svc.cluster.local and Host Port: 3306
57 | ```
58 |
59 |
60 |
61 | #### Take me to [Practice Test Solutions](https://kodekloud.com/courses/539883/lectures/16416900)
62 |
--------------------------------------------------------------------------------
/docs/02-Core-Concepts/20-Services-ClusterIP.md:
--------------------------------------------------------------------------------
1 | # Kubernetes Services - ClusterIP
2 | - Take me to [Video Tutorial](https://kodekloud.com/courses/539883/lectures/9808157)
3 |
4 | In this section we will take a look at **`services - ClusterIP`** in kubernetes
5 |
6 | ## ClusterIP
7 | - In this case the service creates a **`Virtual IP`** inside the cluster to enable communication between different services such as a set of frontend servers to a set of backend servers.
8 | - A full stack web application typically has different kinds of pods hosting different parts of an application. You may have number of pods running a **`frontend`** web servers, another set of pods running a **`backend`** server and a set of pods running a key-value store like **`redis`** etc.
9 | - The web frontend servers needs to communicate with the backend servers need to communicate with the databases, redis servers etc.
10 |
11 | 
12 |
13 | #### What is a right way to establish connectivity between these services or tiers
14 | - A kubernetes service can help us group the pods together and provide a single interface to access the pod in a group.
15 |
16 | 
17 |
18 | #### To create a service of type ClusterIP
19 | ```
20 | apiVersion: v1
21 | kind: Service
22 | metadata:
23 | name: back-end
24 | spec:
25 | types: ClusterIP
26 | ports:
27 | - targetPort: 80
28 | port: 80
29 | selector:
30 | app: myapp
31 | type: back-end
32 | ```
33 | ```
34 | $ kubectl create -f service-defination.yaml
35 | ```
36 |
37 | #### To list the services
38 | ```
39 | $ kubectl get services
40 | ```
41 | 
42 |
43 | K8s Reference Docs:
44 | - https://kubernetes.io/docs/concepts/services-networking/service/
45 | - https://kubernetes.io/docs/tutorials/kubernetes-basics/expose/expose-intro/
46 |
--------------------------------------------------------------------------------
/docs/02-Core-Concepts/21-Practice-Test-Services.md:
--------------------------------------------------------------------------------
1 | # Practice Test - Services
2 | - Take me to [Practice Test](https://kodekloud.com/courses/539883/lectures/9816583)
3 |
4 | #### Solutions to Practice test - Services
5 |
6 | - Run the command **`kubectl get services`** and count the number of services.
7 |
8 |
9 |
10 | ```
11 | $ kubectl get services
12 | ```
13 |
14 |
15 | - Run the command **`kubectl get services`** and look at the Type column
16 |
17 |
18 |
19 | ```
20 | $ kubectl get services
21 | ```
22 |
23 |
24 | - Run the command **`kubectl describe service`** and look at TargetPort.
25 |
26 |
27 |
28 | ```
29 | $ kubectl describe service|grep TargetPort
30 | ```
31 |
32 |
33 | - Run the command **`kubectl describe service`** and look at Labels
34 |
35 |
36 |
37 | ```
38 | $ kubectl describe service
39 | ```
40 |
41 |
42 | - Run the command **`kubectl describe service`** and look at Endpoints
43 |
44 |
45 |
46 | ```
47 | $ kubectl describe service
48 | ```
49 |
50 |
51 | - Run the command **`kubectl get deployment`** and count the number of pods.
52 |
53 |
54 |
55 | ```
56 | $ kubectl get deployment
57 | ```
58 |
59 |
60 | - Run the command **`kubectl describe deployment`** and look under the containers section.
61 |
62 |
63 |
64 | ```
65 | $ kubectl describe deployment
66 | ```
67 |
68 |
69 | - Try to access the Web Application UI using the tab simple-webapp-ui above the terminal.
70 |
71 | - Update the given values in the service definition file and create the service.
72 |
73 |
74 |
75 | ```
76 | $ kubectl create -f service-defination-1.yaml
77 | ```
78 |
79 |
80 |
81 | #### Take me to [Practice Test - Solutions](https://kodekloud.com/courses/539883/lectures/16603611)
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
--------------------------------------------------------------------------------
/docs/02-Core-Concepts/22-Imperative-Commands-with-kubectl.md:
--------------------------------------------------------------------------------
1 | # Certification Tips - Imperative Commands with kubectl
2 | - Take me to the [Tutorial](https://kodekloud.com/courses/539883/lectures/10503265)
3 |
4 |
--------------------------------------------------------------------------------
/docs/02-Core-Concepts/24-Attachments.md:
--------------------------------------------------------------------------------
1 | # KodeKloud - CKA Course Documents
2 | - Take me to the [Tutorials](https://kodekloud.com/courses/539883/lectures/12356372)
3 |
4 |
--------------------------------------------------------------------------------
/docs/03-Scheduling/01-Scheduling-Section-Introduction.md:
--------------------------------------------------------------------------------
1 | # Scheduling Section Introduction
2 | - Take me to [Video Tutorial](https://kodekloud.com/courses/539883/lectures/9815300)
3 |
--------------------------------------------------------------------------------
/docs/03-Scheduling/03-Practice-Test-Manual-Scheduling.md:
--------------------------------------------------------------------------------
1 | # Practice Test - Manual Scheduling
2 | - Take me to [Practice Test](https://kodekloud.com/courses/539883/lectures/9816587)
3 |
4 | Solutions to Practice Test - Manual Scheduling
5 |
6 | - Run, **`kubectl create -f nginx.yaml`**
7 |
8 |
9 |
10 | ```
11 | $ kubectl create -f nginx.yaml
12 | ```
13 |
14 |
15 | - Run the command 'kubectl get pods' and check the status column
16 |
17 |
18 |
19 | ```
20 | $ kubectl get pods
21 | ```
22 |
23 |
24 | - Run the command 'kubectl get pods --namespace kube-system'
25 |
26 |
27 |
28 | ```
29 | $ kubectl get pods --namespace kube-system
30 | ```
31 |
32 |
33 | - Set **`nodeName`** property on the pod to node01 node
34 |
35 |
36 |
37 | ```
38 | $ vi nginx.yaml
39 | $ kubectl delete -f nginx.yaml
40 | $ kubectl create -f nginx.yaml
41 | ```
42 |
43 |
44 | - Set **`nodeName`** property on the pod to master node
45 |
46 |
47 |
48 | ```
49 | $ vi nginx.yaml
50 | $ kubectl delete -f nginx.yaml
51 | $ kubectl create -f nginx.yaml
52 | ```
53 |
54 |
55 |
56 | #### Take me to [Practice Test - Solutions](https://kodekloud.com/courses/certified-kubernetes-administrator-with-practice-tests/lectures/16603715)
57 |
58 |
--------------------------------------------------------------------------------
/docs/03-Scheduling/05-Practice-Test-Scheduling.md:
--------------------------------------------------------------------------------
1 | # Practice Test - Scheduling
2 | - Take me to [Video Tutorial](https://kodekloud.com/courses/539883/lectures/9816589)
3 |
4 | Solutions to Practice Test - Scheduling
5 | - Run the command 'kubectl get pods --selector env=dev'
6 |
7 |
8 |
9 | ```
10 | $ kubectl get pods --selector env=dev
11 | ```
12 |
13 |
14 | - Run the command 'kubectl get pods --selector bu=finance'
15 |
16 |
17 |
18 | ```
19 | $ kubectl get pods --selector bu=finance
20 | ```
21 |
22 |
23 | - Run the command 'kubectl get all --selector env=prod'
24 |
25 |
26 |
27 | ```
28 | $ kubectl get all --selector env=prod
29 | ```
30 |
31 |
32 | - Run the command 'kubectl get all --selector env=prod,bu=finance,tier=frontend'
33 |
34 |
35 |
36 | ```
37 | $ kubectl get all --selector env=prod,bu=finance,tier=frontend
38 | ```
39 |
40 |
41 | - Set the labels on the pod definition template to frontend
42 |
43 |
44 |
45 | ```
46 | $ vi replicaset-defination.yaml
47 | $ kubectl create -f replicaset-defination.yaml
48 | ```
49 |
50 |
51 |
52 | #### Take to [Practice Test - Scheduling](https://kodekloud.com/courses/certified-kubernetes-administrator-with-practice-tests/lectures/13290011)
53 |
--------------------------------------------------------------------------------
/docs/03-Scheduling/08-Node-Selectors.md:
--------------------------------------------------------------------------------
1 | # Node Selectors
2 | - Take me to [Video Tutorial](https://kodekloud.com/courses/539883/lectures/10277935)
3 |
4 | In this section, we will take a look at Node Selectors in Kubernetes
5 |
6 | #### We add new property called Node Selector to the spec section and specify the label.
7 | - The scheduler uses these labels to match and identify the right node to place the pods on.
8 | ```
9 | apiVersion: v1
10 | kind: Pod
11 | metadata:
12 | name: myapp-pod
13 | spec:
14 | containers:
15 | - name: data-processor
16 | image: data-processor
17 | nodeSelector:
18 | size: Large
19 | ```
20 | 
21 |
22 | - To label nodes
23 |
24 | Syntax
25 | ```
26 | $ kubectl label nodes =
27 | ```
28 | Example
29 | ```
30 | $ kubectl label nodes node-1 size=Large
31 | ```
32 |
33 | 
34 |
35 | - To create a pod defination
36 | ```
37 | apiVersion: v1
38 | kind: Pod
39 | metadata:
40 | name: myapp-pod
41 | spec:
42 | containers:
43 | - name: data-processor
44 | image: data-processor
45 | nodeSelector:
46 | size: Large
47 | ```
48 | ```
49 | $ kubectl create -f pod-defination.yml
50 | ```
51 |
52 | 
53 |
54 | ## Node Selector - Limitations
55 | - We used a single label and selector to achieve our goal here. But what if our requirement is much more complex.
56 |
57 | 
58 |
59 | - For this we have **`Node Affinity and Anti Affinity`**
60 |
61 | #### K8s Reference Docs
62 | - https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodeselector
63 |
64 |
65 |
66 |
67 |
68 |
--------------------------------------------------------------------------------
/docs/03-Scheduling/11.Taints-and-Tolerations-vs-Node-Affinity.md:
--------------------------------------------------------------------------------
1 | # Taints and Tolerations vs Node Affinity
2 | - Take me to [Video Tutorial](https://kodekloud.com/courses/539883/lectures/10277937)
3 |
4 | In this section, we will take a look at Taints and Tolerations vs Node Affinity
5 | - Taints and Toleration does not gurantee that the pods will only prefer these nodes, in this case, the red nodes may ends up on one of the other nodes that do not have a taint or toleration set.
6 |
7 | 
8 |
9 | - Let us try to solve the same problem with node affinity. With node affinity, we first label the nodes, in this case with respective colors and we then set node selectors on the pods to tie the pods to the nodes. As such the pods end up on the right nodes. However, that does not guarantee that other pods are not placed on these nodes. In this case, there is a chance that one of the other pods may end up on our nodes.
10 |
11 | 
12 |
13 | - As such, a combination of taints and tolerations and node affinity rules can be used together to completely dedicate nodes for specific parts. We first use taints and tolerations to prevent other pods from being placed on our nodes and then we use node affinity to prevent our pods from being placed on thier nodes
14 |
15 | 
16 |
17 |
18 | #### K8s Reference Docs:
19 | - https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/
20 | - https://kubernetes.io/docs/tasks/configure-pod-container/assign-pods-nodes-using-node-affinity/
21 |
--------------------------------------------------------------------------------
/docs/03-Scheduling/13-Practice-Test-Resource-Limits.md:
--------------------------------------------------------------------------------
1 | # Practice Test - Resource Limits
2 | - Take me to [Practice Test](https://kodekloud.com/courses/539883/lectures/9816593)
3 |
4 | Solutions to practice test - resource limtis
5 | - Run the command 'kubectl describe pod rabbit' and inspect requests.
6 |
7 |
8 |
9 | ```
10 | $ kubectl describe pod rabbit
11 | ```
12 |
13 |
14 | - Run the command 'kubectl delete pod rabbit'.
15 |
16 |
17 |
18 | ```
19 | $ kubectl delete pod rabbit
20 | ```
21 |
22 |
23 | - Run the command 'kubectl get pods' and inspect the status of the pod elephant
24 |
25 |
26 |
27 | ```
28 | $ kubectl get pods
29 | ```
30 |
31 |
32 | - The status 'OOMKilled' indicates that the pod ran out of memory. Identify the memory limit set on the POD.
33 |
34 | - Generate a template of the existing pod.
35 |
36 |
37 |
38 | ```
39 | $ kubectl get pods elephant -o yaml > elephant.yaml
40 | ```
41 |
42 |
43 | Update the elephant.yaml pod defination with the resource memory limits to 20Mi
44 |
45 |
46 |
47 | ```
48 | resources:
49 | limits:
50 | memory: 20Mi
51 | ---
52 |
53 |
54 | Delete the pod and recreate it.
55 |
56 |
57 |
58 | ```
59 | $ kubectl delete pod elephant
60 | $ kubectl create -f elephant.yaml
61 | ```
62 |
63 |
64 | - Inspect the status of POD. Make sure it's running
65 |
66 |
67 |
68 | ```
69 | $ kubectl get pods
70 | ```
71 |
72 |
73 | - Run the command 'kubectl delete pod elephant'.
74 |
75 |
76 |
77 | ```
78 | $ kubectl delete pod elephant
79 | ```
80 |
81 |
82 | #### Take me to [Practice Test - Solutions](https://kodekloud.com/courses/certified-kubernetes-administrator-with-practice-tests/lectures/13290014)
83 |
--------------------------------------------------------------------------------
/docs/03-Scheduling/18-Multiple-Schedulers.md:
--------------------------------------------------------------------------------
1 | # Multiple Schedulers
2 | - Take me to [Video Tutorial](https://kodekloud.com/courses/539883/lectures/9815299)
3 |
4 | In this section, we will take a look at multiple schedulers
5 |
6 | ## Custom Schedulers
7 | - You can write your own kubernets scheduler program, package it and deploy it as the default scheduler or as an additional scheduler in the kubernetes cluster.
8 | - You kubernetes cluster can schedule multiple schedulers at the same time.
9 |
10 | 
11 |
12 | ## Deploy additional scheduler
13 | - Download the binary
14 | ```
15 | $ wget https://storage.googleapis.com/kubernetes-release/release/v1.12.0/bin/linux/amd64/kube-scheduler
16 | ```
17 | 
18 |
19 | ## Deploy additional scheduler - kubeadm
20 |
21 | 
22 |
23 | - To create a scheduler pod
24 | ```
25 | $ kubectl create -f my-custom-scheduler.yaml
26 | ```
27 |
28 | ## View Schedulers
29 | - To list the scheduler pods
30 | ```
31 | $ kubectl get pods -n kube-system
32 | ```
33 |
34 | ## Use the Custom Scheduler
35 | - Create a pod defination file and add new section called **`schedulerName`** and specify the name of the new scheduler
36 | ```
37 | apiVersion: v1
38 | kind: Pod
39 | metadata:
40 | name: nginx
41 | spec:
42 | containers:
43 | - image: nginx
44 | name: nginx
45 | schedulerName: my-custom-scheduler
46 | ```
47 | 
48 |
49 | - To create a pod definaton
50 | ```
51 | $ kubectl create -f pod-defination.yaml
52 | ```
53 | - To list pods
54 | ```
55 | $ kubectl get pods
56 | ```
57 |
58 | ## View Events
59 | - To view events
60 | ```
61 | $ kubectl get events
62 | ```
63 | 
64 |
65 | ## View Scheduler Logs
66 | - To view scheduler logs
67 | ```
68 | $ kubectl logs my-custom-scheduler -n kube-system
69 | ```
70 | 
71 |
72 | #### K8s Reference Docs
73 | - https://kubernetes.io/docs/tasks/extend-kubernetes/configure-multiple-schedulers/
74 |
75 |
--------------------------------------------------------------------------------
/docs/03-Scheduling/19-Practice-Test-Multiple-Schedulers.md:
--------------------------------------------------------------------------------
1 | # Practice Test - Multiple Schedulers
2 | - Take me to [Practice Test](https://kodekloud.com/courses/539883/lectures/9816597)
3 |
4 | Solutions to practice test - multiple schedulers
5 | - Run the command 'kubectl get pods --namespace=kube-system'
6 |
7 |
8 |
9 | ```
10 | $ kubectl get pods --namespace=kube-system
11 | ```
12 |
13 |
14 | - Run the command 'kubectl describe pod kube-scheduler-master --namespace=kube-system'
15 |
16 |
17 |
18 | ```
19 | $ kubectl describe pod kube-scheduler-master --namespace=kube-system
20 | ```
21 |
22 |
23 | - Use the file at /etc/kubernetes/manifests/kube-scheduler.yaml to create your own scheduler. View answer file at /var/answers
24 |
25 |
26 |
27 | ```
28 | $ kubectl create -f my-scheduler.yaml
29 | ```
30 |
31 |
32 | - Set schedulerName property on pod specification to the name of the new scheduler. File is located at /root/nginx-pod.yaml
33 |
34 |
35 |
36 | ```
37 | master $ grep schedulerName /root/nginx-pod.yaml
38 | schedulerName: my-scheduler
39 |
40 | $ kubectl create -f /root/nginx-pod.yaml
41 | ```
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
--------------------------------------------------------------------------------
/docs/03-Scheduling/20-Configuring-Kubernetes-Schedulers.md:
--------------------------------------------------------------------------------
1 | # Configuring Kubernetes Schedulers
2 | - Take me to [video Tutorial](https://kodekloud.com/courses/certified-kubernetes-administrator-with-practice-tests/lectures/9815301)
3 |
4 | In this section, we will take a look at configuring kubernetes schedulers.
5 |
6 | 
7 |
8 | ## References
9 | - https://github.com/kubernetes/community/blob/master/contributors/devel/sig-scheduling/scheduler.md
10 | - https://kubernetes.io/blog/2017/03/advanced-scheduling-in-kubernetes/
11 | - https://jvns.ca/blog/2017/07/27/how-does-the-kubernetes-scheduler-work/
12 | - https://stackoverflow.com/questions/28857993/how-does-kubernetes-scheduler-work
13 |
14 |
--------------------------------------------------------------------------------
/docs/03-Scheduling/21-Download-Presentation-Deck.md:
--------------------------------------------------------------------------------
1 | # Download Presentation Deck
2 | - Take me to [Presentation Deck](https://kodekloud.com/courses/certified-kubernetes-administrator-with-practice-tests/lectures/16024153)
3 |
--------------------------------------------------------------------------------
/docs/04-Logging-and-Monitoring/01-Logging-and-Monitoring-Section-Introduction.md:
--------------------------------------------------------------------------------
1 | # Logging and Monitoring Section Introduction
2 | - Take me to [Video Tutorial](https://kodekloud.com/courses/539883/lectures/9808185)
3 |
4 | In this section, we will take a look at the below
5 | - Monitor Cluster Components
6 | - Monitor Applications
7 | - Monitor Cluster Components Logs
8 | - Application Logs
9 |
--------------------------------------------------------------------------------
/docs/04-Logging-and-Monitoring/03-Practice-Test-Monitor-Cluster-Components.md:
--------------------------------------------------------------------------------
1 | # Practice Test - Monitor Cluster Components
2 | - Take me to [Practice Test](https://kodekloud.com/courses/539883/lectures/9816628)
3 |
4 | Solutions to practice test - monitor cluster components
5 | - We have deployed a few PODs running workloads. Inspect it.
6 |
7 |
8 |
9 | ```
10 | $ kubectl get pods
11 | ```
12 |
13 |
14 | - Let us deploy metrics-server to monitor the PODs and Nodes. Pull the git repository for the deployment files.
15 |
16 |
17 |
18 | ```
19 | $ git clone https://github.com/kodekloudhub/kubernetes-metrics-server.git
20 | ```
21 |
22 |
23 | - Run the 'kubectl create -f .' command from within the downloaded repository.
24 |
25 |
26 | ```
27 | $ cd kubernetes-metrics-server
28 | $ kubectl create -f .
29 | ```
30 |
31 |
32 | - Run the 'kubectl top node' command and wait for a valid output.
33 |
34 |
35 | ```
36 | $ kubectl top node
37 | ```
38 |
39 |
40 | - Run the 'kubectl top node' command
41 |
42 |
43 | ```
44 | $ kubectl top node
45 | ```
46 |
47 |
48 | - Run the 'kubectl top node' command
49 |
50 |
51 | ```
52 | $ kubectl top node
53 | ```
54 |
55 |
56 | - Run the 'kubectl top pod' command
57 |
58 |
59 | ```
60 | $ kubectl top pod
61 | ```
62 |
63 |
64 | - Run the 'kubectl top pod' command
65 |
66 |
67 | ```
68 | $ kubectl top pod
69 | ```
70 |
71 |
72 | #### Take me to [Practice Test - Solutions](https://kodekloud.com/courses/certified-kubernetes-administrator-with-practice-tests/lectures/13290102)
73 |
--------------------------------------------------------------------------------
/docs/04-Logging-and-Monitoring/04-Managing-Application-Logs.md:
--------------------------------------------------------------------------------
1 | # Managing Application Logs
2 | - Take me to [Video Tutorial](https://kodekloud.com/courses/539883/lectures/9808184)
3 |
4 | In this section, we will take a look at managing application logs
5 |
6 | #### Let us start with logging in docker
7 |
8 | 
9 |
10 | 
11 |
12 | #### Logs - Kubernetes
13 | ```
14 | apiVersion: v1
15 | kind: Pod
16 | metadata:
17 | name: event-simulator-pod
18 | spec:
19 | containers:
20 | - name: event-simulator
21 | image: kodekloud/event-simulator
22 | ```
23 | 
24 |
25 | - To view the logs
26 | ```
27 | $ kubectl logs -f event-simulator-pod
28 | ```
29 | - If there are multiple containers in a pod then you must specify the name of the container explicitly in the command.
30 | ```
31 | $ kubectl logs -f
32 | $ kubeclt logs -f even-simulator-pod event-simulator
33 | ```
34 |
35 | 
36 |
37 | #### K8s Reference Docs
38 | - https://kubernetes.io/blog/2015/06/cluster-level-logging-with-kubernetes/
39 |
40 |
--------------------------------------------------------------------------------
/docs/04-Logging-and-Monitoring/05-Download-Presentation-Deck.md:
--------------------------------------------------------------------------------
1 | # Download Presentation Deck
2 | - Take me to [Presentation Deck](https://kodekloud.com/courses/certified-kubernetes-administrator-with-practice-tests/lectures/16024220)
3 |
--------------------------------------------------------------------------------
/docs/04-Logging-and-Monitoring/06-Practice-Test-Managing-Application-Logs.md:
--------------------------------------------------------------------------------
1 | # Practice Test - Managing Application Logs
2 | - Take me to [Practice Test](https://kodekloud.com/courses/539883/lectures/9816636)
3 |
4 | Solutions to practice test - managing application logs
5 | - We have deployed a POD hosting an application. Inspect it. Wait for it to start.
6 |
7 |
8 | ```
9 | $ kubectl get pods
10 | ```
11 |
12 |
13 | - Inspect the logs of the POD
14 |
15 |
16 | ```
17 | $ kubectl logs webapp-1
18 | ```
19 |
20 |
21 | - We have deployed a new POD - 'webapp-2' - hosting an application. Inspect it. Wait for it to start.
22 |
23 |
24 | ```
25 | $ kubectl get pods
26 | ```
27 |
28 |
29 | - Inspect the logs of the webapp in the POD
30 |
31 |
32 | ```
33 | $ kubectl logs webapp-2
34 | ```
35 |
36 |
37 |
38 |
39 | #### Take me to [Practice Test - Solutions](https://kodekloud.com/courses/certified-kubernetes-administrator-with-practice-tests/lectures/13291091)
40 |
--------------------------------------------------------------------------------
/docs/05-Application-Lifecycle-Management/01-Application-Lifecycle-Management--Section-Introduction.md:
--------------------------------------------------------------------------------
1 | # Application Lifecycle Management Section Introduction
2 | - Take me to [Video Tutorial](https://kodekloud.com/courses/539883/lectures/9808200)
3 |
4 | In this section, we will take a look at application lifecycle management
5 | - Rolling Updates and Rollbacks in Deployments
6 | - Configure Applications
7 | - Scale Applications
8 | - Self-Healing Application
9 |
10 |
--------------------------------------------------------------------------------
/docs/05-Application-Lifecycle-Management/05-Commands-and-Arguments-in-Kubernetes.md:
--------------------------------------------------------------------------------
1 | # Commands and Arguments in Kubernetes
2 | - Take me to [Video Tutorial](https://kodekloud.com/courses/539883/lectures/9808202)
3 |
4 | In this section, we will take a look at commands and arguments in kubernetes
5 |
6 | - Anything that is appended to the docker run command will go into the **`args`** property of the pod defination file in the form of an array.
7 | - The command field corresponds to the entrypoint instruction in the Dockerfile so to summarize there are 2 fields that correspond to 2 instructions in the Dockerfile.
8 | ```
9 | apiVersion: v1
10 | kind: Pod
11 | metadata:
12 | name: ubuntu-sleeper-pod
13 | spec:
14 | containers:
15 | - name: ubuntu-sleeper
16 | image: ubuntu-sleeper
17 | command: ["sleep2.0"]
18 | args: ["10"]
19 | ```
20 | 
21 |
22 | #### K8s Reference Docs
23 | - https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/
24 |
--------------------------------------------------------------------------------
/docs/05-Application-Lifecycle-Management/06-Practice-Test-Commands-and-Arguments.md:
--------------------------------------------------------------------------------
1 | # Practice Test - Commands and Arguments
2 | - Take me to [Practice Test](https://kodekloud.com/courses/539883/lectures/9816639)
3 |
4 | Solutions to practice test - commands and arguments
5 | - Run the command 'kubectl get pods' and count the number of pods.
6 |
7 |
8 |
9 | ```
10 | $ kubectl get pods
11 | ```
12 |
13 |
14 | - Run the command 'kubectl describe pod' and look for command option
15 |
16 |
17 |
18 | ```
19 | $ kubectl describe pod
20 | ```
21 |
22 |
23 | - Set the command option to ['sleep', '5000']. Answer file at: /var/answers/answer-ubuntu-sleeper-2.yaml
24 |
25 | - Both sleep and 1200 should be defined as a string. Answer file at: /var/answers/answer-ubuntu-sleeper-3.yaml
26 |
27 | - Answer file at: /var/answers/answer-ubuntu-sleeper-3-2.yaml
28 |
29 | - Inspect the file 'Dockerfile' given at /root/webapp-color. What command is run at container startup?
30 |
31 |
32 |
33 | ```
34 | python app.py
35 | ```
36 |
37 |
38 | - Inspect the file 'Dockerfile2' given at /root/webapp-color. What command is run at container startup?
39 |
40 |
41 | ```
42 | python app.py --color red
43 | ```
44 |
45 |
46 | - The 'command' (entrypoint) is overridden in the pod definition. So the answer is --color green
47 |
48 | - Inspect the two files under directory 'webapp-color-3'. What command is run at container startup?
49 |
50 |
51 |
52 | ```
53 | python app.py --color pink
54 | ```
55 |
56 |
57 | - Answer file located at /var/answers/answer-webapp-color-green.yaml
58 |
--------------------------------------------------------------------------------
/docs/05-Application-Lifecycle-Management/07.Configure-Environment-Variables-in-Applications.md:
--------------------------------------------------------------------------------
1 | # Configure Environment Variables In Applications
2 | - Take me to [Video Tutorial](https://kodekloud.com/courses/539883/lectures/10589125)
3 |
4 | #### ENV variables in Docker
5 | ```
6 | $ docker run -e APP_COLOR=pink simple-webapp-color
7 | ```
8 |
9 | #### ENV variables in kubernetes
10 | - To set an environment variable set an **`env`** property in pod defination file.
11 |
12 | ```
13 | apiVersion: v1
14 | kind: Pod
15 | metadata:
16 | name: simple-webapp-color
17 | spec:
18 | containers:
19 | - name: simple-webapp-color
20 | image: simple-webapp-color
21 | ports:
22 | - containerPort: 8080
23 | env:
24 | - name: APP_COLOR
25 | value: pink
26 | ```
27 | 
28 |
29 | - There are other ways of setting the environment variables such as **`ConfigMaps`** and **`Secrets`**
30 |
31 | 
32 |
33 | #### K8s Reference Docs
34 | - https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-container/
35 |
--------------------------------------------------------------------------------
/docs/05-Application-Lifecycle-Management/11.Practice-Test-Secrets.md:
--------------------------------------------------------------------------------
1 | # Practice Test - Secrets
2 | - Take me to [Practice Test](https://kodekloud.com/courses/539883/lectures/9816645)
3 |
4 | Solutions for pracice test - Secrets
5 | - Run the command 'kubectl get secrets' and count the number of pods.
6 |
7 |
8 | ```
9 | $ kubectl get secrets
10 | ```
11 |
12 |
13 | - Run the command 'kubectl get secrets' and look at the DATA field
14 |
15 |
16 | ```
17 | $ kubectl get secrets
18 | ```
19 |
20 |
21 | - Run the command 'kubectl describe secret'
22 |
23 |
24 | ```
25 | $ kubectl describe secret
26 | ```
27 |
28 |
29 | - Run the command 'kubectl describe secret'
30 |
31 |
32 | ```
33 | $ kubectl describe secret
34 | ```
35 |
36 |
37 | - We have already deployed the required pods and services. Check out the pods and services created. Check out the web application using the 'Webapp MySQL' link above your terminal, next to the Quiz Portal Link.
38 |
39 | - Run command kubectl create secret generic db-secret --from-literal=DB_Host=sql01 --from-literal=DBUser=root --from-literal=DB_Password=password123
40 |
41 |
42 | ```
43 | $ kubectl create secret generic db-secret --from-literal=DB_Host=sql01 --from-literal=DB_User=root --from-literal=DB_Password=password123
44 | ```
45 |
46 |
47 | - Check Answer at /var/answers/answer-webapp.yaml
48 |
49 |
50 | ```
51 | $ kubectl get pod webapp-pod -o yaml > web.yaml
52 | $ kubectl delete pod webapp-pod
53 | ```
54 |
55 |
56 | Update web.yaml with secret section
57 |
58 | envFrom:
59 | - secretRef:
60 | name: db-secret
61 |
62 |
63 | ```
64 | $ kubectl create -f web.yaml
65 | ```
66 |
67 |
68 | - View the web application to verify it can successfully connect to the database
69 |
70 |
71 |
72 |
73 |
--------------------------------------------------------------------------------
/docs/05-Application-Lifecycle-Management/12.Multi-Containers-PODs.md:
--------------------------------------------------------------------------------
1 | # Multi-Container Pods
2 | - Take me to [Video Tutorial](https://kodekloud.com/courses/539883/lectures/10589155)
3 |
4 | In this section, we will take a look at multi-container pods
5 |
6 | ## Monolith and Microservices
7 | - The idea of decoupling a large monolithic application into subcomponents known as micro services enables us to develop and deploy a set of independent small and reusable code. This architecture can then help us scale up down as well as modify each service as required as opposed to modifying the entire application.
8 | - However at times you may need 2 services to work together such as a web server and a logging service. You need one agent instance per web server instance paired together.
9 |
10 | 
11 |
12 | #### Multi-Container Pods
13 | - Multi-container pods that share the same lifecycle which means they are created together and destroyed together.
14 | - They share the same network space which means they can refer to each other as localhost and they have access to the same storage volumes.
15 | - This way you do not have to establish volume sharing or services between the pods to enable communication between them.
16 |
17 | 
18 |
19 | - To create a new multi-container pod, add the new container information to the pod defination file.
20 | ```
21 | apiVersion: v1
22 | kind: Pod
23 | metadata:
24 | name: simple-webapp
25 | labels:
26 | name: simple-webapp
27 | spec:
28 | containers:
29 | - name: simple-webapp
30 | image: simple-webapp
31 | ports:
32 | - ContainerPort: 8080
33 | - name: log-agent
34 | image: log-agent
35 | ```
36 | 
37 |
38 | #### K8s Reference Docs
39 | - https://kubernetes.io/docs/tasks/access-application-cluster/communicate-containers-same-pod-shared-volume/
40 |
--------------------------------------------------------------------------------
/docs/05-Application-Lifecycle-Management/13-Practice-Test-Multi-Container-Pods.md:
--------------------------------------------------------------------------------
1 | # Practice Test - Multi-Container Pods
2 | - Take me to [Practice Test](https://kodekloud.com/courses/539883/lectures/10589159)
3 |
4 | Solutions to practice test - multi-container pods
5 | - Identify the number of containers running in the 'red' pod.
6 |
7 |
8 |
9 | ```
10 | $ kubectl get pod red
11 | ```
12 |
13 |
14 | - Identify the name of the containers running in the 'blue' pod.
15 |
16 |
17 | ```
18 | $ kubectl describe pod blue
19 | ```
20 |
21 |
22 | - Answer file is located at /var/answers/answer-yellow.yaml
23 |
24 |
25 | ```
26 | $ kubectl create -f /var/answers/answer-yellow.yaml
27 | ```
28 |
29 |
30 | - We have deployed an application logging stack in the elastic-stack namespace. Inspect it.
31 |
32 |
33 | ```
34 | $ kubectl get pods -n elastic-stack
35 | ```
36 |
37 |
38 | - Inspect the Kibana UI using the link above your terminal. There shouldn't be any logs for now.
39 |
40 | - Run `kubectl describe pod -n elastic-stack`
41 |
42 |
43 | ```
44 | $ kubectl describe pod -n elastic-stack
45 | ```
46 |
47 |
48 | - Run the command 'kubectl -n elastic-stack exec -it app cat /log/app.log'
49 |
50 |
51 | ```
52 | $ kubectl -n elastic-stack exec -it app cat /log/app.log
53 | ```
54 |
55 |
56 | - Answer file is located at /var/answers/answer-app.yaml
57 |
58 | - Inspect the Kibana UI. You should now see logs appearing in the 'Discover' section. You might have to wait for a couple of minutes for the logs to populate. You might have to create an index pattern to list the logs. If not sure check this video: https://bit.ly/2EXYdHf
59 |
60 |
--------------------------------------------------------------------------------
/docs/05-Application-Lifecycle-Management/14-Multi-Container-Pods-Design-Patterns.md:
--------------------------------------------------------------------------------
1 | # Multi-Container Pods Design Patterns
2 | - Take me to [Tutorial](https://kodekloud.com/courses/certified-kubernetes-administrator-with-practice-tests/lectures/10589174)
3 |
4 | 
5 |
6 | #### K8s Reference Docs
7 | - https://kubernetes.io/blog/2015/06/the-distributed-system-toolkit-patterns/
8 |
--------------------------------------------------------------------------------
/docs/05-Application-Lifecycle-Management/15.Init-Containers.md:
--------------------------------------------------------------------------------
1 | # Init-Containers
2 | - Take me to [Init-Containers Tutorial](https://kodekloud.com/courses/539883/lectures/10589187)
3 |
4 | #### K8s Reference Docs
5 | - https://kubernetes.io/docs/concepts/workloads/pods/init-containers/
6 | - https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-initialization/
7 |
--------------------------------------------------------------------------------
/docs/05-Application-Lifecycle-Management/17.Self-Healing-Applications.md:
--------------------------------------------------------------------------------
1 | # Self Healing Applications
2 | - Take me to [Tutorial](https://kodekloud.com/courses/certified-kubernetes-administrator-with-practice-tests/lectures/10589198)
3 |
--------------------------------------------------------------------------------
/docs/05-Application-Lifecycle-Management/18.Download-Presentation-Deck.md:
--------------------------------------------------------------------------------
1 | # Download Presentation Deck
2 | - Take me to [Presentation Deck](https://kodekloud.com/courses/certified-kubernetes-administrator-with-practice-tests/lectures/16092691)
3 |
--------------------------------------------------------------------------------
/docs/06-Cluster-Maintenance/01-Cluster-Maintenance-Section-Introduction.md:
--------------------------------------------------------------------------------
1 | # Cluster Maintenance Section Introduction
2 | - Take me to [Video Tutorial](https://kodekloud.com/courses/539883/lectures/9808231)
3 |
4 | In this section, we will take a look at cluster maintenance
5 | - Cluster Upgrade Process
6 | - Operating System Upgrades
7 | - Backup and Restore Methodologies
8 |
--------------------------------------------------------------------------------
/docs/06-Cluster-Maintenance/02-OS-Upgrades.md:
--------------------------------------------------------------------------------
1 | # OS Upgrades
2 | - Take me to [Video Tutorial](https://kodekloud.com/courses/539883/lectures/9808229)
3 |
4 | In this section, we will take a look at os upgrades.
5 | - We wull discuss about scenarios where you might have to take down node as part of your cluster for maintenance purposes like upgrading a base software or applying patches like security patches etc.
6 |
7 | #### If the node was down for more than 5 minutes, then the pods are terminated from that node
8 | - If the pods where part of a replicaset then they are recreated on other nodes.
9 | - The time it waits for a pod to come back online is known as the **`pod eviction timeout`** and is set on the controller manager with a default value of 5 minutes.
10 |
11 | 
12 |
13 | - When the node comes online after the pod eviction timeout it comes up blank without any pods scheduled on it.
14 | - Thus, if you have maintenance tasks to be performed on a node if you know that the workloads running on the node have other replicas and if it's okay that they go down for a short period of time and if you're sure the node will come back online within 5 minutes you make a quick upgrade and reboot. But you are not sure if a node is going to be back online in 5 mintues.
15 | - You can purposefully **`drain`** the node of all the workloads so that the workloads are moved to other nodes.
16 | - Well technically they are not moved. When you drain the node the pods are gracefully terminated from the node that they're on and recreated on another.
17 | ```
18 | $ kubectl drain node-1
19 | ```
20 | - The node is also cordoned or marked as unschedulable.
21 | - When the node is back online after a maintenance, it is still unschedulable. You then need to uncordorn it.
22 | ```
23 | $ kubectl uncordorn node-1
24 | ```
25 | - There is also another command called cordorn. Cordorn simply marks a node unschedulable. Unlike drain it does not terminate or move the pods on an existing node.
26 |
27 | 
28 |
29 |
30 | #### K8s Reference Docs
31 | - https://kubernetes.io/docs/tasks/administer-cluster/safely-drain-node/
32 |
--------------------------------------------------------------------------------
/docs/06-Cluster-Maintenance/04-Kubernetes-Software-Versions.md:
--------------------------------------------------------------------------------
1 | # Kubernetes Software Versions
2 | - Take me to [Video Tutorial](https://kodekloud.com/courses/539883/lectures/9808230)
3 |
4 | In this section, we will take a look at various kubernetes releases and versions
5 |
6 | #### We can see the kubernetess version that we installed
7 | ```
8 | $ kubectl get nodes
9 | ```
10 | 
11 |
12 | #### Let's take a closer look at the version number
13 | - It consists of 3 parts
14 | - First is the major version
15 | - Second is the minior version
16 | - Finally, the patch version
17 |
18 | 
19 |
20 | #### Kubernetes follows a standard software release versioning procedure
21 | - You can find all kubernetes releases at https://github.com/kubernetes/kubernetes/releases
22 |
23 | 
24 |
25 | 
26 |
27 | #### Downloaded package has all the kubernetes components in it except **`ETCD Cluster`** and **`CoreDNS`** as they are seperate projects.
28 |
29 | 
30 |
31 | #### References
32 |
33 | - https://github.com/kubernetes/community/blob/master/contributors/design-proposals/release/versioning.md
34 | - https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
35 | - https://blog.risingstack.com/the-history-of-kubernetes/
36 | - https://kubernetes.io/docs/setup/release/version-skew-policy/
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
--------------------------------------------------------------------------------
/docs/06-Cluster-Maintenance/08-Working-With-ETCDCTL.md:
--------------------------------------------------------------------------------
1 | # Working with ETCDCTL
2 | - Take me [Tutorial](https://kodekloud.com/courses/539883/lectures/14793320)
3 |
4 |
--------------------------------------------------------------------------------
/docs/06-Cluster-Maintenance/10-Download-Presentation-Deck.md:
--------------------------------------------------------------------------------
1 | # Download Presentation Deck
2 | - Take me to [Presentation Deck](https://kodekloud.com/courses/certified-kubernetes-administrator-with-practice-tests/lectures/16092815)
3 |
--------------------------------------------------------------------------------
/docs/07-Security/01-Security-Section-Introduction.md:
--------------------------------------------------------------------------------
1 | # Security Section Introduction
2 | - Take me to [Video Tutorial](https://kodekloud.com/courses/539883/lectures/9808249)
3 |
4 | In this section, we will take a look at security section introduction
5 | - Kubernetes Security Primitives
6 | - Authentication
7 | - TLS certificates for cluster components
8 | - Secure Persistent key-value store
9 | - Authorization
10 | - Images Security
11 | - Security Contexts
12 | - Network Policies
13 |
--------------------------------------------------------------------------------
/docs/07-Security/02-Kubernetes-Security-Primitives.md:
--------------------------------------------------------------------------------
1 | # Kubernetes Security Primitives
2 | - Take me to [Video Tutorial](https://kodekloud.com/courses/539883/lectures/9808248)
3 |
4 | In this section, we will take a look at kubernetes security primitives
5 |
6 | ## Secure Hosts
7 | - Of course all access to these hosts must be secured, root access disabled, password based authentication disabled and only ssh key based authentication to be made available.
8 | - And any other measures you need to take to secure your physical or virtual infrastructure that hosts kubernetes.
9 |
10 | 
11 |
12 | ## Secure Kubernetes
13 | - Controlling access to the kube-apiserver.
14 | - We need to make two types of decisions.
15 | - Who can access?
16 | - What can they do?
17 |
18 | 
19 |
20 | ## Authentication
21 | - Who can access the API Server is defined by the Authentication mechanisms.
22 | - There are different ways that you can authenticate to the API Server.
23 | - User IDs and Passwords in static files
24 | - Username and Tokens
25 | - Certificates
26 | - Integration with External Authentication providers like LDAP.
27 | - Finally, for machines we create service accounts
28 |
29 | ## Authorization
30 | - Once they gain access to the cluster, what they can do is defined by authorization mechanisms.
31 | - Authorization is implemented using Role Based Access Control (RBAC).
32 | - In addition, there are other authorization modules like Attribute based access control (ABAC), Node Authorizers, webhook etc.
33 |
34 | ## TLS Certificates
35 | - All communication with the cluster, between the various components such as the ETCD Cluster, kube-controller-manager, scheduler, api server, as well as those running on the working nodes such as the kubelet and kubeproxy is secured using TLS encryption.
36 |
37 | 
38 |
39 | ## Network Policies
40 | What about communication between applications within the cluster?
41 | - By default all PODS can access all other PODs within the cluster.
42 | - You can restrict access between then using Network Policies.
43 |
44 | 
45 |
46 |
--------------------------------------------------------------------------------
/docs/07-Security/04-TLS-Certificates.md:
--------------------------------------------------------------------------------
1 | # TLS Certificates
2 | - Take me to [Video Tutorial](https://kodekloud.com/courses/539883/lectures/9808262)
3 |
4 | In this section, we will take a look at TLS certificates
5 | - What are TLS certificates?
6 | - How does kubernetes use certificates?
7 | - How to generate them?
8 | - How to configure them?
9 | - How to view them?
10 | - How to troubleshoot issues related to certificates
11 |
--------------------------------------------------------------------------------
/docs/07-Security/05-TLS-Basics.md:
--------------------------------------------------------------------------------
1 | # TLS Basics
2 | - Take me to [Video Tutorial](https://kodekloud.com/courses/539883/lectures/9808254)
3 |
4 | In this section, we will take a look at TLS Basics
5 |
6 | ## Certificate
7 | - A certificate is used to gurantee trust between 2 parties during a transaction.
8 | - Example: when a user tries to access web server, tls certificates ensure that the communication between them is encrypted.
9 |
10 | 
11 |
12 |
13 | ## Symmetric Encryption
14 | - It is a secure way of encryption, but it uses the same key to encrypt and decrypt the data and the key has to be exchanged between the sender and the receiver, there is a risk of a hacker gaining access to the key and decrypting the data.
15 |
16 | 
17 |
18 | ## Asymmetric Encryption
19 | - Instead of using single key to encrpyt and decrypt data, asymmetric encryption uses a pair of keys, a private key and a public key.
20 |
21 | 
22 |
23 | 
24 |
25 | 
26 |
27 | 
28 |
29 |
30 | #### How do you look at a certificate and verify if it is legit?
31 | - who signed and issued the certificate.
32 | - If you generate the certificate then you will have it sign it by yourself, that is known as self-signed certificate.
33 |
34 | 
35 |
36 | #### How do you generate legitimate certificate? How do you get your certificates singed by someone with authority?
37 | - That's where **`Certificate Authority (CA)`** comes in for you. some of the popular ones are symantic, DigiCert, Comodo, GlobalSign etc.
38 |
39 | 
40 |
41 | 
42 |
43 | 
44 |
45 | ## Public Key Infrastructure
46 |
47 | 
48 |
49 | ## Certificates naming convention
50 |
51 | 
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
--------------------------------------------------------------------------------
/docs/07-Security/06-TLS-in-Kubernetes.md:
--------------------------------------------------------------------------------
1 | # TLS in Kubernetes
2 | - Take me to [Video Tutorial](https://kodekloud.com/courses/539883/lectures/9808256)
3 |
4 | In this section, we will take a look at TLS in kubernetes
5 |
6 | #### The two primary requirements are to have all the various services within the cluster to user server certificates and all clients to use client certificates to verify they are who they say they are.
7 | - Server Certificates for Servers
8 | - Client Certificates for Clients
9 |
10 | 
11 |
12 | #### Let's look at the different components within the k8s cluster and identify the various servers and clients and who talks to who.
13 |
14 | 
15 |
16 |
--------------------------------------------------------------------------------
/docs/07-Security/07-TLS-in-Kubernetes-Certificate-Creation.md:
--------------------------------------------------------------------------------
1 | # TLS in kubernetes - Certificate Creation
2 | - Take me to [Video Tutorial](https://kodekloud.com/courses/539883/lectures/9808252)
3 |
4 | In this section, we will take a look at TLS certificate creation in kubernetes
5 |
6 | ## Generate Certificates
7 | - There are different tools available such as easyrsa, openssl or cfssl etc. or many others for generating certificates.
8 |
9 | ## Certificate Authority (CA)
10 |
11 | - Generate Keys
12 | ```
13 | $ openssl genrsa -out ca.key 2048
14 | ```
15 | - Generate CSR
16 | ```
17 | $ openssl req -new -key ca.key -subj "/CN=KUBERNETES-CA" -out ca.csr
18 | ```
19 | - Sign certificates
20 | ```
21 | $ openssl x509 -req -in ca.csr -signkey ca.key -out ca.crt
22 | ```
23 |
24 | 
25 |
26 | ## Generating Client Certificates
27 |
28 | #### Admin User Certificates
29 |
30 | - Generate Keys
31 | ```
32 | $ openssl genrsa -out admin.key 2048
33 | ```
34 | - Generate CSR
35 | ```
36 | $ openssl req -new -key admin.key -subj "/CN=kube-admin" -out admin.csr
37 | ```
38 | - Sign certificates
39 | ```
40 | $ openssl x509 -req -in admin.csr -CA ca.crt -CAkey ca.key -out admin.crt
41 | ```
42 |
43 | 
44 |
45 | - Certificate with admin privilages
46 | ```
47 | $ openssl req -new -key admin.key -subj "/CN=kube-admin/O=system:masters" -out admin.csr
48 | ```
49 |
50 | #### We follow the same procedure to generate client certificate for all other components that access the kube-apiserver.
51 |
52 | 
53 |
54 | 
55 |
56 | 
57 |
58 | 
59 |
60 | ## Generating Server Certificates
61 |
62 | ## ETCD Server certificate
63 |
64 | 
65 |
66 | 
67 |
68 | ## Kube-apiserver certificate
69 |
70 | 
71 |
72 | 
73 |
74 | ## Kubectl Nodes (Server Cert)
75 |
76 | 
77 |
78 | ## Kubectl Nodes (Client Cert)
79 |
80 | 
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
--------------------------------------------------------------------------------
/docs/07-Security/08-View-Certificate-Details.md:
--------------------------------------------------------------------------------
1 | # View Certificate Details
2 | - Take me to [Video Tutorial](https://kodekloud.com/courses/539883/lectures/9808260)
3 |
4 | In this section, we will take a look how to view certificates in a kubernetes cluster.
5 |
6 | ## View Certs
7 | 
8 |
9 | 
10 |
11 | - To view the details of the certificate
12 | ```
13 | $ openssl x509 -in /etc/kubernetes/pki/apiserver.crt -text -noout
14 | ```
15 |
16 | 
17 |
18 | #### Follow the same procedure to identify information about of all the other certificates
19 |
20 | 
21 |
22 | ## Inspect Server Logs - Hardware setup
23 | - Inspect server logs using journalctl
24 | ```
25 | $ journalctl -u etcd.service -l
26 | ```
27 |
28 | 
29 |
30 | ## Inspect Server Logs - kubeadm setup
31 | - View logs using kubectl
32 | ```
33 | $ kubectl logs etcd-master
34 | ```
35 | 
36 |
37 | - View logs using docker ps and docker logs
38 | ```
39 | $ docker ps -a
40 | $ docker logs
41 | ```
42 | 
43 |
44 | #### K8s Reference Docs
45 | - https://kubernetes.io/docs/setup/best-practices/certificates/#certificate-paths
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
--------------------------------------------------------------------------------
/docs/07-Security/09-Certificate-Health-Check-Spreadsheet.md:
--------------------------------------------------------------------------------
1 | # Certificate Health-Check Spreadsheet
2 | - Take me to [Spreedsheet](https://kodekloud.com/courses/539883/lectures/11777973)
3 |
4 |
--------------------------------------------------------------------------------
/docs/07-Security/12-Practice-Test-Certificates-API.md:
--------------------------------------------------------------------------------
1 | # Practice Test - Certificates API
2 | - Take me to [Practice Test](https://kodekloud.com/courses/539883/lectures/9816667)
3 |
4 | Solutions to the practice test - certificate API
5 | - A new member akshay joined our team. He requires access to our cluster. The Certificate Signing Request is at the /root location.
6 |
7 |
8 | ```
9 | $ ls -l /root
10 | ```
11 |
12 |
13 | - View the answer at /var/answers/akshay-csr.yaml
14 |
15 |
16 | ```
17 | $ kubectl create -f /var/answers/akshay-csr.yaml
18 | ```
19 |
20 |
21 | - Run the command kubectl get csr
22 |
23 |
24 | ```
25 | $ kubectl get csr
26 | ```
27 |
28 |
29 | - Run the command kubectl certificate approve akshay
30 |
31 |
32 | ```
33 | $ kubectl certificate approve akshay
34 | ```
35 |
36 |
37 | - Run the command kubectl get csr
38 |
39 |
40 | ```
41 | $ kubectl get csr
42 | ```
43 |
44 |
45 | - Run the command kubectl get csr and look at the Requestor column
46 |
47 |
48 | ```
49 | $ kubectl get csr
50 | ```
51 |
52 |
53 | - The other CSR's are requested during the TLS Bootstrapping process. We will discuss more about it later in the course when we go through the TLS bootstrap section.
54 |
55 | - Run the command kubectl get csr
56 |
57 |
58 | ```
59 | $ kubectl get csr
60 | ```
61 |
62 |
63 | - Run the command kubectl get csr agent-smith -o yaml
64 |
65 |
66 | ```
67 | $ kubectl get csr agent-smith -o yaml
68 | ```
69 |
70 |
71 | - Run the command kubectl certificate deny agent-smith
72 |
73 |
74 | ```
75 | $ kubectl certificate deny agent-smith
76 | ```
77 |
78 |
79 | - Run the command kubectl delete csr agent-smith
80 |
81 |
82 | ```
83 | $ kubectl delete csr agent-smith
84 | ```
85 |
86 |
87 |
--------------------------------------------------------------------------------
/docs/07-Security/15-API-Groups.md:
--------------------------------------------------------------------------------
1 | # API Groups
2 | - Take me to [Video Tutorial](https://kodekloud.com/courses/539883/lectures/9808255)
3 |
4 | In this section, we will take a look at API Groups in kubernetes
5 |
6 | ## To return version and list pods via API's
7 |
8 | 
9 |
10 | - The kubernetes API is grouped into multiple such groups based on thier purpose. Such as one for **`APIs`**, one for **`healthz`**, **`metrics`** and **`logs`** etc.
11 |
12 | 
13 |
14 | ## API and APIs
15 | - These APIs are catagorized into two.
16 | - The core group - Where all the functionality exists
17 |
18 | 
19 |
20 | - The Named group - More organized and going forward all the newer features are going to be made available to these named groups.
21 |
22 | 
23 |
24 | - To list all the api groups
25 |
26 | 
27 |
28 | ## Note on accessing the kube-apiserver
29 | - You have to authenticate by passing the certificate files.
30 |
31 | 
32 |
33 | - An alternate is to start a **`kubeproxy`** client
34 |
35 | 
36 |
37 | ## kube proxy vs kubectl proxy
38 |
39 | 
40 |
41 | ## Key Takeaways
42 |
43 | 
44 |
45 | #### K8s Reference Docs
46 | - https://kubernetes.io/docs/concepts/overview/kubernetes-api/
47 | - https://kubernetes.io/docs/reference/using-api/api-concepts/
48 | - https://kubernetes.io/docs/tasks/extend-kubernetes/http-proxy-access-api/
49 |
--------------------------------------------------------------------------------
/docs/07-Security/20-Practice-Test-Cluster-Roles.md:
--------------------------------------------------------------------------------
1 | # Practice Test - Cluster Roles
2 | - Take me to [Practice Test](https://kodekloud.com/courses/539883/lectures/9816671)
3 |
4 | Solutions to practice test - cluster roles
5 | - Run the command kubectl get clusterroles --no-headers | wc -l or kubectl get clusterroles --no-headers -o json | jq '.items | length'
6 |
7 |
8 |
9 | ```
10 | $ kubectl get clusterroles --no-headers | wc -l (or)
11 | $ kubectl get clusterroles --no-headers -o json | jq '.items | length'
12 | ```
13 |
14 |
15 |
16 | - Run the command kubectl get clusterrolebindings --no-headers | wc -l or kubectl get clusterrolebindings --no-headers -o json | jq '.items | length'
17 |
18 |
19 |
20 | ```
21 | $ kubectl get clusterrolebindings --no-headers | wc -l (or)
22 | $ kubectl get clusterrolebindings --no-headers -o json | jq '.items | length'
23 | ```
24 |
25 |
26 |
27 | - What namespace is the cluster-admin clusterrole part of?
28 |
29 |
30 |
31 | ```
32 | $ Cluster roles are cluster wide and not part of any namespace
33 | ```
34 |
35 |
36 |
37 | - Run the command kubectl describe clusterrolebinding cluster-admin
38 |
39 |
40 |
41 | ```
42 | $ kubectl describe clusterrolebinding cluster-admin
43 | ```
44 |
45 |
46 |
47 | - Run the command kubectl describe clusterrole cluster-admin
48 |
49 |
50 |
51 | ```
52 | $ kubectl describe clusterrole cluster-admin
53 | ```
54 |
55 |
56 |
57 | - Check answer at /var/answers
58 |
59 |
60 |
61 | ```
62 | $ kubectl create -f /var/answers/michelle-node-admin.yaml
63 | ```
64 |
65 |
66 |
67 | - Check answer at /var/answers
68 |
69 |
70 |
71 | ```
72 | $ kubectl create -f /var/answers/michelle-storage-admin.yaml
73 | ```
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
--------------------------------------------------------------------------------
/docs/07-Security/21-Image-Security.md:
--------------------------------------------------------------------------------
1 | # Image Security
2 | - Take me to [Video Tutorial](https://kodekloud.com/courses/539883/lectures/9808251)
3 |
4 | In this section we will take a look at image security
5 |
6 | # Image
7 |
8 | ```
9 | apiVersion: v1
10 | kind: Pod
11 | metadata:
12 | name: nginx-pod
13 | spec:
14 | containers:
15 | - name: nginx
16 | image: nginx
17 | ```
18 |
19 | 
20 |
21 | 
22 |
23 | # Private Registry
24 | - To login to the registry
25 | ```
26 | $ docker login private-registry.io
27 | ```
28 | - Run the application using the image available at the private registry
29 | ```
30 | $ docker run private-registry.io/apps/internal-app
31 | ```
32 |
33 | 
34 |
35 | - To pass the credentials to the docker untaged on the worker node for that we first create a secret object with credentials in it.
36 | ```
37 | $ kubectl create secret docker-registry regcred \
38 | --docker-server=private-registry.io \
39 | --docker-username=registry-user \
40 | --docker-password=registry-password \
41 | --docker-email=registry-user@org.com
42 | ```
43 | - We then specify the secret inside our pod defination file under the imagePullSecret section
44 | ```
45 | apiVersion: v1
46 | kind: Pod
47 | metadata:
48 | name: nginx-pod
49 | spec:
50 | containers:
51 | - name: nginx
52 | image: private-registry.io/apps/internal-app
53 | imagePullSecrets:
54 | - name: regcred
55 | ```
56 | 
57 |
58 | #### K8s Reference Docs
59 | - https://kubernetes.io/docs/concepts/containers/images/
60 |
--------------------------------------------------------------------------------
/docs/07-Security/22-Practice-Test-Image-Security.md:
--------------------------------------------------------------------------------
1 | # Practice Test - Image Security
2 | - Take me to [Practice Test](https://kodekloud.com/courses/539883/lectures/9816673)
3 |
4 | Solutions to the practice test - Image Security
5 | - We have an application running on our cluster. Let us explore it first. What image is the application using?
6 |
7 |
8 |
9 | ```
10 | $ kubectl get deploy -o wide
11 | ```
12 |
13 |
14 |
15 | - Use the kubectl edit deployment command to edit the image name to myprivateregistry.com:5000/nginx:alpine
16 |
17 |
18 |
19 | ```
20 | $ kubectl edit deployment web
21 | ```
22 |
23 |
24 |
25 | - Run the command kubectl get pods command and check the status of the pods
26 |
27 |
28 |
29 | ```
30 | $ kubectl get pods
31 | ```
32 |
33 |
34 |
35 | - Run command kubectl create secret docker-registry private-reg-cred --docker-username=dock_user --docker-password=dock_password --docker-server=myprivateregistry.com:5000 --docker-email=dock_user@myprivateregistry.com
36 |
37 |
38 |
39 | ```
40 | $ kubectl create secret docker-registry private-reg-cred --docker-username=dock_user --docker-password=dock_password --docker-server=myprivateregistry.com:5000 --docker-email=dock_user@myprivateregistry.com
41 | ```
42 |
43 |
44 |
45 | - Edit deployment using kubectl edit deploy web command and add imagePullSecrets section. Use private-reg-cred
46 |
47 |
48 |
49 | ```
50 | $ kubectl edit deploy web
51 | ```
52 |
53 |
54 |
55 | - Check the status of PODs. Wait for them to be running. You have now successfully configured a Deployment to pull images from the private registry
56 |
57 |
58 |
59 | ```
60 | $ kubectl get pods
61 | ```
62 |
63 |
--------------------------------------------------------------------------------
/docs/07-Security/23-Security-Context.md:
--------------------------------------------------------------------------------
1 | # Security Context
2 | - Take me to [Video Tutorial]()
3 |
4 | In this section, we will take a look at security context
5 |
6 | ## Container Security
7 | ```
8 | $ docker run --user=1001 ubuntu sleep 3600
9 | $ docker run -cap-add MAC_ADMIN ubuntu
10 | ```
11 |
12 | 
13 |
14 | ## Kubernetes Security
15 | - You may choose to configure the security settings at a container level or at a pod level.
16 | - If you configure it at a pod level the settings will carry over all the containers within the pod.
17 | - If you configure it at both the pod and the container the settings on the container will override the settings on the pod.
18 |
19 | 
20 |
21 | ## Security Context
22 | - To add security context on the container and a field called **`securityContext`** under the spec section.
23 | ```
24 | apiVersion: v1
25 | kind: Pod
26 | metadata:
27 | name: web-pod
28 | spec:
29 | securityContext:
30 | runAsUser: 1000
31 | containers:
32 | - name: ubuntu
33 | image: ubuntu
34 | command: ["sleep", "3600"]
35 | ```
36 | 
37 |
38 | - To set the same context at the container level, then move the whole section under container section.
39 |
40 | ```
41 | apiVersion: v1
42 | kind: Pod
43 | metadata:
44 | name: web-pod
45 | spec:
46 | containers:
47 | - name: ubuntu
48 | image: ubuntu
49 | command: ["sleep", "3600"]
50 | securityContext:
51 | runAsUser: 1000
52 | ```
53 | 
54 |
55 | - To add capabilities use the **`capabilities`** option
56 | ```
57 | apiVersion: v1
58 | kind: Pod
59 | metadata:
60 | name: web-pod
61 | spec:
62 | containers:
63 | - name: ubuntu
64 | image: ubuntu
65 | command: ["sleep", "3600"]
66 | securityContext:
67 | runAsUser: 1000
68 | capabilities:
69 | add: ["MAC_ADMIN"]
70 | ```
71 | 
72 |
73 |
74 | ### K8s Reference Docs
75 | - https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
76 |
--------------------------------------------------------------------------------
/docs/07-Security/24-Practice-Test-Security-Context.md:
--------------------------------------------------------------------------------
1 | # Practice Test - Security Context
2 | - Take me to [Video Tutorial](https://kodekloud.com/courses/539883/lectures/9816674)
3 |
4 | Solutions to practice test - security context
5 | - Run the command 'kubectl exec ubuntu-sleeper whoami' and count the number of pods.
6 |
7 |
8 |
9 | ```
10 | $ kubectl exec ubuntu-sleeper whoami
11 | ```
12 |
13 |
14 |
15 | - Set a security context to run as user 1010.
16 |
17 |
18 |
19 | ```
20 | $ kubectl get pods ubuntu-sleeper -o yaml > ubuntu.yaml
21 | $ kubectl delete pod ubuntu-sleeper
22 | $ vi ubuntu.yaml ( add securityContext Section)
23 | securityContext:
24 | runAsUser: 1010
25 | $ kubectl create -f ubuntu.yaml
26 | ```
27 |
28 |
29 |
30 | - The User ID defined in the securityContext of the container overrides the User ID in the POD.
31 |
32 | - The User ID defined in the securityContext of the POD is carried over to all the PODs in the container.
33 |
34 | - Run kubectl exec -it ubuntu-sleeper -- date -s '19 APR 2012 11:14:00'
35 |
36 |
37 |
38 | ```
39 | $ kubectl exec -it ubuntu-sleeper -- date -s '19 APR 2012 11:14:00'
40 | ```
41 |
42 |
43 |
44 | - Add SYS_TIME capability to the container's securityContext
45 |
46 |
47 |
48 | ```
49 | $ kubectl get pods ubuntu-sleeper -o yaml > ubuntu.yaml
50 | $ kubectl delete pod ubuntu-sleeper
51 | $ vi ubuntu.yaml
52 |
53 | Under container section add the below
54 |
55 | securityContext:
56 | capabilities:
57 | add: ["SYS_TIME"]
58 |
59 | $ kubectl create -f ubuntu.yaml
60 | ```
61 |
62 |
63 |
64 | - Now try to run the below command in the pod to set the date. If the security capability was added correctly, it should work. If it doesn't make sure you changed the user back to root.
65 |
66 |
67 |
68 | ```
69 | $ kubectl exec -it ubuntu-sleeper -- date -s '19 APR 2012 11:14:00'
70 | ```
71 |
72 |
73 |
74 |
--------------------------------------------------------------------------------
/docs/07-Security/25-Network-Policies.md:
--------------------------------------------------------------------------------
1 | # Network Policies
2 | - Take me to [Video Tutorials](https://kodekloud.com/courses/539883/lectures/9948740)
3 |
4 | #### Trafic flowing through a webserver serving frontend to users an app server serving backend API and a database server
5 |
6 | 
7 |
8 | - There are two types of traffic
9 | - Ingress
10 | - Egress
11 |
12 | 
13 |
14 | 
15 |
16 | ## Network Security
17 |
18 | 
19 |
20 | ## Network Policy
21 |
22 | 
23 |
24 | 
25 |
26 | ## Network Policy Selectors
27 |
28 | 
29 |
30 | ## Network Policy Rules
31 |
32 | 
33 |
34 | ## Create network policy
35 |
36 | - To create a network policy
37 | ```
38 | apiVersion: networking.k8s.io/v1
39 | kind: NetworkPolicy
40 | metadata:
41 | name: db-policy
42 | spec:
43 | podSelector:
44 | matchLabels:
45 | role: db
46 | policyTypes:
47 | - Ingress
48 | ingress:
49 | - from:
50 | - podSelector:
51 | matchLabels:
52 | role: api-pod
53 | ports:
54 | - protocol: TCP
55 | port: 3306
56 | ```
57 | $ kubectl create -f policy-defination.yaml
58 | ```
59 |
60 | 
61 |
62 | 
63 |
64 | ## Note
65 |
66 | 
67 |
68 | #### K8s Reference Docs
69 | - https://kubernetes.io/docs/concepts/services-networking/network-policies/
70 | - https://kubernetes.io/docs/tasks/administer-cluster/declare-network-policy/
71 |
72 |
73 |
74 |
75 |
76 |
--------------------------------------------------------------------------------
/docs/07-Security/26-Practice-Test-Network-Policies.md:
--------------------------------------------------------------------------------
1 | # Practice Test - Network Policies
2 | - Take me to [Practice Test](https://kodekloud.com/courses/539883/lectures/9816676)
3 |
4 | Solutions to practice test - network policies
5 |
6 | - Run the command 'kubectl get networkpolicy'
7 |
8 |
9 |
10 | ```
11 | $ kubectl get networkpolicy
12 | ```
13 |
14 |
15 |
16 | - Run the command 'kubectl get networkpolicy'
17 |
18 |
19 |
20 | ```
21 | $ kubectl get networkpolicy
22 | ```
23 |
24 |
25 |
26 | - Run the command 'kubectl get networkpolicy' and look under pod selector
27 |
28 |
29 |
30 | ```
31 | $ kubectl get networkpolicy
32 | ```
33 |
34 |
35 |
36 | - Run the command 'kubectl describe networkpolicy' and look under PolicyTypes
37 |
38 |
39 |
40 | ```
41 | $ kubectl describe networkpolicy
42 | ```
43 |
44 |
45 |
46 | - What is the impact of the rule configured on this Network Policy?
47 |
48 |
49 |
50 | ```
51 | Traffic from internal to payroll pod is blocked
52 | ```
53 |
54 |
55 |
56 | - What is the impact of the rule configured on this Network Policy?
57 |
58 |
59 |
60 | ```
61 | Internal pod can access port 8080 on payroll pod
62 | ```
63 |
64 |
65 |
66 | - Access the UI of these applications using the link given above the terminal.
67 |
68 | - Only internal applications can access payroll service
69 |
70 | - Perform a connectivity test using the User Interface of the Internal Application to access the 'external-service' at port '8080'.
71 |
72 |
73 |
74 | ```
75 | Successful
76 | ```
77 |
78 |
79 |
80 | - Answer file located at /var/answers/answer-internal-policy.yaml
81 |
82 |
83 |
84 | ```
85 | $ kubectl create -f /var/answers/answer-internal-policy.yaml
86 | ```
87 |
88 |
89 |
90 |
91 |
--------------------------------------------------------------------------------
/docs/07-Security/27-kubectx-and-kubens-commands.md:
--------------------------------------------------------------------------------
1 | # kubectx and kubens commands
2 | - Take me to [Tutorial](https://kodekloud.com/courses/certified-kubernetes-administrator-with-practice-tests/lectures/13056451)
3 |
--------------------------------------------------------------------------------
/docs/07-Security/28-Download-Presentation-Deck.md:
--------------------------------------------------------------------------------
1 | # Download Presentation Deck
2 | - Take me to [Presentation Deck](https://kodekloud.com/courses/certified-kubernetes-administrator-with-practice-tests/lectures/16092915)
3 |
--------------------------------------------------------------------------------
/docs/08-Storage/01-Storage-Section-Introduction.md:
--------------------------------------------------------------------------------
1 | # Storage Section Introduction
2 |
3 | Take me to [Introduction](https://kodekloud.com/courses/certified-kubernetes-administrator-with-practice-tests/lectures/9808276)
--------------------------------------------------------------------------------
/docs/08-Storage/02-Introduction-to-Docker-Storage.md:
--------------------------------------------------------------------------------
1 | # Introduction to Docker Storage
2 |
3 | Take me to [Docker Introduction](https://kodekloud.com/courses/certified-kubernetes-administrator-with-practice-tests/lectures/13350395)
--------------------------------------------------------------------------------
/docs/08-Storage/03-Storage-in-Docker.md:
--------------------------------------------------------------------------------
1 | # Storage in Docker
2 |
3 | Take me to [Storage](https://kodekloud.com/courses/certified-kubernetes-administrator-with-practice-tests/lectures/13350400)
--------------------------------------------------------------------------------
/docs/08-Storage/04-Volume-Driver-Plugins-in-Docker.md:
--------------------------------------------------------------------------------
1 | # Volume Driver Plugins in Docker
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/certified-kubernetes-administrator-with-practice-tests/lectures/13350437)
--------------------------------------------------------------------------------
/docs/08-Storage/05-Container.Storage-Interface.md:
--------------------------------------------------------------------------------
1 | # Container Storage Interface
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/certified-kubernetes-administrator-with-practice-tests/lectures/13350453)
--------------------------------------------------------------------------------
/docs/08-Storage/06-Volumes.md:
--------------------------------------------------------------------------------
1 | # Volumes
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/certified-kubernetes-administrator-with-practice-tests/lectures/9808274)
--------------------------------------------------------------------------------
/docs/08-Storage/07-Persistent-Volumes.md:
--------------------------------------------------------------------------------
1 | # Persistent Volumes
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/certified-kubernetes-administrator-with-practice-tests/lectures/9808275)
--------------------------------------------------------------------------------
/docs/08-Storage/08-Persistent-Volume-Claims.md:
--------------------------------------------------------------------------------
1 | # Persistent Volume Claims
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/certified-kubernetes-administrator-with-practice-tests/lectures/9808277)
--------------------------------------------------------------------------------
/docs/08-Storage/09-Using-PVC-in-PODs.md:
--------------------------------------------------------------------------------
1 | # Using PVC in PODs
2 |
3 | - Take me the [Lecture](https://kodekloud.com/courses/certified-kubernetes-administrator-with-practice-tests/lectures/13154680)
--------------------------------------------------------------------------------
/docs/08-Storage/11-Download-Presentation-Deck.md:
--------------------------------------------------------------------------------
1 | # Download Presentation Deck
2 |
3 | [Download](https://kodekloud.com/courses/certified-kubernetes-administrator-with-practice-tests/lectures/16093022)
--------------------------------------------------------------------------------
/docs/09-Networking/01-Networking-Introduction.md:
--------------------------------------------------------------------------------
1 | # Section Introduction
2 |
3 | Take me to [Introduction](https://kodekloud.com/courses/539883/lectures/9808282)
--------------------------------------------------------------------------------
/docs/09-Networking/02-Pre-requisite-Switching-Routing-Gateways.md:
--------------------------------------------------------------------------------
1 | # Pre-requisite Switching Routing Gateways
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/539883/lectures/9817246)
--------------------------------------------------------------------------------
/docs/09-Networking/03-Pre-requisite-DNS.md:
--------------------------------------------------------------------------------
1 | # Pre-requisite DNS
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/539883/lectures/9808290)
--------------------------------------------------------------------------------
/docs/09-Networking/04-Pre-requisite-CoreDNS.md:
--------------------------------------------------------------------------------
1 | # Pre-requisite CoreDNS
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/539883/lectures/9927591)
--------------------------------------------------------------------------------
/docs/09-Networking/05-Pre-requisite-Network-Namespace.md:
--------------------------------------------------------------------------------
1 | # Pre-requisite Network Namespaces
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/539883/lectures/9808292)
--------------------------------------------------------------------------------
/docs/09-Networking/06-Pre-requisite-Docker-Networking.md:
--------------------------------------------------------------------------------
1 | # Pre-requisite Docker Networking
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/539883/lectures/9808294)
--------------------------------------------------------------------------------
/docs/09-Networking/07-Pre-requisite-CNI.md:
--------------------------------------------------------------------------------
1 | # Pre-requisite CNI
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/539883/lectures/9808284)
--------------------------------------------------------------------------------
/docs/09-Networking/08-Cluster-Networking.md:
--------------------------------------------------------------------------------
1 | # Pre-requisite Cluster Networking
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/539883/lectures/9808288)
--------------------------------------------------------------------------------
/docs/09-Networking/09-Practice-Test-Explore-Env.md:
--------------------------------------------------------------------------------
1 | # Practice Test Explore Env
2 |
3 | Take me to [Lab](https://kodekloud.com/courses/539883/lectures/9816753)
4 |
5 | #### Solution
6 |
7 | 1. Check the Solution
8 |
9 |
10 |
11 | ```
12 | 2
13 | ```
14 |
15 |
16 | 2. Check the Solution
17 |
18 |
19 |
20 | ```
21 | ens3
22 | ```
23 |
24 |
25 | 3. Check the Solution
26 |
27 |
28 |
29 | ```
30 | 172.17.0.31
31 | ```
32 |
33 |
34 | 4. Check the Solution
35 |
36 |
37 |
38 | ```
39 | 02:42:ac:11:00:1f
40 | ```
41 |
42 |
43 | 5. Check the Solution
44 |
45 |
46 |
47 | ```
48 | 172.17.0.32
49 | ```
50 |
51 |
52 | 6. Check the Solution
53 |
54 |
55 |
56 | ```
57 | 02:42:ac:11:00:20
58 | ```
59 |
60 |
61 | 7. Check the Solution
62 |
63 |
64 |
65 | ```
66 | docker0
67 | ```
68 |
69 |
70 | 8. Check the Solution
71 |
72 |
73 |
74 | ```
75 | DOWN
76 | ```
77 |
78 |
79 | 9. Check the Solution
80 |
81 |
82 |
83 | ```
84 | 172.17.0.1
85 | ```
86 |
87 |
88 | 9. Check the Solution
89 |
90 |
91 |
92 | ```
93 | 10251
94 | ```
95 |
96 |
97 | 9. Check the Solution
98 |
99 |
100 |
101 | ```
102 | 2379
103 | ```
104 |
105 |
106 | 9. Check the Solution
107 |
108 |
109 |
110 | ```
111 | Ok
112 | ```
113 |
--------------------------------------------------------------------------------
/docs/09-Networking/10-Pod-Networking.md:
--------------------------------------------------------------------------------
1 | # Pod Networking
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/certified-kubernetes-administrator-with-practice-tests/lectures/9808293)
--------------------------------------------------------------------------------
/docs/09-Networking/11-CNI-in-Kubernetes.md:
--------------------------------------------------------------------------------
1 | # CNI in Kubernetes
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/certified-kubernetes-administrator-with-practice-tests/lectures/9808289)
--------------------------------------------------------------------------------
/docs/09-Networking/12-CNI-weave.md:
--------------------------------------------------------------------------------
1 | # CNI weave
2 | Take me to [Lecture](https://kodekloud.com/courses/certified-kubernetes-administrator-with-practice-tests/lectures/9808283)
--------------------------------------------------------------------------------
/docs/09-Networking/13-Practice-Test-CNI-weave.md:
--------------------------------------------------------------------------------
1 | # Practice Test CNI weave
2 |
3 | Take me to [Lab](https://kodekloud.com/courses/539883/lectures/9816778)
4 |
5 | #### Solution
6 |
7 | 1. Check the Solution
8 |
9 |
10 |
11 | ```
12 | CNI
13 | ```
14 |
15 |
16 | 2. Check the Solution
17 |
18 |
19 |
20 | ```
21 | /opt/cni/bin
22 | ```
23 |
24 |
25 | 3. Check the Solution
26 |
27 |
28 |
29 | ```
30 | cisco
31 | ```
32 |
33 |
34 | 4. Check the Solution
35 |
36 |
37 |
38 | ```
39 | weave
40 | ```
41 |
42 |
43 | 5. Check the Solution
44 |
45 |
46 |
47 | ```
48 | weave-net
49 | ```
50 |
51 |
52 |
--------------------------------------------------------------------------------
/docs/09-Networking/14-Practice-Test-Deploy-Network-Solution.md:
--------------------------------------------------------------------------------
1 | # Practice Test Deploy Networking Solution
2 |
3 | Take me to [Lab](https://kodekloud.com/courses/certified-kubernetes-administrator-with-practice-tests/lectures/9892583)
4 |
5 | #### Solution
6 |
7 | 1. Check the Solution
8 |
9 |
10 |
11 | ```
12 | Not Running
13 | ```
14 |
15 |
16 | 2. Check the Solution
17 |
18 |
19 |
20 | ```
21 | No Network Configured
22 | ```
23 |
24 |
25 | 3. Check the Solution
26 |
27 |
28 |
29 | ```
30 | Click [here](https://www.weave.works/docs/net/latest/kubernetes/kube-addon/)
31 |
32 | OR Execute below command
33 |
34 | kubectl apply -f "https://cloud.weave.works/k8s/net?k8s-version=$(kubectl version | base64 | tr -d '\n')"
35 | ```
36 |
--------------------------------------------------------------------------------
/docs/09-Networking/15-ipam-weave.md:
--------------------------------------------------------------------------------
1 | # IPAM weave
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/certified-kubernetes-administrator-with-practice-tests/lectures/9808295)
--------------------------------------------------------------------------------
/docs/09-Networking/16-Practice-Test-Networking-weave.md:
--------------------------------------------------------------------------------
1 | # Practice Test Networking Weave
2 |
3 | Take me to [Lab](https://kodekloud.com/courses/certified-kubernetes-administrator-with-practice-tests/lectures/9816785)
4 |
5 | #### Solution
6 |
7 | 1. Check the Solution
8 |
9 |
10 |
11 | ```
12 | 4
13 | ```
14 |
15 |
16 | 2. Check the Solution
17 |
18 |
19 |
20 | ```
21 | weave
22 | ```
23 |
24 |
25 | 3. Check the Solution
26 |
27 |
28 |
29 | ```
30 | 4
31 | ```
32 |
33 |
34 | 4. Check the Solution
35 |
36 |
37 |
38 | ```
39 | One on every node
40 | ```
41 |
42 |
43 | 5. Check the Solution
44 |
45 |
46 |
47 | ```
48 | weave
49 | ```
50 |
51 |
52 | 6. Check the Solution
53 |
54 |
55 |
56 | ```
57 | 10.X.X.X
58 | ```
59 |
60 |
61 | 7. Check the Solution
62 |
63 |
64 |
65 | ```
66 | 10.38.0.0
67 | ```
68 |
--------------------------------------------------------------------------------
/docs/09-Networking/17-Service-Networking.md:
--------------------------------------------------------------------------------
1 | # Service Networking
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/certified-kubernetes-administrator-with-practice-tests/lectures/9808291)
--------------------------------------------------------------------------------
/docs/09-Networking/18-Practice-Test-Service-Networking.md:
--------------------------------------------------------------------------------
1 | # Practice Test Service Networking
2 |
3 | Take me to [Lab](https://kodekloud.com/courses/certified-kubernetes-administrator-with-practice-tests/lectures/9816800)
4 |
5 | #### Solution
6 |
7 | 1. Check the Solution
8 |
9 |
10 |
11 | ```
12 | 172.17.0.0/16
13 | ```
14 |
15 |
16 | 2. Check the Solution
17 |
18 |
19 |
20 | ```
21 | 10.32.0.0/12
22 | ```
23 |
24 |
25 | 3. Check the Solution
26 |
27 |
28 |
29 | ```
30 | 10.96.0.0/12
31 | ```
32 |
33 |
34 | 4. Check the Solution
35 |
36 |
37 |
38 | ```
39 | 2
40 | ```
41 |
42 |
43 | 5. Check the Solution
44 |
45 |
46 |
47 | ```
48 | iptables
49 | ```
50 |
51 |
52 | 6. Check the Solution
53 |
54 |
55 |
56 | ```
57 | using daemonset
58 | ```
59 |
60 |
61 |
--------------------------------------------------------------------------------
/docs/09-Networking/19-DNS-in-kubernetes.md:
--------------------------------------------------------------------------------
1 | # DNS in kubernetes
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/certified-kubernetes-administrator-with-practice-tests/lectures/9808287)
--------------------------------------------------------------------------------
/docs/09-Networking/22-Ingress.md:
--------------------------------------------------------------------------------
1 | # Ingress
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/certified-kubernetes-administrator-with-practice-tests/lectures/9808286)
--------------------------------------------------------------------------------
/docs/09-Networking/23-Ingress-Annotations-and-rewrite-target.md:
--------------------------------------------------------------------------------
1 | # Ingress Annotationd and rewrite-target
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/certified-kubernetes-administrator-with-practice-tests/lectures/14102889)
--------------------------------------------------------------------------------
/docs/09-Networking/26-Dowload-Presentation-Deck.md:
--------------------------------------------------------------------------------
1 | # Download Presentation Deck
2 |
3 | [Download](https://kodekloud.com/courses/certified-kubernetes-administrator-with-practice-tests/lectures/16093181)
--------------------------------------------------------------------------------
/docs/10-Install/01-Section-Introduction.md:
--------------------------------------------------------------------------------
1 | # Section Introduction
2 |
3 | Take me to [Introduction](https://kodekloud.com/courses/539883/lectures/9808337)
--------------------------------------------------------------------------------
/docs/10-Install/02-Designing-a-Kubernetes-Cluster.md:
--------------------------------------------------------------------------------
1 | # Designing a Kubernetes Cluster
2 |
3 | Take me to [Designing](https://kodekloud.com/courses/539883/lectures/9817006)
--------------------------------------------------------------------------------
/docs/10-Install/03-Choosing-Kuberneter-Infrastructure.md:
--------------------------------------------------------------------------------
1 | # Choosing a Kubernetes Infratructure
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/539883/lectures/9808342)
--------------------------------------------------------------------------------
/docs/10-Install/04-Choosing-Network-Solution.md:
--------------------------------------------------------------------------------
1 | # Choosing a Networking Solution
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/539883/lectures/9817166)
--------------------------------------------------------------------------------
/docs/10-Install/05-Configure-High-Availability.md:
--------------------------------------------------------------------------------
1 | # Choosing a HA
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/539883/lectures/9808328)
--------------------------------------------------------------------------------
/docs/10-Install/06-ETCD-in-HA.md:
--------------------------------------------------------------------------------
1 | # ETCD in HA
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/539883/lectures/9808331)
--------------------------------------------------------------------------------
/docs/10-Install/07-Demo-Prequisites.md:
--------------------------------------------------------------------------------
1 | # Demo Prequisites
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/539883/lectures/9808347)
--------------------------------------------------------------------------------
/docs/10-Install/08-Provisioning-VMS.md:
--------------------------------------------------------------------------------
1 | # Provisioning VM's
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/539883/lectures/9808334)
--------------------------------------------------------------------------------
/docs/10-Install/09-Install-Client-Tools.md:
--------------------------------------------------------------------------------
1 | # Install Client Tools
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/539883/lectures/9808333)
--------------------------------------------------------------------------------
/docs/10-Install/10-Secure-Cluster.md:
--------------------------------------------------------------------------------
1 | # Secure Cluster
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/539883/lectures/9808324)
--------------------------------------------------------------------------------
/docs/10-Install/11-Create-KubeConfigfiles.md:
--------------------------------------------------------------------------------
1 | # Create Kubeconfig files
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/539883/lectures/9808341)
--------------------------------------------------------------------------------
/docs/10-Install/12-Data-Encryption.md:
--------------------------------------------------------------------------------
1 | # Data Encryption
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/539883/lectures/9808330)
--------------------------------------------------------------------------------
/docs/10-Install/13-Kubernetes-Release-Binaries.md:
--------------------------------------------------------------------------------
1 | # Kubernetes Release Binaries
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/539883/lectures/9808329)
--------------------------------------------------------------------------------
/docs/10-Install/14-Install-Control-Plane-Components-Intro.md:
--------------------------------------------------------------------------------
1 | # Install Control Plane Componenets Intro
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/539883/lectures/9808349)
--------------------------------------------------------------------------------
/docs/10-Install/15-Install-ETCD-Cluster.md:
--------------------------------------------------------------------------------
1 | # Install ETCD Cluster
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/539883/lectures/9817249)
--------------------------------------------------------------------------------
/docs/10-Install/16-Install-Control-Plane-Components.md:
--------------------------------------------------------------------------------
1 | # Install Control Plane Componenets
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/539883/lectures/9808335)
--------------------------------------------------------------------------------
/docs/10-Install/17-Install-Control-Plane-Load-Balancer.md:
--------------------------------------------------------------------------------
1 | # Install Control Plane Load Balancer
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/539883/lectures/9808344)
--------------------------------------------------------------------------------
/docs/10-Install/18-Install-Worker-node-componenets.md:
--------------------------------------------------------------------------------
1 | # Install worker node components
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/539883/lectures/9808327)
--------------------------------------------------------------------------------
/docs/10-Install/19-TLS-Bootstrap-worker-node.md:
--------------------------------------------------------------------------------
1 | # TLS Bootstrap worker node
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/539883/lectures/9808338)
--------------------------------------------------------------------------------
/docs/10-Install/20-Demo-TLS-Bootstrap-worker-node.md:
--------------------------------------------------------------------------------
1 | # Demo TLS Bootstrap worker node
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/539883/lectures/9808340)
--------------------------------------------------------------------------------
/docs/10-Install/21-Configure-Kubectl-for-remote-access.md:
--------------------------------------------------------------------------------
1 | # Configure Kubectl-for-remote-access
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/539883/lectures/9808345)
--------------------------------------------------------------------------------
/docs/10-Install/22-Provision-Networking.md:
--------------------------------------------------------------------------------
1 | # Configure Provision Networking
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/539883/lectures/9817247)
--------------------------------------------------------------------------------
/docs/10-Install/23-Kubapi-to-kubelet-connectivity.md:
--------------------------------------------------------------------------------
1 | # Kubeapi to kubelet connectivity
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/539883/lectures/9808346)
--------------------------------------------------------------------------------
/docs/10-Install/24-Deploy-Core-DNS.md:
--------------------------------------------------------------------------------
1 | # Deploy Core DNS
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/539883/lectures/9808332)
--------------------------------------------------------------------------------
/docs/10-Install/25-End-to-End-tests.md:
--------------------------------------------------------------------------------
1 | # End To End Test
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/539883/lectures/9808326)
--------------------------------------------------------------------------------
/docs/10-Install/26-End-To-End-Tests-Run-and-analyze.md:
--------------------------------------------------------------------------------
1 | # End To End Test
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/539883/lectures/9808343)
--------------------------------------------------------------------------------
/docs/10-Install/27-Smoke-test.md:
--------------------------------------------------------------------------------
1 | # Smoke Test
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/539883/lectures/9808348)
--------------------------------------------------------------------------------
/docs/10-Install/28-End-to-End-test-part1.md:
--------------------------------------------------------------------------------
1 | # End to End test part 1
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/539883/lectures/9808339)
--------------------------------------------------------------------------------
/docs/10-Install/29-Practise-Test-instal-using-kubeadm.md:
--------------------------------------------------------------------------------
1 | # Solution Install Using Kubeadm
2 |
3 | 1. Check the solution
4 |
5 |
6 |
7 | ```
8 | sudo apt-get update && sudo apt-get install -y apt-transport-https curl
9 | curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
10 | cat <
18 |
19 | 2. Check the solution
20 |
21 |
22 |
23 | ```
24 | kubelet --version
25 | ```
26 |
27 |
28 | 3. Check the solution
29 |
30 |
31 |
32 | ```
33 | 0
34 | ```
35 |
36 |
37 | 5. Click on **`OK`**
38 |
39 | 6. Check the solution
40 |
41 |
42 |
43 | ```
44 | kubeadm init
45 | ```
46 |
47 |
48 | 7. Click on **`OK`**
49 |
50 | 8. Click on **`Check`**
51 |
52 | 9. Check the solution
53 |
54 |
55 |
56 | ```
57 | kubectl apply -f "https://cloud.weave.works/k8s/net?k8s-version=$(kubectl version | base64 | tr -d '\n')"
58 | ```
59 |
--------------------------------------------------------------------------------
/docs/10-Install/30-Solution-Install-a-K8s-cluster-kubeadm.md:
--------------------------------------------------------------------------------
1 | # Solution - Install Kubernetes Cluster using Kubeadm
2 |
3 | Take me to [Lecture](https://kodekloud.com/courses/539883/lectures/13157976)
--------------------------------------------------------------------------------
/docs/10-Install/31-Download-Presentation-Deck.md:
--------------------------------------------------------------------------------
1 | # Download Presentation Deck
2 |
3 | [Download](https://kodekloud.com/courses/539883/lectures/16093256)
--------------------------------------------------------------------------------
/docs/11-Troubleshooting/01-Troubelshooting-Section-Introduction.md:
--------------------------------------------------------------------------------
1 | # Troubelshooting Section Introduction
2 |
3 | - Lets understand how we can troubleshoot an [Application Failure](https://kodekloud.com/courses/539883/lectures/9808360).
--------------------------------------------------------------------------------
/docs/11-Troubleshooting/02-Application-Failure.md:
--------------------------------------------------------------------------------
1 | # Application Failure
2 |
3 | - In this lecture we will go step by step in troubleshooting Application failure.
4 |
5 | - To check the Application/Service status of the webserver
6 |
7 | ```
8 | curl http://web-service-ip:node-port
9 | ```
10 |
11 | 
12 |
13 | - To check the endpoint of the service and compare it with the selectors
14 |
15 | ```
16 | kubectl describe service web-service
17 | ```
18 |
19 | 
20 |
21 |
22 | - To check the status and logs of the pod
23 |
24 | ```
25 | kubectl get pod
26 | ```
27 |
28 | ```
29 | kubectl describe pod web
30 | ```
31 |
32 | ```
33 | kubectl logs web
34 | ```
35 |
36 | - To check the logs of the previous pod
37 |
38 | ```
39 | kubectl logs web -f --previous
40 | ```
41 |
42 | 
43 |
44 |
45 | #### Hands on Labs
46 |
47 | - Lets Troubleshoot the [Application](https://kodekloud.com/courses/539883/lectures/9816836)
--------------------------------------------------------------------------------
/docs/11-Troubleshooting/04-Control-Plane-Failure.md:
--------------------------------------------------------------------------------
1 | # Control Plane Failure
2 |
3 | - In this lecture we will use how to troubleshoot the Control Plane components.
4 |
5 | - To check the status of the nodes if they are healthy
6 |
7 | ```
8 | kubectl get nodes
9 | ```
10 |
11 | - To check the status of the pods if the are running
12 |
13 | ```
14 | kubectl get pods
15 | ```
16 |
17 | - To check the status of all the pods of the Control Plane components(if they are deployed with kubeadm tool) and make sure they are **`Running`**
18 |
19 | ```
20 | kubectl get pods -n kube-system
21 | ```
22 |
23 | 
24 |
25 | - If the Control Plane components are deployed as services then check the status of all the components
26 |
27 | 
28 |
29 | - To check the status of **`kube-apiserver`**
30 |
31 | ```
32 | service kube-apiserver status
33 | ```
34 |
35 | - To check the status of **`kube-controller-manager`**
36 |
37 | ```
38 | service kube-controller-manager status
39 | ```
40 |
41 | - To check the status of **`kube-scheduler`**
42 |
43 | ```
44 | service kube-scheduler status
45 | ```
46 |
47 | 
48 |
49 | - To check the status of **`kubelet`**
50 |
51 | ```
52 | service kubelet status
53 | ```
54 |
55 | - To check the status of **`kube-proxy`** on the worker nodes.
56 |
57 | ```
58 | service kube-proxy status
59 | ```
60 |
61 | - To check the logs of the Control Plane components deployed as Pods:
62 |
63 | ```
64 | kubectl logs kube-apiserver-master -n kube-system
65 | ```
66 |
67 | 
68 |
69 | - To check the logs of the Control Plane components deployed as SystemD Service
70 |
71 | ```
72 | sudo journalctl -u kube-apiserver
73 | ```
--------------------------------------------------------------------------------
/docs/11-Troubleshooting/05-Practice-Test-Control-Plane-Failure.md:
--------------------------------------------------------------------------------
1 | # Practice Test Control Plane Failure
2 |
3 | - Lets Debug the Failure of [Control Plane](https://kodekloud.com/courses/539883/lectures/9816848)
--------------------------------------------------------------------------------
/docs/11-Troubleshooting/06-Solution-Control-Plane-Failure.md:
--------------------------------------------------------------------------------
1 | # Solution Control Plane Failure
2 |
3 | - Lets have a look at the [Solution](https://kodekloud.com/courses/539883/lectures/13232015) of the Control Plane Failure
4 |
5 | ### Solution
6 |
7 | 1. Check Solution
8 |
9 |
10 |
11 | ```
12 | kubectl get pods -n kube-system
13 | ```
14 |
15 | ```
16 | sed -i 's/kube-schedulerrrr/kube-scheduler/g' /etc/kubernetes/manifests/kube-scheduler.yaml
17 | ```
18 |
19 |
20 | 2. Check Solution
21 |
22 |
23 |
24 | ```
25 | kubectl scale deploy app --replicas=2
26 | ```
27 |
28 |
29 | 3. Check Solution
30 |
31 |
32 |
33 | ```
34 | sed -i 's/controller-manager-XXXX.conf/controller-manager.conf/' /etc/kubernetes/manifests/kube-controller-manager.yaml
35 | ```
36 |
37 |
38 | 4. Check Solution
39 |
40 |
41 |
42 | ```
43 | sed -i 's/WRONG-PKI-DIRECTORY/pki/' /etc/kubernetes/manifests/kube-controller-manager.yaml
44 | ```
45 |
--------------------------------------------------------------------------------
/docs/11-Troubleshooting/07-Worker-Node-Failure.md:
--------------------------------------------------------------------------------
1 | # Worker Node Failure
2 |
3 | - Lets check the status of the Nodes in the cluster, are they **`Ready`** or **`NotReady`**
4 |
5 | ```
6 | kubectl get nodes
7 | ```
8 |
9 | - If they are **`NotReady`** then check the **`LastHeartbeatTime`** of the node to find out the time when node might have crashed
10 |
11 | ```
12 | kubectl describe node worker-1
13 | ```
14 |
15 | 
16 |
17 |
18 | - Check the possible **`CPU`** and **`MEMORY`** using **`top`** and **`df -h`**
19 |
20 |
21 | 
22 |
23 |
24 | - Check the status and the logs of the **`kubelet`** for the possible issues.
25 |
26 | ```
27 | serivce kubelet status
28 | ```
29 |
30 | ```
31 | sudo journalctl –u kubelet
32 | ```
33 | 
34 |
35 |
36 | - Check the **`kubelet`** Certificates, they are not expired, and in the right group and issued by the right CA.
37 |
38 | ```
39 | openssl x509 -in /var/lib/kubelet/worker-1.crt -text
40 | ```
41 |
42 | 
--------------------------------------------------------------------------------
/docs/11-Troubleshooting/08-Practice-Test-Worker-Node-Failure.md:
--------------------------------------------------------------------------------
1 | # Practice Worker Node Failure
2 |
3 | - Lets Debug the Failure of [Worker Node](https://kodekloud.com/courses/539883/lectures/9816851)
--------------------------------------------------------------------------------
/docs/11-Troubleshooting/09-Solution-Worker-Node-Failure.md:
--------------------------------------------------------------------------------
1 | # Solution Worker Node Failure
2 |
3 | - Lets have a look at the [Solution](https://kodekloud.com/courses/539883/lectures/13195330) of the Worker Node Failure
4 |
5 | ### Solution
6 |
7 | 1. Check Solution
8 |
9 |
10 |
11 | ```
12 | ssh node01
13 |
14 | service kubelet start
15 | ```
16 |
17 |
18 | 2. Check Solution
19 |
20 |
21 |
22 | ```
23 | sed -i 's/WRONG-CA-FILE.crt/ca.crt/g' /var/lib/kubelet/config.yaml
24 | ```
25 |
26 |
27 | 3. Check Solution
28 |
29 |
30 |
31 | ```
32 | sed -i 's/6553/6443/g' /etc/kubernetes/kubelet.conf
33 | ```
34 |
--------------------------------------------------------------------------------
/docs/12-Other-Topics/01-Labs-JSON-PATH.md:
--------------------------------------------------------------------------------
1 | # Labs JSON PATH
2 |
3 | - I want to learn Json, Take me to [JSON PATH](https://kodekloud.com/p/json-path-quiz)
--------------------------------------------------------------------------------
/docs/12-Other-Topics/02-Pre-Requisites-JSON-PATH.md:
--------------------------------------------------------------------------------
1 | # Pre-requisite for JSON PATH
2 |
3 | - I want to know more about JSON PATH and its [Pre-requisite](https://kodekloud.com/courses/539883/lectures/10781729)
--------------------------------------------------------------------------------
/docs/12-Other-Topics/03-Advance-Kubectl-Commands.md:
--------------------------------------------------------------------------------
1 | # Advance Kubectl Commands
2 |
3 | - To get the output of **`kubectl`** in a json format
4 |
5 | ```
6 | kubectk get nodes -o json
7 | ```
8 |
9 | ```
10 | kubectl get pods -o json
11 | ```
12 |
13 | 
14 |
15 | - To get the image name used by pod via json path query:
16 |
17 | ```
18 | kubectl get pods -o=jsonpath='{.items[0].spec.containers[0].image}'
19 | ```
20 |
21 | - To get the names of node in the cluster:
22 |
23 | ```
24 | kubectl get pods -o=jsonpath='{.items[*].metadata.name}'
25 | ```
26 |
27 | 
28 |
29 |
30 | - To get the architecture of node in the cluster:
31 |
32 | ```
33 | kubectl get pods -o=jsonpath='{.items[*].status.nodeInfo.architecture}'
34 | ```
35 |
36 | - To get the count of the cpu of node in the cluster:
37 |
38 | ```
39 | kubectl get pods -o=jsonpath='{.items[*].status.status.capacity.cpu}'
40 | ```
41 |
42 | #### Loops - Range
43 |
44 | - To print the output in a seprate column(one column with node name and other with CPU count):
45 |
46 | ```
47 | kubectl get nodes -o=custom-columns=NODE:.metadata.name ,CPU:.status.capacity.cpu
48 | ```
49 |
50 | 
51 |
52 | - Kubectl comes with a **`sort by`** property which can be combined with json path query to **`sort`** by name or **`CPU count`**
53 |
54 | ```
55 | kubectl get nodes --sort-by=.metadata.name
56 | ```
57 |
58 | 
59 |
60 | ```
61 | kubectl get nodes --sort-by=..status.capacity.cpu
62 | ```
63 |
--------------------------------------------------------------------------------
/docs/13-Lightning-Labs/01-Lightning-Labs-Introduction.md:
--------------------------------------------------------------------------------
1 | # Lightning Labs Introduction
2 |
3 | #### Welcome to the KodeKloud CKA Lightning Labs!
4 |
5 | - This section has been created to give you hands-on practice in solving questions of mixed difficulty in a short period oftime.
6 |
7 | - This environment is only valid for 35 minutes. You have 5-8 questions to complete within this time.
8 |
9 | - You can toggle between the questions but make sure that that you click on END EXAM before the 35 minute mark. To pass, you need to secure 80%.
10 |
11 | Good Luck!!!
12 |
13 | Note: Answers for most questions should be available under the /var/answers directory on the master node.
14 |
15 |
16 | #### Disclaimer:
17 |
18 | - Please note that this exam is not a replica of the actual exam
19 | - Please note that the questions in these exams are not the same as in the actual exam
20 | - Please note that the interface is not the same as in the actual exam
21 | - Please note that the scoring system may not be the same as in the actual exam
22 | - Please note that the difficulty level may not be the same as in the actual exam
23 |
24 |
25 | - I want to understand what Lightning Lab is, [Let's Explore](https://kodekloud.com/courses/539883/lectures/14559515)
--------------------------------------------------------------------------------
/docs/14-Mock-Exams/01-Introduction.md:
--------------------------------------------------------------------------------
1 | # Mock Exams Introduction
2 |
3 | Take me to [Introduction of Mock Exams](https://kodekloud.com/courses/539883/lectures/10853073)
--------------------------------------------------------------------------------
/docs/14-Mock-Exams/03-Mock-Exam-2.md:
--------------------------------------------------------------------------------
1 | # Mock Exam 2
2 |
3 | Level Up!
4 | Take me to [Mock Exam 2](https://kodekloud.com/courses/539883/lectures/11099883)
--------------------------------------------------------------------------------
/docs/14-Mock-Exams/05-Mock-Exam-3.md:
--------------------------------------------------------------------------------
1 | # Mock Exam 2
2 |
3 | Wohooo! Level Up!
4 | Take me to [Mock Exam 2](https://kodekloud.com/courses/539883/lectures/11118242)
--------------------------------------------------------------------------------
/images/Readme.md:
--------------------------------------------------------------------------------
1 | # Images
2 |
--------------------------------------------------------------------------------
/images/abac.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/abac.PNG
--------------------------------------------------------------------------------
/images/acc1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/acc1.PNG
--------------------------------------------------------------------------------
/images/acc2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/acc2.PNG
--------------------------------------------------------------------------------
/images/acc3.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/acc3.PNG
--------------------------------------------------------------------------------
/images/annotations.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/annotations.PNG
--------------------------------------------------------------------------------
/images/api1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/api1.PNG
--------------------------------------------------------------------------------
/images/api10.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/api10.PNG
--------------------------------------------------------------------------------
/images/api2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/api2.PNG
--------------------------------------------------------------------------------
/images/api3.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/api3.PNG
--------------------------------------------------------------------------------
/images/api4.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/api4.PNG
--------------------------------------------------------------------------------
/images/api5.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/api5.PNG
--------------------------------------------------------------------------------
/images/api6.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/api6.PNG
--------------------------------------------------------------------------------
/images/api7.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/api7.PNG
--------------------------------------------------------------------------------
/images/api8.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/api8.PNG
--------------------------------------------------------------------------------
/images/api9.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/api9.PNG
--------------------------------------------------------------------------------
/images/app.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/app.PNG
--------------------------------------------------------------------------------
/images/args.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/args.PNG
--------------------------------------------------------------------------------
/images/at1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/at1.PNG
--------------------------------------------------------------------------------
/images/auth1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/auth1.PNG
--------------------------------------------------------------------------------
/images/auth2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/auth2.PNG
--------------------------------------------------------------------------------
/images/auth3.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/auth3.PNG
--------------------------------------------------------------------------------
/images/auth4.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/auth4.PNG
--------------------------------------------------------------------------------
/images/auth5.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/auth5.PNG
--------------------------------------------------------------------------------
/images/auth6.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/auth6.PNG
--------------------------------------------------------------------------------
/images/bash.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/bash.PNG
--------------------------------------------------------------------------------
/images/bc.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/bc.PNG
--------------------------------------------------------------------------------
/images/be.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/be.PNG
--------------------------------------------------------------------------------
/images/be1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/be1.PNG
--------------------------------------------------------------------------------
/images/brc.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/brc.PNG
--------------------------------------------------------------------------------
/images/ca.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/ca.PNG
--------------------------------------------------------------------------------
/images/ca1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/ca1.PNG
--------------------------------------------------------------------------------
/images/ca2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/ca2.PNG
--------------------------------------------------------------------------------
/images/cap.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/cap.PNG
--------------------------------------------------------------------------------
/images/cert.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/cert.PNG
--------------------------------------------------------------------------------
/images/cert1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/cert1.PNG
--------------------------------------------------------------------------------
/images/cert10.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/cert10.PNG
--------------------------------------------------------------------------------
/images/cert11.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/cert11.PNG
--------------------------------------------------------------------------------
/images/cert2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/cert2.PNG
--------------------------------------------------------------------------------
/images/cert3.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/cert3.PNG
--------------------------------------------------------------------------------
/images/cert4.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/cert4.PNG
--------------------------------------------------------------------------------
/images/cert5.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/cert5.PNG
--------------------------------------------------------------------------------
/images/cert6.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/cert6.PNG
--------------------------------------------------------------------------------
/images/cert7.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/cert7.PNG
--------------------------------------------------------------------------------
/images/cert8.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/cert8.PNG
--------------------------------------------------------------------------------
/images/cert9.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/cert9.PNG
--------------------------------------------------------------------------------
/images/certs.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/certs.PNG
--------------------------------------------------------------------------------
/images/cmd.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/cmd.PNG
--------------------------------------------------------------------------------
/images/cmd1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/cmd1.PNG
--------------------------------------------------------------------------------
/images/cmi.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/cmi.PNG
--------------------------------------------------------------------------------
/images/cmp.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/cmp.PNG
--------------------------------------------------------------------------------
/images/cmp1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/cmp1.PNG
--------------------------------------------------------------------------------
/images/cms.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/cms.PNG
--------------------------------------------------------------------------------
/images/cmv.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/cmv.PNG
--------------------------------------------------------------------------------
/images/cp.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/cp.PNG
--------------------------------------------------------------------------------
/images/cp1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/cp1.PNG
--------------------------------------------------------------------------------
/images/cr1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/cr1.PNG
--------------------------------------------------------------------------------
/images/crt1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/crt1.PNG
--------------------------------------------------------------------------------
/images/crt2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/crt2.PNG
--------------------------------------------------------------------------------
/images/crt3.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/crt3.PNG
--------------------------------------------------------------------------------
/images/crt4.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/crt4.PNG
--------------------------------------------------------------------------------
/images/cs.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/cs.png
--------------------------------------------------------------------------------
/images/cs1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/cs1.PNG
--------------------------------------------------------------------------------
/images/cs2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/cs2.PNG
--------------------------------------------------------------------------------
/images/csd.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/csd.PNG
--------------------------------------------------------------------------------
/images/csec.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/csec.PNG
--------------------------------------------------------------------------------
/images/csi.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/csi.PNG
--------------------------------------------------------------------------------
/images/csr.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/csr.PNG
--------------------------------------------------------------------------------
/images/csr1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/csr1.PNG
--------------------------------------------------------------------------------
/images/csr2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/csr2.PNG
--------------------------------------------------------------------------------
/images/csr3.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/csr3.PNG
--------------------------------------------------------------------------------
/images/csr4.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/csr4.PNG
--------------------------------------------------------------------------------
/images/das.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/das.PNG
--------------------------------------------------------------------------------
/images/dask.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/dask.PNG
--------------------------------------------------------------------------------
/images/db.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/db.PNG
--------------------------------------------------------------------------------
/images/dc.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/dc.PNG
--------------------------------------------------------------------------------
/images/deployment.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/deployment.PNG
--------------------------------------------------------------------------------
/images/deployment1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/deployment1.PNG
--------------------------------------------------------------------------------
/images/deployment2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/deployment2.PNG
--------------------------------------------------------------------------------
/images/dp.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/dp.PNG
--------------------------------------------------------------------------------
/images/drain.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/drain.PNG
--------------------------------------------------------------------------------
/images/ds-uc-kp.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/ds-uc-kp.PNG
--------------------------------------------------------------------------------
/images/ds-uc.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/ds-uc.PNG
--------------------------------------------------------------------------------
/images/ds-ucn.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/ds-ucn.PNG
--------------------------------------------------------------------------------
/images/ds.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/ds.PNG
--------------------------------------------------------------------------------
/images/ds1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/ds1.PNG
--------------------------------------------------------------------------------
/images/ds2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/ds2.PNG
--------------------------------------------------------------------------------
/images/dsd.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/dsd.PNG
--------------------------------------------------------------------------------
/images/dst.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/dst.PNG
--------------------------------------------------------------------------------
/images/el.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/el.PNG
--------------------------------------------------------------------------------
/images/enc.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/enc.PNG
--------------------------------------------------------------------------------
/images/entry.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/entry.PNG
--------------------------------------------------------------------------------
/images/entry1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/entry1.PNG
--------------------------------------------------------------------------------
/images/env.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/env.PNG
--------------------------------------------------------------------------------
/images/er.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/er.PNG
--------------------------------------------------------------------------------
/images/erest.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/erest.PNG
--------------------------------------------------------------------------------
/images/etc1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/etc1.PNG
--------------------------------------------------------------------------------
/images/etc2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/etc2.PNG
--------------------------------------------------------------------------------
/images/etcd-ha.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/etcd-ha.PNG
--------------------------------------------------------------------------------
/images/etcd.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/etcd.PNG
--------------------------------------------------------------------------------
/images/etcd1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/etcd1.PNG
--------------------------------------------------------------------------------
/images/etcdctl.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/etcdctl.PNG
--------------------------------------------------------------------------------
/images/etcdctl1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/etcdctl1.PNG
--------------------------------------------------------------------------------
/images/ex.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/ex.PNG
--------------------------------------------------------------------------------
/images/hpms.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/hpms.PNG
--------------------------------------------------------------------------------
/images/hrd.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/hrd.PNG
--------------------------------------------------------------------------------
/images/hrd1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/hrd1.PNG
--------------------------------------------------------------------------------
/images/hrd2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/hrd2.PNG
--------------------------------------------------------------------------------
/images/hrd3.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/hrd3.PNG
--------------------------------------------------------------------------------
/images/hrd4.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/hrd4.PNG
--------------------------------------------------------------------------------
/images/hrd5.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/hrd5.PNG
--------------------------------------------------------------------------------
/images/hrd6.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/hrd6.PNG
--------------------------------------------------------------------------------
/images/img1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/img1.PNG
--------------------------------------------------------------------------------
/images/img2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/img2.PNG
--------------------------------------------------------------------------------
/images/ing1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/ing1.PNG
--------------------------------------------------------------------------------
/images/ing2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/ing2.PNG
--------------------------------------------------------------------------------
/images/jnode.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/jnode.PNG
--------------------------------------------------------------------------------
/images/jpod.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/jpod.PNG
--------------------------------------------------------------------------------
/images/k8s-arch.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/k8s-arch.PNG
--------------------------------------------------------------------------------
/images/k8s-arch1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/k8s-arch1.PNG
--------------------------------------------------------------------------------
/images/ka.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/ka.PNG
--------------------------------------------------------------------------------
/images/kc1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kc1.PNG
--------------------------------------------------------------------------------
/images/kc10.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kc10.PNG
--------------------------------------------------------------------------------
/images/kc11.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kc11.PNG
--------------------------------------------------------------------------------
/images/kc12.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kc12.PNG
--------------------------------------------------------------------------------
/images/kc2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kc2.PNG
--------------------------------------------------------------------------------
/images/kc3.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kc3.PNG
--------------------------------------------------------------------------------
/images/kc4.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kc4.PNG
--------------------------------------------------------------------------------
/images/kc5.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kc5.PNG
--------------------------------------------------------------------------------
/images/kc6.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kc6.PNG
--------------------------------------------------------------------------------
/images/kc7.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kc7.PNG
--------------------------------------------------------------------------------
/images/kc8.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kc8.PNG
--------------------------------------------------------------------------------
/images/kc9.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kc9.PNG
--------------------------------------------------------------------------------
/images/kctl1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kctl1.PNG
--------------------------------------------------------------------------------
/images/kctl2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kctl2.PNG
--------------------------------------------------------------------------------
/images/key-value.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/key-value.PNG
--------------------------------------------------------------------------------
/images/key-value1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/key-value1.PNG
--------------------------------------------------------------------------------
/images/key-value2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/key-value2.PNG
--------------------------------------------------------------------------------
/images/key-value3.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/key-value3.PNG
--------------------------------------------------------------------------------
/images/kgn.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kgn.PNG
--------------------------------------------------------------------------------
/images/kp.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kp.PNG
--------------------------------------------------------------------------------
/images/ks.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/ks.PNG
--------------------------------------------------------------------------------
/images/ksec.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/ksec.PNG
--------------------------------------------------------------------------------
/images/kube-apiserver.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kube-apiserver.PNG
--------------------------------------------------------------------------------
/images/kube-apiserver1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kube-apiserver1.PNG
--------------------------------------------------------------------------------
/images/kube-apiserver2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kube-apiserver2.PNG
--------------------------------------------------------------------------------
/images/kube-apiserver3.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kube-apiserver3.PNG
--------------------------------------------------------------------------------
/images/kube-apiserver4.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kube-apiserver4.PNG
--------------------------------------------------------------------------------
/images/kube-controller-manager.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kube-controller-manager.PNG
--------------------------------------------------------------------------------
/images/kube-controller-manager0.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kube-controller-manager0.PNG
--------------------------------------------------------------------------------
/images/kube-controller-manager1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kube-controller-manager1.PNG
--------------------------------------------------------------------------------
/images/kube-controller-manager2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kube-controller-manager2.PNG
--------------------------------------------------------------------------------
/images/kube-controller-manager3.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kube-controller-manager3.PNG
--------------------------------------------------------------------------------
/images/kube-proxy.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kube-proxy.PNG
--------------------------------------------------------------------------------
/images/kube-proxy1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kube-proxy1.PNG
--------------------------------------------------------------------------------
/images/kube-proxy2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kube-proxy2.PNG
--------------------------------------------------------------------------------
/images/kube-scheduler1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kube-scheduler1.PNG
--------------------------------------------------------------------------------
/images/kube-scheduler2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kube-scheduler2.PNG
--------------------------------------------------------------------------------
/images/kube-scheduler3.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kube-scheduler3.PNG
--------------------------------------------------------------------------------
/images/kube-scheduler4.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kube-scheduler4.PNG
--------------------------------------------------------------------------------
/images/kube-scheduler5.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kube-scheduler5.PNG
--------------------------------------------------------------------------------
/images/kube1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kube1.png
--------------------------------------------------------------------------------
/images/kubectl.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kubectl.PNG
--------------------------------------------------------------------------------
/images/kubelet.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kubelet.PNG
--------------------------------------------------------------------------------
/images/kubelet1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kubelet1.PNG
--------------------------------------------------------------------------------
/images/kubelet2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kubelet2.PNG
--------------------------------------------------------------------------------
/images/kubeu.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kubeu.PNG
--------------------------------------------------------------------------------
/images/kubeu1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kubeu1.PNG
--------------------------------------------------------------------------------
/images/kubeu2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kubeu2.PNG
--------------------------------------------------------------------------------
/images/kubeu3.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kubeu3.PNG
--------------------------------------------------------------------------------
/images/kublet.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/kublet.PNG
--------------------------------------------------------------------------------
/images/la.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/la.PNG
--------------------------------------------------------------------------------
/images/labels-ckc.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/labels-ckc.PNG
--------------------------------------------------------------------------------
/images/labels.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/labels.PNG
--------------------------------------------------------------------------------
/images/lables-animals.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/lables-animals.PNG
--------------------------------------------------------------------------------
/images/lc.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/lc.PNG
--------------------------------------------------------------------------------
/images/lco.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/lco.PNG
--------------------------------------------------------------------------------
/images/ld.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/ld.PNG
--------------------------------------------------------------------------------
/images/ld1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/ld1.PNG
--------------------------------------------------------------------------------
/images/lf.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/lf.PNG
--------------------------------------------------------------------------------
/images/lg.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/lg.PNG
--------------------------------------------------------------------------------
/images/lk.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/lk.PNG
--------------------------------------------------------------------------------
/images/ln.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/ln.PNG
--------------------------------------------------------------------------------
/images/loga.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/loga.PNG
--------------------------------------------------------------------------------
/images/logs-k8s.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/logs-k8s.png
--------------------------------------------------------------------------------
/images/logs.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/logs.PNG
--------------------------------------------------------------------------------
/images/logs1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/logs1.PNG
--------------------------------------------------------------------------------
/images/loop.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/loop.PNG
--------------------------------------------------------------------------------
/images/lpod.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/lpod.PNG
--------------------------------------------------------------------------------
/images/lrs.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/lrs.PNG
--------------------------------------------------------------------------------
/images/lrs1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/lrs1.PNG
--------------------------------------------------------------------------------
/images/ls.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/ls.PNG
--------------------------------------------------------------------------------
/images/lse.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/lse.PNG
--------------------------------------------------------------------------------
/images/lt.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/lt.PNG
--------------------------------------------------------------------------------
/images/mcp.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/mcp.PNG
--------------------------------------------------------------------------------
/images/mcpc.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/mcpc.PNG
--------------------------------------------------------------------------------
/images/mem.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/mem.PNG
--------------------------------------------------------------------------------
/images/mmp.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/mmp.PNG
--------------------------------------------------------------------------------
/images/mode.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/mode.PNG
--------------------------------------------------------------------------------
/images/mode1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/mode1.PNG
--------------------------------------------------------------------------------
/images/mon.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/mon.PNG
--------------------------------------------------------------------------------
/images/ms.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/ms.PNG
--------------------------------------------------------------------------------
/images/ms1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/ms1.PNG
--------------------------------------------------------------------------------
/images/msg.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/msg.PNG
--------------------------------------------------------------------------------
/images/na.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/na.PNG
--------------------------------------------------------------------------------
/images/na1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/na1.PNG
--------------------------------------------------------------------------------
/images/na2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/na2.PNG
--------------------------------------------------------------------------------
/images/namespace.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/namespace.PNG
--------------------------------------------------------------------------------
/images/namespace1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/namespace1.PNG
--------------------------------------------------------------------------------
/images/nat.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/nat.PNG
--------------------------------------------------------------------------------
/images/nats.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/nats.PNG
--------------------------------------------------------------------------------
/images/nats1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/nats1.PNG
--------------------------------------------------------------------------------
/images/node-auth.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/node-auth.png
--------------------------------------------------------------------------------
/images/node-controller.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/node-controller.PNG
--------------------------------------------------------------------------------
/images/node.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/node.PNG
--------------------------------------------------------------------------------
/images/note.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/note.PNG
--------------------------------------------------------------------------------
/images/note1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/note1.PNG
--------------------------------------------------------------------------------
/images/np.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/np.PNG
--------------------------------------------------------------------------------
/images/npol.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/npol.PNG
--------------------------------------------------------------------------------
/images/npol1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/npol1.PNG
--------------------------------------------------------------------------------
/images/npol2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/npol2.PNG
--------------------------------------------------------------------------------
/images/npol3.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/npol3.PNG
--------------------------------------------------------------------------------
/images/npol4.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/npol4.PNG
--------------------------------------------------------------------------------
/images/npolsec.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/npolsec.PNG
--------------------------------------------------------------------------------
/images/ns-old.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/ns-old.PNG
--------------------------------------------------------------------------------
/images/ns.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/ns.PNG
--------------------------------------------------------------------------------
/images/ns1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/ns1.PNG
--------------------------------------------------------------------------------
/images/ns10.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/ns10.PNG
--------------------------------------------------------------------------------
/images/ns11.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/ns11.PNG
--------------------------------------------------------------------------------
/images/ns12.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/ns12.PNG
--------------------------------------------------------------------------------
/images/ns13.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/ns13.PNG
--------------------------------------------------------------------------------
/images/ns2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/ns2.PNG
--------------------------------------------------------------------------------
/images/ns3.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/ns3.PNG
--------------------------------------------------------------------------------
/images/ns4.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/ns4.PNG
--------------------------------------------------------------------------------
/images/ns5.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/ns5.PNG
--------------------------------------------------------------------------------
/images/ns6.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/ns6.PNG
--------------------------------------------------------------------------------
/images/ns7.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/ns7.PNG
--------------------------------------------------------------------------------
/images/ns8.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/ns8.PNG
--------------------------------------------------------------------------------
/images/ns9.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/ns9.PNG
--------------------------------------------------------------------------------
/images/nsec.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/nsec.PNG
--------------------------------------------------------------------------------
/images/nsel.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/nsel.PNG
--------------------------------------------------------------------------------
/images/nsel1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/nsel1.PNG
--------------------------------------------------------------------------------
/images/nsl.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/nsl.PNG
--------------------------------------------------------------------------------
/images/opt.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/opt.PNG
--------------------------------------------------------------------------------
/images/os.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/os.PNG
--------------------------------------------------------------------------------
/images/other-controllers.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/other-controllers.PNG
--------------------------------------------------------------------------------
/images/pki.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/pki.PNG
--------------------------------------------------------------------------------
/images/pod.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/pod.PNG
--------------------------------------------------------------------------------
/images/pod1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/pod1.PNG
--------------------------------------------------------------------------------
/images/pod2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/pod2.PNG
--------------------------------------------------------------------------------
/images/pod3.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/pod3.PNG
--------------------------------------------------------------------------------
/images/pod4.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/pod4.PNG
--------------------------------------------------------------------------------
/images/post.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/post.PNG
--------------------------------------------------------------------------------
/images/prvr.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/prvr.PNG
--------------------------------------------------------------------------------
/images/prvr1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/prvr1.PNG
--------------------------------------------------------------------------------
/images/r1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/r1.PNG
--------------------------------------------------------------------------------
/images/r2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/r2.PNG
--------------------------------------------------------------------------------
/images/r3.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/r3.PNG
--------------------------------------------------------------------------------
/images/r4.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/r4.PNG
--------------------------------------------------------------------------------
/images/rb.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/rb.PNG
--------------------------------------------------------------------------------
/images/rbac.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/rbac.PNG
--------------------------------------------------------------------------------
/images/rbac1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/rbac1.PNG
--------------------------------------------------------------------------------
/images/rbac2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/rbac2.PNG
--------------------------------------------------------------------------------
/images/rbac3.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/rbac3.PNG
--------------------------------------------------------------------------------
/images/rbac4.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/rbac4.PNG
--------------------------------------------------------------------------------
/images/rbac5.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/rbac5.PNG
--------------------------------------------------------------------------------
/images/rc.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/rc.PNG
--------------------------------------------------------------------------------
/images/rc1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/rc1.PNG
--------------------------------------------------------------------------------
/images/rc2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/rc2.PNG
--------------------------------------------------------------------------------
/images/rc3.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/rc3.PNG
--------------------------------------------------------------------------------
/images/rcd.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/rcd.PNG
--------------------------------------------------------------------------------
/images/rcd1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/rcd1.PNG
--------------------------------------------------------------------------------
/images/rci.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/rci.PNG
--------------------------------------------------------------------------------
/images/rcrl.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/rcrl.PNG
--------------------------------------------------------------------------------
/images/ref.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/ref.PNG
--------------------------------------------------------------------------------
/images/relational-dbs.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/relational-dbs.PNG
--------------------------------------------------------------------------------
/images/replication-controller.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/replication-controller.PNG
--------------------------------------------------------------------------------
/images/rl.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/rl.PNG
--------------------------------------------------------------------------------
/images/roles.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/roles.PNG
--------------------------------------------------------------------------------
/images/rollc.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/rollc.PNG
--------------------------------------------------------------------------------
/images/rollv.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/rollv.PNG
--------------------------------------------------------------------------------
/images/rr-pod.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/rr-pod.PNG
--------------------------------------------------------------------------------
/images/rr.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/rr.PNG
--------------------------------------------------------------------------------
/images/rs.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/rs.PNG
--------------------------------------------------------------------------------
/images/rs1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/rs1.PNG
--------------------------------------------------------------------------------
/images/rs2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/rs2.PNG
--------------------------------------------------------------------------------
/images/rsc.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/rsc.PNG
--------------------------------------------------------------------------------
/images/rsl.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/rsl.PNG
--------------------------------------------------------------------------------
/images/rsl1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/rsl1.PNG
--------------------------------------------------------------------------------
/images/rsm.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/rsm.PNG
--------------------------------------------------------------------------------
/images/sc1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/sc1.png
--------------------------------------------------------------------------------
/images/sc2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/sc2.PNG
--------------------------------------------------------------------------------
/images/sc3.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/sc3.PNG
--------------------------------------------------------------------------------
/images/sec.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/sec.PNG
--------------------------------------------------------------------------------
/images/secd.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/secd.PNG
--------------------------------------------------------------------------------
/images/sech.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/sech.PNG
--------------------------------------------------------------------------------
/images/seck.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/seck.PNG
--------------------------------------------------------------------------------
/images/seco.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/seco.PNG
--------------------------------------------------------------------------------
/images/secp.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/secp.PNG
--------------------------------------------------------------------------------
/images/secpv.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/secpv.PNG
--------------------------------------------------------------------------------
/images/secv.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/secv.PNG
--------------------------------------------------------------------------------
/images/sl.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/sl.PNG
--------------------------------------------------------------------------------
/images/sleep.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/sleep.PNG
--------------------------------------------------------------------------------
/images/sleep1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/sleep1.PNG
--------------------------------------------------------------------------------
/images/sleep2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/sleep2.PNG
--------------------------------------------------------------------------------
/images/sort.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/sort.PNG
--------------------------------------------------------------------------------
/images/sp.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/sp.PNG
--------------------------------------------------------------------------------
/images/sp1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/sp1.PNG
--------------------------------------------------------------------------------
/images/sp2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/sp2.PNG
--------------------------------------------------------------------------------
/images/sp3.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/sp3.PNG
--------------------------------------------------------------------------------
/images/sp4.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/sp4.PNG
--------------------------------------------------------------------------------
/images/sp5.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/sp5.PNG
--------------------------------------------------------------------------------
/images/spvsds.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/spvsds.PNG
--------------------------------------------------------------------------------
/images/srv-types.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/srv-types.PNG
--------------------------------------------------------------------------------
/images/srv1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/srv1.PNG
--------------------------------------------------------------------------------
/images/srv2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/srv2.PNG
--------------------------------------------------------------------------------
/images/srv3.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/srv3.PNG
--------------------------------------------------------------------------------
/images/srv4.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/srv4.PNG
--------------------------------------------------------------------------------
/images/srvc1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/srvc1.PNG
--------------------------------------------------------------------------------
/images/srvc2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/srvc2.PNG
--------------------------------------------------------------------------------
/images/srvc3.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/srvc3.PNG
--------------------------------------------------------------------------------
/images/srvnp.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/srvnp.PNG
--------------------------------------------------------------------------------
/images/srvnp1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/srvnp1.PNG
--------------------------------------------------------------------------------
/images/srvnp2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/srvnp2.PNG
--------------------------------------------------------------------------------
/images/srvnp3.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/srvnp3.PNG
--------------------------------------------------------------------------------
/images/srvnp4.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/srvnp4.PNG
--------------------------------------------------------------------------------
/images/stg1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/stg1.PNG
--------------------------------------------------------------------------------
/images/stg2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/stg2.PNG
--------------------------------------------------------------------------------
/images/stg3.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/stg3.PNG
--------------------------------------------------------------------------------
/images/sum.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/sum.PNG
--------------------------------------------------------------------------------
/images/svc.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/svc.PNG
--------------------------------------------------------------------------------
/images/sxc1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/sxc1.PNG
--------------------------------------------------------------------------------
/images/sxc2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/sxc2.PNG
--------------------------------------------------------------------------------
/images/tandt.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/tandt.PNG
--------------------------------------------------------------------------------
/images/tls.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/tls.PNG
--------------------------------------------------------------------------------
/images/tls1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/tls1.PNG
--------------------------------------------------------------------------------
/images/tn-na.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/tn-na.PNG
--------------------------------------------------------------------------------
/images/tn-ns.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/tn-ns.PNG
--------------------------------------------------------------------------------
/images/tn-nsa.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/tn-nsa.png
--------------------------------------------------------------------------------
/images/tn.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/tn.PNG
--------------------------------------------------------------------------------
/images/tntm.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/tntm.PNG
--------------------------------------------------------------------------------
/images/tp.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/tp.PNG
--------------------------------------------------------------------------------
/images/traffic.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/traffic.PNG
--------------------------------------------------------------------------------
/images/up.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/up.PNG
--------------------------------------------------------------------------------
/images/up1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/up1.PNG
--------------------------------------------------------------------------------
/images/up2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/up2.PNG
--------------------------------------------------------------------------------
/images/view.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/view.PNG
--------------------------------------------------------------------------------
/images/web.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/web.PNG
--------------------------------------------------------------------------------
/images/web1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/web1.PNG
--------------------------------------------------------------------------------
/images/webhook.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/webhook.PNG
--------------------------------------------------------------------------------
/images/wrk.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mmumshad/certified-kubernetes-administrator-course/dd3c388941e188a018b3988d8fb562afaa8fdfe8/images/wrk.PNG
--------------------------------------------------------------------------------
/ubuntu/allow-bridge-nf-traffic.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | sysctl net.bridge.bridge-nf-call-iptables=1
3 |
--------------------------------------------------------------------------------
/ubuntu/install-docker-2.sh:
--------------------------------------------------------------------------------
1 | cd /tmp
2 | curl -fsSL https://get.docker.com -o get-docker.sh
3 | sh /tmp/get-docker.sh
4 |
--------------------------------------------------------------------------------
/ubuntu/install-docker.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | export DEBIAN_FRONTEND=noninteractive
3 | apt-get update \
4 | && apt-get install -y \
5 | apt-transport-https \
6 | ca-certificates \
7 | curl \
8 | software-properties-common \
9 | && curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add - \
10 | && add-apt-repository \
11 | "deb https://download.docker.com/linux/$(. /etc/os-release; echo "$ID") \
12 | $(lsb_release -cs) \
13 | stable" \
14 | && apt-get update \
15 | && apt-get install -y docker-ce=$(apt-cache madison docker-ce | grep 18.06 | head -1 | awk '{print $3}')
16 |
--------------------------------------------------------------------------------
/ubuntu/update-dns.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | sed -i -e 's/#DNS=/DNS=8.8.8.8/' /etc/systemd/resolved.conf
4 |
5 | service systemd-resolved restart
--------------------------------------------------------------------------------
/ubuntu/vagrant/install-guest-additions.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | GUEST_ADDITION_VERSION=5.2.4
3 | GUEST_ADDITION_ISO=VBoxGuestAdditions_${GUEST_ADDITION_VERSION}.iso
4 | GUEST_ADDITION_MOUNT=/media/VBoxGuestAdditions
5 |
6 | apt-get install linux-headers-$(uname -r) build-essential dkms
7 |
8 | wget http://download.virtualbox.org/virtualbox/${GUEST_ADDITION_VERSION}/${GUEST_ADDITION_ISO}
9 | mkdir -p ${GUEST_ADDITION_MOUNT}
10 | mount -o loop,ro ${GUEST_ADDITION_ISO} ${GUEST_ADDITION_MOUNT}
11 | sh ${GUEST_ADDITION_MOUNT}/VBoxLinuxAdditions.run
12 | rm ${GUEST_ADDITION_ISO}
13 | umount ${GUEST_ADDITION_MOUNT}
14 | rmdir ${GUEST_ADDITION_MOUNT}
15 |
--------------------------------------------------------------------------------
/ubuntu/vagrant/setup-hosts.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | set -e
3 | IFNAME=$1
4 | ADDRESS="$(ip -4 addr show $IFNAME | grep "inet" | head -1 |awk '{print $2}' | cut -d/ -f1)"
5 | sed -e "s/^.*${HOSTNAME}.*/${ADDRESS} ${HOSTNAME} ${HOSTNAME}.local/" -i /etc/hosts
6 |
7 | # remove ubuntu-bionic entry
8 | sed -e '/^.*ubuntu-bionic.*/d' -i /etc/hosts
9 |
10 | # Update /etc/hosts about other hosts
11 | cat >> /etc/hosts <