-
[쿠버네티스] 파드 Pod 와 노드 NodeSW 개발/쿠버네티스 2021. 9. 15. 22:39
쿠버네티스 파드 Pod
파드는 쿠버네티스의 추상적 개념이다.
파드는 하나 이상의 애플리케이션 컨테이너(docker) 그룹과 컨테이너들을 위한 공유 리소스를 포함한다.
리소스는 공유 스토리지(volume), 네트워킹(unique cluster ip), 각 컨테이너를 실행하기 위한 정보(image version, port)를 포함한다.
파드는 쿠버네티스 플랫폼에서 최소 단위이다.
쿠버네티스에서 Deployment를 생성하면 Deployment는 Pods와 Pod 내부의 Container들을 생성한다.
각 파드는 스케쥴된 Node에 묶여있고, 종료되거나 삭제 될 때까지 존재한다.
노드에 장애가 발생한 경우, 개별 Pod들은 클러스터 내의 다른 사용가능한 노드들로 스케쥴된다.ㅜ Nodes
Pod는 항상 Node에서 동작한다.
노드는 쿠버네티스의 워커머신이고, 클러스터에 따라 물리머신이거나 가상머신일 수 있다.
각 노드는 control plane 에 의해 관리된다.
하나의 노드는 여러 pod들을 가질 수 있다.
쿠버네티스 control plane은 클러스터내 노드들에 파드들이 스케쥴되는 것을 자동으로 관리한다.
control plane의 자동 스케쥴링은 각 노드의 사용가능한 리소스를 고려한다.
모든 쿠버네티스 노드는 최소한 다음을 실행한다.
- 쿠버네티스 control plane과 노드 사이의 통신을 담당하는 process인 Kubelet (머신내의 pods와 containers를 관리한다) => 통신 + 관리 하는 Kubelet
- registry에서 container image를 가져오고, container를 unpack 하고, application을 실행하는 하나의 Container runtime (Docker 같은) => app container 실행하는 Docker?자주 사용할 kubectl 명령어
- kubectl get - 리소스 리스트
- kubectl describe - 리소스의 상세 정보
- kubectl logs - 컨테이너의 로그 출력
- kubectl exec - 컨테이너에서 명령 실행
'SW 개발 > 쿠버네티스' 카테고리의 다른 글
[쿠버네티스] 모듈3 - Explore your app 튜토리얼 요약 (0) 2021.09.15 [쿠버네티스] 학습/요약 - 디플로이먼트 생성하기 (0) 2021.09.09 [쿠버네티스] 튜토리얼 요약 - 클러스터 생성하기 (0) 2021.09.09 [쿠버네티스] 개념 학습/요약 - 클러스터, 노드, 컨트롤 플레인 (0) 2021.09.09