본문 바로가기
cloud/k8s(문제풀이)

[cka]kodekloud-static pods

by mozi2 2022. 6. 13.
반응형

1. How many static pods exist in this cluster in all namespaces?

# k get pods -A
# k get pod kube-apiserver-controlplane -n kube-system -o yaml

 : 이 문제를 풀기 위해 두가지를 확인 해야 한다. 

 : static pod 를 구분하기 위한 방법이다. 

그림 1
그림 2

그림 1  pod 의 이름 : kube-apiserver-controlplane

그림 2 pod 의 이름 : coredns-64897985d-fj6rl

 

해당 이미지를 보면 ownerReferences / kind: 내용을 보면

그림 1 은 : Node, 그림 2는: ReplicaSet 인걸 확인 할 수 있다. 

 

즉, 그림 1 은 node -> static node로 유추할 수 있다. 

 

A) 4 

 

2. Which of the below components is NOT deployed as a static pod?

# k get pod -A

 : pod 의 이름을 보면

"etcd-controlplane    "  "  kube-apiserver-controlplane     " "kube-controller-manager-controlplane"

"kube-scheduler-controlplane " 

 : 선택지에 없는 항목은 coredns

A) coredns

 

3. Which of the below components is NOT deployed as a static POD?

# k get pod -A

"etcd-controlplane    "  "  kube-apiserver-controlplane     " "kube-controller-manager-controlplane"

"kube-scheduler-controlplane " 

 : pod 이름에 controlplane 가 붙지 않는 것은 "kube-proxy-bkbng"

A) kube-proxy-bkbng

 

4. On which nodes are the static pods created currently?

# k get pod -A

A) controlplane

 

5. What is the path of the directory holding the static pod definition files?

# cat /var/lib/kubelet/config.yaml

A) /etc/kubernetes/manifests 

 

6.How many pod definition files are present in the manifests folder?

#ls /etc/kubernets/manifests/

 : static pods 경로 

A) 4

 

7.What is the docker image used to deploy the kube-api server as a static pod?

# cat /etc/kubernets/manifests/kube-apiserver.yaml | grep image 

A) k8s.gcr.io/kube-apiserver:v1.23.0

 

8. Create a static pod named static-busybox that uses the busybox image and the command sleep 1000

  • Name: static-busybox

  • Image: busybox
# k run static-busybox --image=busybox --restart=Never --dry-run=client -o yaml --command --sleep 1000 > static-busybox.yaml
# cp ./static-busybox.yaml /etc/kubernetes/manifests
# k get pods

 * 정적 파드를 생성하는 명령어를 분석해보자 

 - "k run static-busybox --image=buxybox" : static-busybox 라는 파드의 이름으로 busybox 이미지를 생성한다.

 - "--restart=Never" :

 - "--dry-run=client -o yaml" :

- "--command -- sleep 1000" :

- "> static-busybox.yaml" :

 

9. Edit the image on the static pod to use busybox:1.28.4

# cd /etc/kubernetes/manifests/

10.We just created a new static pod named static-greenbox. Find it and delete it.

     This question is a bit tricky. But if you use the knowledge you gained in the previous questions in this lab,

     you should be able to find the answer to it.

 

# k get pods 

# k delete pod static-greenbox-node01

# k get pods 

  : 파드 삭제하는 것처럼 지워봤을 때 static pod는 삭제되지 않앗다. 

# k get nodes -o wide

# ssh 10.x.x.xx

 : 노드의 세부사항을 확인 한뒤 node01의 노드로 접속해봤다.

 : 접속방법은 ssh 10.x.x.x

 : 자 그럼 어떻게 static-pod를 삭제할 수 있을까 ?

: 노드의 서버에 접속해보면, " staticPodPath" 를 확인할 수 있다. 

 

 # cd /etc/just-to-mess-with-you 

  : static pod의 경로로 들어간다.

  : 해당 경로의 yaml 파일을 삭제한다.

 

# rm -r greennbox.yaml

# exit 

  : node에서 벗어난다.

 # k get pods 

  : 삭제 된 것을 확인 할 수 있다. 

728x90
반응형

'cloud > k8s(문제풀이)' 카테고리의 다른 글

[cka]kodekloud-Monitor Custer Components  (0) 2022.06.13
[cka]kodekloud-Multiple Schedulers  (0) 2022.06.13
[cka]kodekloud-DaemonSets  (0) 2022.06.09
[cka]kodekloud-Resources Limit  (0) 2022.06.09
[cka]kodekloud-Affinity  (0) 2022.06.09