쿠버네티스를 사용하는 관저메서 파드와 디플로이먼트는 스펙과 상태등의 값을 가지고 있다. 값을 가지고 있는 파드와 디플로이먼트를 개별 속성을 포함해 부르는 단위를 오브젝트라고 한다.
오브젝트는 기본적으로 4가지가 있다.
1. 파드
- 쿠베네티스에서 실행되는 최소 단위. 즉 웹 서비스를 구동하는데 필요한 최소 단위.
- 독립적인 공간과 사용 가능한 IP를 가지고 있다.
- 하나의 파드는 1개 이상의 컨테이너를 갖고 있기 때문에 여러 기능을 묶어 하나의 목적으로 사용할수 있다.
2.네임스페이스
- 쿠버네티스 클러스터에서 사용되는 리소스들을 구분해 관리하는 그룹이다.
- 예를 들면 3장에는 3가지 네임스페이스를 사용한다. 특별히 지정하기 않으면 기본으로 할당되는 default
쿠버네티스 시스템에서 사용되는 kube- system, 온프레미스에서 쿠버네티스를 사용할 경우 외부에서 쿠버네티스 클러스터 내부로 접속하게 도아주는 컨테이너들이 속해있는 metallb-system이 있다.
3.볼륨
- 파드가 생성될때 파드에서 사용할 수 있는 데렉터리를 제공
- 기본적으로 파드는 영속되는 개념이 아니라 제공되는 디렉터리도 임시로 사용
- 파드가 사라지더라도 저장과 보존이 가능한 디렉터리를 볼륨 오브젝트를 통해 생성하고 사용할 수 있다.
4. 서비스
- 새로운 파드가 생성될때 부여되는 새로운 IP를 기존에 제공하던 기능과 연결해 줍니다.
-쿠버네티스 외부에서 쿠버네티스 내부로 접속할때 내부가 어떤 구조로 돼 있는지, 파드가 살았는지 죽었는지 신경 쓰지 않아도 이를 논리적으로 연결하는것.
- 로드밸런서, 게이트웨이 와 비슷한 역활을 한다.
Deployment
기본 오브젝트만으로도 쿠버네티스를 구성 할수 있지만 기본만으로 구성을 못할 때가 있다 .
그때 Deployment를 사용해 더 효율적으로 작동하도록 기능들을 조합하고 추개해 구현 할수있다.
쿠버네티스에서 많이 쓰는 Deployment는 애플리케이션의 배포 및 업데이트를 관리하는 리소스입니다. 디플로이먼트는 레플리카셋(ReplicaSet)을 기반으로 하며, 애플리케이션의 상태를 지속적으로 모니터링하고 필요에 따라 Pod를 생성, 업데이트 또는 롤백하는 역할을 수행합니다.
Deployment 말고 데몬셋, 컨피그맵, 레플리카셋 PV, PVC,스테이트 풀셋등이 있다.
이제부터 간단하게 deployment를 생성했다가 삭제하는 실습을 해보겠다 .
1. 파드를 먼저 생성을 한다.
kubectl create deployment dpy-haname --image=sysnet4admin/echo-hname
2.파드가 잘 생성됬는지 확인
3. 확인 되면 삭제해보기
kubectl delete deployment dpy-hname
#꼭 deployment를 붙인다
4. 삭제 됬는지 다시 확인
Deployment를 생성하고 삭제 해봤지만 아직까지는 왜 써야하는지 뭐가 유용한 기능이 있는지 모를것이다. 다음에 왜 필요한지 알아보겟다.
-출처-
책 "컨테이너 인프라 환경 구축을 위한 쿠버네티스/도커 "
'K8s' 카테고리의 다른 글
[ K8s ] 쿠버네티스 기본 사용법 - 파드의 컨테이너 자동 복구 (0) | 2023.06.09 |
---|---|
[ K8s ] 쿠버네티스 기본 사용법 - 스펙을 지정해 오브젝트 생성하기 (0) | 2023.06.09 |
[ K8s ] 쿠버네티스 기본 활용법 - 레플리카셋으로 파드 수 관리하기 (0) | 2023.06.08 |
[ K8s ] 쿠버네티스 기본 사용법 - 파드생성 (0) | 2023.06.08 |
[ K8s ] 쿠버네티스의 구성 요소 간 통신과 개념 (0) | 2023.06.08 |