CKA
"CKA"의 모든 글.
CKA v1.35 커리큘럼 도메인별 kubeadm·etcdctl·systemctl·crictl·kubectl 명령어와 최소 YAML, 시험 중 열어 볼 kubernetes.io 문서 위치 정리.
control plane 컴포넌트(kube-apiserver, etcd, scheduler, controller-manager)와 node 컴포넌트(kubelet, kube-proxy, container runtime)가 서로 어떻게 연결되는지, static Pod와 /etc/kubernetes 아래 파일들을 kubeadm 클러스터에서 직접 확인하며 정리했습니다.
노드 준비(swap, sysctl, containerd cgroup driver)부터 kubeadm init/join, CNI 설치, 그리고 kube-vip로 묶은 stacked etcd HA control plane까지 VM 3대에서 직접 실행하며 정리했습니다.
version skew 규칙, kubeadm으로 1.34에서 1.35로 올리는 순서와 drain/uncordon, etcdctl·etcdutl로 하는 etcd 백업과 복원, kubeadm 인증서 확인과 갱신을 VM 클러스터에서 직접 실행하며 정리했습니다.
Kubernetes에 User 객체가 없다는 것에서 시작해, CertificateSigningRequest로 사용자 인증서를 발급하고 kubeconfig에 넣는 과정, ClusterRole을 RoleBinding과 ClusterRoleBinding에 붙였을 때의 차이, aggregated ClusterRole과 기본 ClusterRole을 kubeadm 클러스터에서 확인했습니다.
kubelet과 container runtime 사이의 CRI, Pod 네트워크를 붙이는 CNI, 스토리지를 붙이는 CSI가 노드의 어디에 설정되어 있는지 확인하고, Helm과 Kustomize로 클러스터 컴포넌트를 설치하고, Operator가 CRD로 컴포넌트를 관리하는 방식을 kubeadm 클러스터에서 정리했습니다.
nodeName, nodeSelector, node affinity, taint와 toleration, Pod anti-affinity, topology spread constraint, PriorityClass와 preemption을 worker 2대짜리 kubeadm 클러스터에서 직접 배치해 보며 정리했습니다.
metrics-server가 HPA에 CPU 사용량을 주는 흐름, kubectl autoscale과 autoscaling/v2 HPA, 부하를 걸었을 때 늘어나고 부하를 뺐을 때 5분 뒤 줄어드는 과정, VPA와의 차이를 kubeadm 클러스터에서 정리했습니다.
Kubernetes 네트워크 모델, 노드 사이 Pod 통신, kube-proxy가 Service를 iptables 규칙으로 바꾸는 모습, NodePort와 LoadBalancer, CoreDNS의 Corefile 수정과 Pod dnsPolicy를 kubeadm + Calico 클러스터에서 직접 확인했습니다.
GatewayClass, Gateway, HTTPRoute의 역할 분리, host·path·header 매칭과 가중치 분할, 다른 namespace의 Route와 backend를 허용하는 allowedRoutes와 ReferenceGrant, 그리고 Ingress와의 차이를 NGINX Gateway Fabric과 ingress-nginx를 설치한 kubeadm 클러스터에서 확인했습니다.
kubelet과 containerd를 멈추고, kubelet 설정과 static Pod manifest를 일부러 망가뜨린 뒤 kubectl, systemctl, journalctl, crictl, /var/log/pods로 원인을 찾는 과정을 kubeadm 클러스터에서 기록했습니다.
kubectl top으로 리소스 사용량을 보고, kubectl logs의 컨테이너 선택·이전 컨테이너·stdout/stderr와 노드의 로그 파일 위치를 확인하고, Service selector·targetPort·readiness·CoreDNS·NetworkPolicy를 하나씩 망가뜨려 증상을 비교했습니다.