[Kubernetes] Object - Volume이란 (3)
DevOps/Kubernetes2022. 3. 28. 16:36[Kubernetes] Object - Volume이란 (3)

PV, PVC lifeCycle 그림으로 설명 Static Provisioning 1. 인프라 관리자(admin)가 사용할 수 있는 Storage에 해당하는 PV를 생성 예제에서는 HostPath, NFS와 public cloud GCP, AWS, Azure의 Storage를 사용할 수 있는 상태 2개의 PV 생성 [ Local Storage와 Public Cloud Storage의 Access mode에 대한 설명 ] ReadWriteOnce(RWO) : 해당 PV는 하나의 Pod에만 마운트 되고 하나의 Pod에서만 읽고 쓰기가 가능. ReadOnlyMany (ROM): 여러 개의 Pod에 마운트가 가능하며, 여러 개의 Pod에서 동시에 읽기가 가능. 쓰기는 불가능. ReadWriteMany (RWM)..

[Kubernetes] Object - Volume이란 (2)
DevOps/Kubernetes2022. 3. 28. 16:17[Kubernetes] Object - Volume이란 (2)

✔️ Network 볼륨 (Persistent Storage) Pod 내부에서 특정 데이터를 보유해야 하는 stateful한(ex. DB) app의 경우 stateless한(Pod, deployment) 데이터를 영속적으로 저장하기 위한 방법이 필요하다. Pod에서 실행 중인 어플리케이션이 디스크에 데이터를 유지해야하고 Pod가 다른 노드로 Rescheduling된 경우에도 동일한 데이터를 사용해야 한다면 Local Volume(emptyDir, hostPath volume)을 사용할 수 없다. 어떤 클러스터 노드에서도 접근할 수 있어야 하므로 NAS 유형의 스토리지에 저장이 되어야한다. 온프렘 환경에서도 구축할 수 있는 NFS, iSCSI, GlusterFS, Ceph 뿐 아니라 EBS, gcePers..

[Kubernetes] Object - Volume이란 (1)
DevOps/Kubernetes2022. 3. 28. 15:24[Kubernetes] Object - Volume이란 (1)

✔️ Volume이란 ? 쿠버네티스 Pod 내에서 돌아가는 컨테이너는 고유한 파일시스템을 갖는다. 파일시스템은 컨테이너 이미지에서 제공되기 때문이다. 따라서 컨테이너가 재시작하게되면 이전 컨테이너에서 쓰여진 파일시스템은 새롭게 재시작된 컨테이너가 볼 수 없다. 만약 컨테이너가 종료되더라도 파일시스템이 유지되도록 하고싶다면 어떻게 해야 할까 ? 이 때 사용하는 오브젝트가 Volume이다. Volume은 파드의 일부분으로 정의되며 파드와 동일한 라이프사이클을 갖는 디스크 스토리지이다. 파드가 여러개의 컨테이너를 가지는 경우 모든 컨테이너가 볼륨을 공유할 수도 있다. ✔️ Volume의 종류 내부 Network (외부) Temp Local emptyDir hostPath GlusterFS gitRepo NFS..

[Kubernetes] Object - Service
DevOps/Kubernetes2022. 3. 17. 12:12[Kubernetes] Object - Service

✔️ Service Object의 개념 쿠버네티스에서의 Service는 Pod들의 집합이며 동일한 서비스 동작을 구현하는 여러가지 Pod를 묶어 하나로 관리하는 오브젝트이다. [Kubernetes] Object 개념 ✔️ Kubernetes 구성 쿠버네티스는 크게 오브젝트(Object)와 오브젝트를 관리하는 컨트롤러(Controller)로 나눠져 있다. 쿠버네티스 오브젝트는 쿠버네티스 시스템에서 영속성을 가진다. 오브젝트를 nice-engineer.tistory.com ✔️ Service Object의 등장 배경 1. 서비스를 위한 고정 IP의 필요성 서버는 문제가 생기면 서버를 재시작하고 서비스를 재시작하지만 Pod는 문제가 생기면 그 Pod를 삭제한 뒤 새로운 Pod를 생성한다. 따라서 Pod의 IP..

[Kubernetes] Object 개념
DevOps/Kubernetes2022. 3. 17. 10:23[Kubernetes] Object 개념

✔️ Kubernetes 구성 쿠버네티스는 크게 오브젝트(Object)와 오브젝트를 관리하는 컨트롤러(Controller)로 나눠져 있다. 쿠버네티스 오브젝트는 쿠버네티스 시스템에서 영속성을 가진다. 오브젝트를 생성하면 쿠버네티스는 원하는 상태를 보장하기 위해 지속적으로 작동한다. 쿠버네티스는 클러스터의 상태(Status)를 나타내기 위해 이 오브젝트를 이용한다. 거의 모든 쿠버네티스 오브젝트는 오브젝트 구성을 결정해주는 두개의 중첩된 오브젝트 필드인 status와 spec을 포함한다. status : 쿠버네티스 시스템과 컴포넌트에 의해 제공되고 업데이트된 오브젝트의 현재 상태를 설명 spec : 오브젝트의 특성으로 추구하는(Desired) 상태를 설명 컨트롤러는 status가 spec과 일치하도록 오브..

image