message
This commit is contained in:
parent
e4078cf881
commit
0630eb32e6
282
history-15Oct24.txt
Normal file
282
history-15Oct24.txt
Normal file
@ -0,0 +1,282 @@
|
||||
1 git clone https://github.com/sandervanvugt/cka
|
||||
2 cd cka
|
||||
3 ls
|
||||
4 ./setup-container.sh
|
||||
5 ls
|
||||
6 ./setup-kubetools.sh
|
||||
7 history
|
||||
8 sudo kubeadm init
|
||||
9 cd
|
||||
10 mkdir -p $HOME/.kube
|
||||
11 kubectl get all
|
||||
12 kubectl get pods -n kube-system
|
||||
13 source <(kubectl completion bash)
|
||||
14 kubectl describe -n kube-system pod coredns-7c65d6cfc9-z5rsc
|
||||
15 kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml
|
||||
16 kubectl get pods -n kube-system
|
||||
17 history
|
||||
18 kubectl get nodes
|
||||
19 kubectl describe node control
|
||||
20 history
|
||||
21 cd cka/
|
||||
22 ./counter.sh 12
|
||||
23 kubectl get nodes
|
||||
24 sudo apt install helm
|
||||
25 helm
|
||||
26 cd ..
|
||||
27 ls
|
||||
28 tar xvf helm-v3.16.2-linux-arm64.tar.gz
|
||||
29 sudo cp linux-arm64/helm /usr/local/bin
|
||||
30 helm upgrade --install ingress-nginx ingress-nginx --repo https://kubernetes.github.io/ingress-nginx --namespace ingress-nginx --create-namespace
|
||||
31 kubectl get all -n ingress-nginx
|
||||
32 history
|
||||
33 kubectl create deploy nginxsvc --image=nginx --port=80
|
||||
34 kubectl expose deploy nginxsvc
|
||||
35 kubectl get all --selector app=nginxsvc
|
||||
36 kubectl create ingress nginxsvc --class=nginx --rule=nginxsvc.info/*=nginxsvc:80
|
||||
37 kubectl port-forward -n ingress-nginx svc/ingress-nginx-controller 8080:80
|
||||
38 bg
|
||||
39 sudo sh -c 'echo "127.0.0.1 nginxsvc.info" >> /etc/hosts'
|
||||
40 cat /etc/hosts
|
||||
41 curl nginxsvc.info:8080
|
||||
42 kubectl create ing -h | less
|
||||
43 history
|
||||
44 kubectl get all -n ingress-nginx
|
||||
45 kubectl edit -n ingress-nginx svc ingress-nginx-controller
|
||||
46 kubectl get all -n ingress-nginx
|
||||
47 cd cka
|
||||
48 ./counter.sh 1
|
||||
49 history
|
||||
50 kubectl edit svc nginxsvc
|
||||
51 kubectl describe ingress nginxsvc
|
||||
52 kubectl describe svc nginxsvc
|
||||
53 kubectl edit svc nginxsvc
|
||||
54 kubectl describe svc nginxsvc
|
||||
55 kubectl describe node control | less
|
||||
56 df -h
|
||||
57 kubectl create ns limited
|
||||
58 kubectl create quota qtest --hard pods=3,cpu=100m,memory=500Mi
|
||||
59 kubectl get pods
|
||||
60 kubectl scale deploy nginxsvc --replicas=5
|
||||
61 kubectl get all
|
||||
62 kubectl delete quota qtest
|
||||
63 kubectl scale deploy nginxsvc --replicas=5 -n limited
|
||||
64 kubectl create quota qtest --hard pods=3,cpu=100m,memory=500Mi -n limited
|
||||
65 kubectl describe quota -n limited
|
||||
66 kubectl create deploy nginx --image=nginx --replicas=3 -n limited
|
||||
67 kubectl get all -n limited
|
||||
68 kubectl describe rs nginxsvc-7f8cdcb4db
|
||||
69 kubectl get all -n limited
|
||||
70 kubectl -n limited describe rs nginx-676b6c5bbc
|
||||
71 history
|
||||
72 kubectl -n limited set resources deploy nginx --requests cpu=100m,memory=5Mi --limits cpu=200m,memory=20m
|
||||
73 kubectl -n limited set resources deploy nginx --requests cpu=100m,memory=20Mi --limits cpu=200m,memory=40m
|
||||
74 kubectl -n limited set resources deploy nginx --requests cpu=100m,memory=20Mi --limits cpu=200m,memory=40Mi
|
||||
75 kubectl get pods -n limited
|
||||
76 kubectl get all -n limited
|
||||
77 kubectl scale -n limited deploy nginx --replicas=4
|
||||
78 kubectl scale -n limited deploy nginx --replicas=3
|
||||
79 kubectl get all -n limited
|
||||
80 kubectl describe -n limited quota qtest
|
||||
81 kubectl edit quota -n limited qtest
|
||||
82 kubectl get all -n limited
|
||||
83 kubectl scale -n limited deploy nginx --replicas=3
|
||||
84 kubectl get all -n limited
|
||||
85 kubectl describe -n limited quota qtest
|
||||
86 kubectl scale -n limited deploy nginx --replicas=2
|
||||
87 kubectl get all -n limited
|
||||
88 kubectl scale -n limited deploy nginx --replicas=3
|
||||
89 kubectl get all -n limited
|
||||
90 history
|
||||
91 kubectl create ns limited
|
||||
92 vim limitrange.yaml
|
||||
93 kubectl apply -f limitrange.yaml -n limited
|
||||
94 kubectl describe ns limited
|
||||
95 kubectl run limitpod --image=nginx -n limited
|
||||
96 kubectl -n limited delete quota
|
||||
97 kubectl -n limited delete quota qtest
|
||||
98 kubectl run limitpod --image=nginx -n limited
|
||||
99 kubectl describe -n limited pod limitpod
|
||||
100 history
|
||||
101 kubectl get pods -A -o wide
|
||||
102 kubectl get pods -o wide
|
||||
103 kubectl create deploy testdeploy --image=nginx --replicas=6
|
||||
104 kubectl get pods -o wide
|
||||
105 kubectl drain worker2
|
||||
106 kubectl drain worker2 --ignore-daemonsets --force
|
||||
107 kubectl get pods
|
||||
108 kubectl get pods -o wide
|
||||
109 kubectl get nodes
|
||||
110 kubectl describe node worker2
|
||||
111 kubectl edit node worker2
|
||||
112 kubectl uncordon worker2
|
||||
113 kubectl get pods -o wide
|
||||
114 kubectl create newweb --image=nginx --replicas=20
|
||||
115 kubectl create deploy newweb --image=nginx --replicas=20
|
||||
116 kubectl get pods -o wide
|
||||
117 kubectl delete deploy newweb
|
||||
118 history
|
||||
119 sudo ls -l /etc/kubernetes/manifests
|
||||
120 kubectl run staticpod --image=nginx --dry-run=client -o yaml
|
||||
121 kubectl get pods
|
||||
122 sudo -i
|
||||
123 history >> /tmp/history-14Oct24.txt
|
||||
124 vim /tmp/history-14Oct24.txt
|
||||
125 kubectl config view
|
||||
126 kubectl api-resources | grep -i networkp
|
||||
127 vim nwpolicy-complete-example.yaml
|
||||
128 kubectl apply -f nwpolicy-complete-example.yaml
|
||||
129 kubectl expose pod nginx --port=80
|
||||
130 kubectl get svc
|
||||
131 kubectl exec -it busybox -- wget --spider --timeout=1 nginx
|
||||
132 vim nwpolicy-complete-example.yaml
|
||||
133 kubectl lab pod busybox access=true
|
||||
134 kubectl label pod busybox access=true
|
||||
135 kubectl exec -it busybox -- wget --spider --timeout=1 nginx
|
||||
136 history
|
||||
137 kubectl create ns new-namespace
|
||||
138 kubectl create ns nwp-namespace
|
||||
139 vim nwp-lab9-1.yaml
|
||||
140 kubectl create -f nwp-lab9-1.yaml
|
||||
141 kubectl expose pod nwp-nginx --port=80
|
||||
142 kubectl exec -it nwp-busybox -n nwp-namespace -- wget --spider --timeout=1 nwp-nginx
|
||||
143 kubectl exec -it nwp-busybox -n nwp-namespace -- nslookup nwp-nginx
|
||||
144 kubectl exec -it nwp-busybox -n nwp-namespace -- wget --spider --timeout=1 nwp-nginx.default.svc.cluster.local
|
||||
145 vim nwp-lab9-2.yaml
|
||||
146 kubectl exec -it nwp-busybox -n nwp-namespace -- wget --spider --timeout=1 nwp-nginx.default.svc.cluster.local
|
||||
147 kubectl apply -f nwp-lab9-2.yaml
|
||||
148 kubectl exec -it nwp-busybox -n nwp-namespace -- wget --spider --timeout=1 nwp-nginx.default.svc.cluster.local
|
||||
149 kubectl create deploy busybox --image=busybox --sleep 3600
|
||||
150 kubectl create deploy busybox --image=busybox -- sleep 3600
|
||||
151 kubectl exec -it busybox-75cd85d546-wd6wq -- wget --spider --timeout=1 nwp-nginx
|
||||
152 kubectl get netpol
|
||||
153 kubectl delete netpol access-nginx
|
||||
154 kubectl delete netpol deny-from-other-namespaces
|
||||
155 history
|
||||
156 kubectl top pods
|
||||
157 kubectl top node
|
||||
158 kubectl apply -f https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml
|
||||
159 kubectl -n kube-system get pods
|
||||
160 kubectl edit -n kube-system deployments.apps metrics-server
|
||||
161 kubectl -n kube-system get pods
|
||||
162 kubectl top pods
|
||||
163 history
|
||||
164 kubectl get quota
|
||||
165 kubectl create quota -h | less
|
||||
166 #kubectl create quota my-quota --hard=cpu=1,memory=1G,pods=2,services=3,replicationcontrollers=2,resourcequotas=1,secrets=5,persistentvolumeclaims=10
|
||||
167 kubectl create quota one --hard=cpu=1
|
||||
168 kubectl create quota two --hard=memory=4G
|
||||
169 kubectl create quota three --hard=cpu=2
|
||||
170 kubectl describe ns default
|
||||
171 kubectl delete quota one two three
|
||||
172 kubectl top -h | less
|
||||
173 kubectl top pod -h | less
|
||||
174 kubectl top pod -A --sort-by="memory"
|
||||
175 history
|
||||
176 kubectl run testpox --image=nginx --dry-run=client -o yaml
|
||||
177 kubectl get pods
|
||||
178 history
|
||||
179 kubectl get pods
|
||||
180 sudo apt install etcd-client
|
||||
181 sudo etcdctl --help
|
||||
182 sudo ETCDCTL_API=2 etcdctl --help
|
||||
183 sudo ETCDCTL_API=3 etcdctl --help
|
||||
184 ps aux | grep 2379
|
||||
185 sudo etcdctl --endpoints=localhost:2379 --cacert /etc/kubernetes/pki/etcd/ca.rt --cert /etc/kubernetes/pki/etcd/server.crt --key /etc/kubernetes/pki/etcd/server.key get / --prefix --keys-only
|
||||
186 sudo etcdctl --endpoints=localhost:2379 --cacert /etc/kubernetes/pki/etcd/ca.crt --cert /etc/kubernetes/pki/etcd/server.crt --key /etc/kubernetes/pki/etcd/server.key get / --prefix --keys-only
|
||||
187 sudo etcdctl --endpoints=localhost:2379 --cacert /etc/kubernetes/pki/etcd/ca.crt --cert /etc/kubernetes/pki/etcd/server.crt --key /etc/kubernetes/pki/etcd/server.key snapshot save /tmp/etcdbackup.db
|
||||
188 ls -l /tmp/etcdbackup.db
|
||||
189 sudo etcdctl --write-out=table snapshot status /tmp/etcdbackup.db
|
||||
190 cp /tmp/etcdbackup.db /tmp/etcdbackup.db.2
|
||||
191 sudo cp /tmp/etcdbackup.db /tmp/etcdbackup.db.2
|
||||
192 history
|
||||
193 kubectl get deploy
|
||||
194 kubectl delete deploy --all
|
||||
195 kubectl get deploy
|
||||
196 cd /etc/kubernetes/manifests/
|
||||
197 ls
|
||||
198 sudo mv * ..
|
||||
199 sudo dnf install tree
|
||||
200 sudo apt install tree
|
||||
201 sudo tree /var/lib/etcd
|
||||
202 sudo mv /var/lib/etcd /var/lib/etcd-backup
|
||||
203 sudo tree /var/lib/etcd
|
||||
204 sudo etcdctl snapshot restore /tmp/etcdbackup.db --data-dir /var/lib/etcd
|
||||
205 sudo tree /var/lib/etcd
|
||||
206 sudo mv ../*.yaml .
|
||||
207 sudo crictl ps
|
||||
208 kubectl get deploy
|
||||
209 kubectl get pods
|
||||
210 kubectl delete deploy testdeploy
|
||||
211 history
|
||||
212 kubectl get nodes
|
||||
213*
|
||||
214 cd
|
||||
215 vim nodesel.yam;l
|
||||
216 vim nodesel.yaml
|
||||
217 kubectl apply -f nodesel.yaml
|
||||
218 kubectl get pods -o yaml
|
||||
219 kubectl get pods -o wide
|
||||
220 vim nodesel.yaml
|
||||
221 kubectl apply -f nodesel.yaml
|
||||
222 kubectl get pods
|
||||
223 kubectl describe pod islectnginxxxxxx
|
||||
224 kubectl get deploy
|
||||
225 kubectl get pods
|
||||
226 kubectl delete pods --force --timeout=0 testdeploy-7cd7d7ddc8-28mcq testdeploy-7cd7d7ddc8-fqh6v testdeploy-7cd7d7ddc8-ftk48 testdeploy-7cd7d7ddc8-pd7sd testdeploy-7cd7d7ddc8-stj67 testdeploy-7cd7d7ddc8-stxsx
|
||||
227 kubectl get pods
|
||||
228 history
|
||||
229 kubectl get node control -o yaml | less
|
||||
230 kubectl get ds -A
|
||||
231 kubectl get ds -n kube-system kube-proxy -o yaml | less
|
||||
232 kubectl get ds -n kube-system calico-node -o yaml | less
|
||||
233 history
|
||||
234 kubectl taint nodes worker1 storage=ssd:NoSchedule
|
||||
235 kubectl describe node worker1
|
||||
236 kubectl create deploy nginx-taint --image=nginx --replicas=3
|
||||
237 kubectl get pods -o wide
|
||||
238 cd cka/
|
||||
239 vim taint-toleration.yaml
|
||||
240 kubectl apply -f taint-toleration.yaml
|
||||
241 kubectl get pods -o wide | grep tole
|
||||
242 vim taint-toleration2.yaml
|
||||
243 kubectl apply -f taint-toleration2.yaml
|
||||
244 kubectl get pods -o wide | grep hdd
|
||||
245 vim taint-toleration2.yaml
|
||||
246 kubectl apply -f taint-toleration2.yaml
|
||||
247 vim taint-toleration2.yaml
|
||||
248 kubectl apply -f taint-toleration2.yaml
|
||||
249 kubectl get pods -o wide | grep exists
|
||||
250 history
|
||||
251 vim ~/.kube/config
|
||||
252 kubectl get sa
|
||||
253 kubectl get sa -n kube-system
|
||||
254 kubectl create role -h | less
|
||||
255 kubectl create rolebinding -h | less
|
||||
256 kubectl run mypod --image=alpine -- sleep 3600
|
||||
257 kubectl get pods mypod -o yaml | less
|
||||
258 kubectl exec -it mypod -- sh
|
||||
259 historyt
|
||||
260 history
|
||||
261 kubectl create sa mysa
|
||||
262 kubectl create role list-pods --resource=pods --verbs=list
|
||||
263 kubectl create role list-pods --resource=pods --verb=list
|
||||
264 kubectl describe role list-pods
|
||||
265 kubectl create rolebinding list-pods --role=list-pods --serviceaccount=default:default
|
||||
266 vim mysapod.yaml
|
||||
267 kubectl apply -f mysapod.yaml
|
||||
268 kubectl exec -it mysapod -- sh
|
||||
269 ls *role*
|
||||
270 grep -li 'type=role' *
|
||||
271 kubectl get rolebindings
|
||||
272 kubectl create rolebinding list-pods --role=list-pods --serviceaccount=default:mysa
|
||||
273 kubectl delete rolebindings.rbac.authorization.k8s.io list-pods
|
||||
274 kubectl create rolebinding list-pods --role=list-pods --serviceaccount=default:mysa
|
||||
275 kubectl exec -it mysapod -- sh
|
||||
276 kubectl get pods
|
||||
277 kubectl delete pod mysapod
|
||||
278 kubectl delete pod mysapod --force --timeout=1
|
||||
279 kubectl delete pod mysapod --force --timeout=0
|
||||
280 kubectl apply -f mysapod.yaml
|
||||
281 kubectl exec -it mysapod -- sh
|
||||
282 history > /tmp/history-15Oct24.txt
|
||||
69
setup-container-previous-version 2.sh
Executable file
69
setup-container-previous-version 2.sh
Executable file
@ -0,0 +1,69 @@
|
||||
#!/bin/bash
|
||||
# script that runs
|
||||
# https://kubernetes.io/docs/setup/production-environment/container-runtime
|
||||
|
||||
# changes March 14 2023: introduced $PLATFORM to have this work on amd64 as well as arm64
|
||||
|
||||
# setting MYOS variable
|
||||
MYOS=$(hostnamectl | awk '/Operating/ { print $3 }')
|
||||
OSVERSION=$(hostnamectl | awk '/Operating/ { print $4 }')
|
||||
# beta: building in ARM support
|
||||
[ $(arch) = aarch64 ] && PLATFORM=arm64
|
||||
[ $(arch) = x86_64 ] && PLATFORM=amd64
|
||||
|
||||
if [ $MYOS = "Ubuntu" ]
|
||||
then
|
||||
### setting up container runtime prereq
|
||||
cat <<- EOF | sudo tee /etc/modules-load.d/containerd.conf
|
||||
overlay
|
||||
br_netfilter
|
||||
EOF
|
||||
|
||||
sudo modprobe overlay
|
||||
sudo modprobe br_netfilter
|
||||
|
||||
# Setup required sysctl params, these persist across reboots.
|
||||
cat <<- EOF | sudo tee /etc/sysctl.d/99-kubernetes-cri.conf
|
||||
net.bridge.bridge-nf-call-iptables = 1
|
||||
net.ipv4.ip_forward = 1
|
||||
net.bridge.bridge-nf-call-ip6tables = 1
|
||||
EOF
|
||||
|
||||
# Apply sysctl params without reboot
|
||||
sudo sysctl --system
|
||||
|
||||
# (Install containerd)
|
||||
|
||||
sudo apt-get update && sudo apt-get install -y containerd
|
||||
# hopefully temporary bugfix as the containerd version provided in Ubu repo is tool old
|
||||
# added Jan 26th 2023
|
||||
# this needs to be updated when a recent enough containerd version will be in Ubuntu repos
|
||||
sudo systemctl stop containerd
|
||||
# cleanup old files from previous attempt if existing
|
||||
[ -d bin ] && rm -rf bin
|
||||
wget https://github.com/containerd/containerd/releases/download/v1.6.15/containerd-1.6.15-linux-${PLATFORM}.tar.gz
|
||||
tar xvf containerd-1.6.15-linux-${PLATFORM}.tar.gz
|
||||
sudo mv bin/* /usr/bin/
|
||||
# Configure containerd
|
||||
sudo mkdir -p /etc/containerd
|
||||
cat <<- TOML | sudo tee /etc/containerd/config.toml
|
||||
version = 2
|
||||
[plugins]
|
||||
[plugins."io.containerd.grpc.v1.cri"]
|
||||
[plugins."io.containerd.grpc.v1.cri".containerd]
|
||||
discard_unpacked_layers = true
|
||||
[plugins."io.containerd.grpc.v1.cri".containerd.runtimes]
|
||||
[plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc]
|
||||
runtime_type = "io.containerd.runc.v2"
|
||||
[plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc.options]
|
||||
SystemdCgroup = true
|
||||
TOML
|
||||
|
||||
# Restart containerd
|
||||
sudo systemctl restart containerd
|
||||
fi
|
||||
|
||||
sudo ln -s /etc/apparmor.d/runc /etc/apparmor.d/disable/
|
||||
sudo apparmor_parser -R /etc/apparmor.d/runc
|
||||
|
||||
touch /tmp/container.txt
|
||||
Loading…
Reference in New Issue
Block a user