Upgrade & Secure Your Future with DevOps, SRE, DevSecOps, MLOps!
We spend hours scrolling social media and waste money on things we forget, but won’t spend 30 minutes a day earning certifications that can change our lives.
Master in DevOps, SRE, DevSecOps & MLOps by DevOps School!
Learn from Guru Rajesh Kumar and double your salary in just one year.
FEEDBACK – https://www.rajeshkumar.xyz/feedback/
SLIDES – https://devopsschool.com/slides/
Day 1 – Docker
Lab Machine:
https://docs.google.com/forms/d/1312zjI9dWITAobCg6N6ozg5p8myaBmlWxiDo3ZDnaDM/viewform
Lab – 1
https://www.devopsschool.com/blog/lifecycle-of-docker-containers/
Slides –
https://devopsschool.com/slides/docker/index.html
Docker Lab Access
https://github.com/devopsschool-training-notes/Master-in-Devops-Engineering-MDE/tree/master/key
PUTTY Tutorials
https://www.devopsschool.com/blog/how-to-login-to-linux-server-using-putty/
How to install Docker?
Day 1 – Assigment –
https://www.devopsschool.com/forum/d/340-what-is-docker-and-containers
Day 2 – Docker
Lab – 2. – https://www.devopsschool.com/blog/docker-lab-excercise-assignment-2/
Concept of PID1 – https://www.devopsschool.com/blog/understanding-pid-1-physical-servers-virtual-machines-and-containers/
Lab 3 – https://www.devopsschool.com/blog/docker-lab-excercise-assignment-3-docker-volume/
Docker Tutorials: command Line Complete Referenece. – https://www.devopsschool.com/blog/the-docker-command-line-complete-referenece/
Lab 4 – https://www.devopsschool.com/blog/dockerfile-lab-exercise-1/
Day 2 Assignment –
Day 3
Lab 1 – https://www.devopsschool.com/blog/docker-lab-excercise-assignment-4-docker-networking/
Lab 2 – Docker Volume – https://www.devopsschool.com/blog/docker-lab-excercise-assignment-7/
Assignment 1 – Docker networking – https://www.devopsschool.com/forum/d/370-docker-networking-questions
Assigment 2 – Kubernetes – https://www.devopsschool.com/forum/d/371-kubernetes-questions
Kubernetes Components – https://www.devopsschool.com/blog/details-kubernetes-components-in-master-worker/
Day 4
How to setup Kubernetes cluster in ubuntu 20
https://www.devopsschool.com/blog/kubernetes-1-23-6-cluster-setup-master-and-worker-in-ubuntu-20-04/
Master - 65.2.171.73 [ become a root ]
Worker - 43.205.99.83
more ~/.kube/config
kubectl
kubectl cluster-info
kubectl get nodes
kubectl get pods --all-namespaces
kubectl version
kubectl config view
kubectl api-resources
kubectl get ns
kubectl get pods -n=kube-system
POD === VM
ReplicationController === ASG
Deployment === ASG+++
Service === Net LB
Code language: JavaScript (javascript)
LAB 1 – Working with kubernetes namespaces
apiVersion: v1
kind: Pod
metadata:
name: rajesh
labels:
app: helloworld
spec:
containers:
- name: devopsschool1
image: scmgalaxy/nginx-devopsschoolv1
ports:
- name: nginx-port
containerPort: 80
107 vi pod.yaml
108 clear
109 ls
110 kubectl create -f pod.yaml
111 kubectl get pods
112 kubectl describe pod rajesh
113 clear
114 kubectl describe pod rajesh
115 clear
116 kubectl get pods
117 vi pod.yaml
118 kubectl apply -f pod.yaml
119 kubectl describe pod rajesh
120 clear
121 ls
122 kubectl get pods
123 kubectl get pods -o iwde
124 kubectl get pods -o wide
125 kubectl delete -f pod.yaml
126 kubectl get pods
============================================================
How to use container?
--------------------------------
exex
attach
-p
logs
cp
----------------------------
Troubleshooting and Debugging Commands:
exec Execute a command in a container
attach Attach to a running container
logs Print the logs for a container in a pod
describe Show details of a specific resource or group of resources
cp Copy files and directories to and from containers
auth Inspect authorization
port-forward Forward one or more local ports to a pod
131 kubectl get pods
132 kubectl apply -f pod.yaml
133 kubectl get pods
134 kubectl exec rajesh ls
135 kubectl exec -it rajesh /bin/bash
136 clear
137 ls
138 kubectl
139 clear
140 kubectl exec -h
141 cler
142 clear
143 s
144 kubectl attach rajesh
145 kubectl logs rajesh
146 clear
147 ls
148 kubectl exec rajesh ls /opt
149 kubectl cp pod.yaml rajesh:/opt
150 kubectl exec rajesh ls /opt
151 kubectl auth create pod
152 kubectl auth -h
153 kubectl auth can-n create pod
154 kubectl auth can-i create pod
154 kubectl auth can-i create pod
155 kubectl auth can-i delete pod
156 history
157 kubectl attach rajeshclear
158 clear
159 kubectl get pods -o wide
160 kubectl port-forward -h
161 clear
162 kubectl port-forward --address 0.0.0.0 pod/rajesh 8888:80
Code language: JavaScript (javascript)
Replication - 1 POD many
Controller - 5 === 5
apiVersion: v1
kind: ReplicationController
metadata:
name: rajrc
spec:
replicas: 5
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: scmgalaxy/nginx-devopsschoolv1
166 vi rc.yaml
167 kubectl create -f rc.yaml
168 kubectl get rc
169 kubectl get pods
170 clear
171 kubectl edit rc rajrc
172 kubectl get rc
173 kubectl get pods
174 clear
175 kubectl edit rc rajrc
176 clear
177 kubectl get pods
178 clear
179 ls
180 kubectl get pods
181 kubectl edit rc rajrc
182 kubectl get pods
183 clear
184 kubectl get pods
185 clear
186 kubectl get pods
187 celar
188 kubectl get pods
189 clear
190 kubectl get pods
191 clear
192 kubectl get pods
193 clear
194 kubectl get pods
195 kubectl delete pod rajrc-55fsq rajrc-czm6n
196 kubectl get pods
197 kubectl get rc
198 kubectl delete rc rajrc
199 kubectl get rc
200 kubectl get pods
Code language: JavaScript (javascript)
Lab – Kubernetes Deployment
Day 5
Service
kubectl create deployment backend --image=scmgalaxy/nginx-devopsschoolv2 --replicas=10
kubectl expose deploy/backend --port=8080 --target-port=80 --name=backend
kubectl create deployment frontend --image=scmgalaxy/nginx-devopsschoolv1 --replicas=10
kubectl expose deploy/frontend --port=8080 --target-port=80 --name=frontend --type=NodePort
kubectl expose deploy/frontend --port=8080 --target-port=80 --name=lb --type=LoadBalancer
https://www.devopsschool.com/blog/kubernetes-service-example-programs/
https://www.devopsschool.com/blog/kubernetes-tutorials-pod-load-balancing-using-service/
How to Access Openshift?
### GUI
https://console-openshift-console.apps.smcohia1q443b84fbf.centralindia.aroapp.io/
kubeadmin
Uft6X-iemZz-wIn6i-JNHTz
### OC & kubectl
Step 1 - Install OC
<blockquote class="wp-embedded-content" data-secret="pLjySUNkba"><a href="https://www.devopsschool.com/blog/openshift-how-to-install-openshift-cli-oc/">OpenShift: How to Install OpenShift CLI oc</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted" style="position: absolute; visibility: hidden;" title="“OpenShift: How to Install OpenShift CLI oc” — DevOpsSchool.com" src="https://www.devopsschool.com/blog/openshift-how-to-install-openshift-cli-oc/embed/#?secret=jWV619VHBV#?secret=pLjySUNkba" data-secret="pLjySUNkba" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
https://github.com/okd-project/okd/releases/download/4.20.0-okd-scos.ec.6/openshift-client-windows-4.20.0-okd-scos.ec.6.zip
Step 2 -
oc login --token=sha256~3aP6Ceetl8ZIXHH7fjbAigf5uq89HtDIyq5vNyT1j5k --server=https://api.smcohia1q443b84fbf.centralindia.aroapp.io:6443
Code language: HTML, XML (xml)
OPENSHIFTT LAB – https://www.devopsschool.com/blog/openshift-local-crc-basic-learning-workflow/
WRAP UP
Certification Process -
Check email ---> Invite -> Fill --> Certificate pdf
https://www.devopsschool.com/certificates/
Mandatory POST Test - https://forms.office.com/r/nKvcdtzvmZ
Feedback: https://forms.office.com/r/nnBTAWfSjQ
Helping Rajesh - https://g.page/r/CRYkxTMGVPIMEAE/review
Code language: JavaScript (javascript)