- Pod가 생성되는 과정 + Prob
- kubectl → kube-apiserver → etcd → Deployment 생성
- kube-controller-manager → Deployment 발견 → ReplicatSet 생성
- kube-controller-manager → ReplicatSet 발견 → Pod 생성
- kube-scheduler → pod를 띄울 노드 스케쥴링 → kube-apiserver → kubelet → containerD
- kubelet → probe체크 → 컨테이너
- 서비스 동작
- kubelet → kube-proxy → 네트워크연결요청 → iptables 업데이트 → calico가 컨테이너로 연결
- Secret
- 노드의 메모리영역에 마운트됨 (물리적 보안)
- 많은 데이터를 사용하면 메모리부족가능성
- HPA
- HPA metrics → kube-controller-manager → metrics-server → kubelet → 컨테이너D가 자원체크
트러블슈팅
// kubelet 상태 확인
1) systemctl status kubelet // systemctl (restart or start) kubelet
2) journalctl -u kubelet | tail -10
// 상태 확인 -> 상세 로그 확인 -> 10분 구글링 -> VM 재기동 -> Cluster 재설치 -> 답을 찾을 때 까지 구글링
// containerd 상태 확인
1) systemctl status containerd
2) journalctl -u containerd | tail -10
// 노드 상태 확인
1) kubectl get nodes -o wide
2) kubectl describe node k8s-master
// Pod 상태 확인
1) kubectl get pods -A -o wide
// Event 확인 (기본값: 1h)
2-1) kubectl get events -A
2-2) kubectl events -n anotherclass-123 --types=Warning (or Normal)
// Log 확인
3-1) kubectl logs -n anotherclass-123 <pod-name> --tail 10 // 10줄 만 조회하기
3-2) kubectl logs -n anotherclass-123 <pod-name> -f // 실시간으로 조회 걸어 놓기
3-3) kubectl logs -n anotherclass-123 <pod-name> --since=1m // 1분 이내에 생성된 로그만 보기
중요한건 꺽이지않는 구글링
'개발 > Infra' 카테고리의 다른 글
(인강복습) 쿠버네티스 어나더 클래스 Sprint 2 - 손쉽게 데브옵스 환경을 구축하는 방법 (1) | 2025.04.11 |
---|---|
(인강복습) 쿠버네티스 어나더 클래스 Sprint 2 - 데브옵스한방정리 (1) | 2025.04.11 |
(인강복습) 쿠버네티스 어나더 클래스 Sprint 1 - Application 기능으로 이해하기 - PV, PVC, Deployment, Service, HPA (0) | 2025.04.10 |
(인강복습) 쿠버네티스 어나더 클래스 Sprint 1 - Application 기능으로 이해하기 - Configmap, Secret (1) | 2025.04.10 |
(인강복습) 쿠버네티스 어나더 클래스 Sprint 1 - Application 기능으로 이해하기 - Probe (0) | 2025.04.10 |