IT/Kubernetes

Kubernetes PV Reclaim Policy 에 따른 Status 변화 정리 (feat. Persistant Volume, 상태, 반환정책, PVC)

엘티엘 2022. 4. 1. 18:45

Kubernetes PV의 상태변화에 대해서 자세히 알아보자

PV(Persistant Volume)의 상태(Status)란?

말 그대로 PV의 상태를 의미하며 총 4가지가 있다. 아래는 공식문서에 나와있는 내용이다.

이중 Released 상태는 데이터를 확인할수는 있으나 재사용할 수 없는 상태이다. 데이터를 재사용하기 위해서는 데이터 백업후 PV를 재생성 해야한다.

PV의 상태는 아래처럼 확인할수 있다. (아래는 Bound 상태)

PV(Persistant Volume)의 반환정책(Reclaim Policy)란?

PV 상태가 Bound->미사용으로 변경될때 저장되어 있는 데이터와 PV를 어떻게 처리할 것인가에 대한 정책이다. PV는 PVC가 바인딩이 되면 Bound 상태가 되고 바인딩된 PVC가 없을때 미사용 상태가 된다. 따라서 일반적으로 "PVC가 삭제됬을때, 바인딩 되어있던 PV를 어떻게 처리할 것인가" 정도로 이해하면 된다.

아래는 공식문서에 나와있는 내용이다. 총 3가지 정책이 가능하다. 

간단히 설명하면, 데이터 유지(Retain), 데이터 삭제 및 PV 재사용(Recycle), 데이터 및 PV 삭제(Delete) 이다.

상태(Status)와 반환정책(Reclaim Policy)

둘간의 관계를 State Diagram으로 그려봤다.

요약하면 아래와 같다.

  • 최초 PV가 생성되면 Available 상태가 된다.
  • PVC가 바인딩이 되면 Available -> Bound 상태가 된다.
  • 볼륨에 이상이 생기면 Failed 상태가 된다.
  • Bound 상태에서 PVC가 해제됬을때 (PVC 삭제) Reclaim Policy에 따라서 상태가 달라진다.
    • Recycle: 기존 데이터가 삭제되고, Available 상태가 된다. (실제 상태를 확인해보면 Release -> Available 로 변경되지만, 편의상 Available로 표현했다)
    • Retain: 기존 데이터는 유지하지만 재사용할수 없는 Release 상태가 된다.
    • Delete: 기존 데이터는 삭제되고, PV도 삭제된다
반응형