5-2. PV(Persistent Volume)와 StatefulSet

황인권·2025년 2월 21일

Kubernetes

목록 보기
32/37

Stateful vs Stateless

  • 여태까지 우리가 다루었던 앱은 모두 Stateless 앱이다.
    • Stateless는 말그대로 상태가 없는, 상태가 중요하지 않은 앱을 의미한다.
    • 쿠버네티스에서는 Stateless를 기본으로 생각하고, 상태를 가져야하는 경우를 특수하게 생각한다.

PV와 PVC 개념

  • 상태를 가져야하는 앱을 만들어야 한다면 상태를 저장할 스토리지가 필요하다.
    • 상태를 저장하기 위해 준비된 물리적인 스토리지 공간을 PV(Persistent Volume)라는 오브젝트로 다룬다.
    • Pod에서 가져다 쓸 수 있도록 논리적인 단위로 스토리지를 정의한 것이 PVC(Persistent Volume Claim)이다.
      - PV가 있는 상태에서, PVB를 만들면 적합한 PV가 PVC와 연결되어 사용할 수 있는 형태가 된다.
      - 클라우드 서비스에서는 PVC를 만들어도 PV를 알아서 만들게 할 수 있는데, 이를 동적 프로비저닝이라고 한다.

StatefulSet이란 무엇인가?

  • statefulSet이라는 오브젝트를 통해 PVC와 연결된, 즉 상태가 중요한 Pod를 만들 수 있다.
  • 기존에 상태가 중요하지 않은 Pod는 Node의 스토리지 중 일부를 임시로 빌려와 사용했지만, 상태가 중요한 Pod 즉, StatefulSet으로 만들어진 Pod는 PVC와 연결하여 사용하게 된다.
profile
inkwon Hwang

0개의 댓글