• 카테고리

    질문 & 답변
  • 세부 분야

    데브옵스 · 인프라

  • 해결 여부

    미해결

ReadWriteOnce에 대한 질문이 있습니다.

22.07.10 15:26 작성 조회수 282

0

안녕하세요, 좋은 강의를 통해 많이 배우고 있습니다.

 

nfs 접근모드 중 ReadWriteOnce라는 정책에 대해 질문이 있습니다. 

replicaset=1이라는 어떤 deployment가 있고, 만약 서버의 어떤 결함이 생겨 pod가 삭제되고 다른노드에 자동으로 재 배포된 경우에,

 

다른 노드에 재 배포된 pod는 해당 volume을 사용할 수 없나요? 

 

즉  ReadWriteOnce 라는 정책이 동시에 하나의 노드만 접근이 가능한 지, 아니면 pvc가 사용한 시점부터 해서 처음 사용한 노드만 영원히 사용이 가능한 지 궁금합니다.

 

읽어주셔서 감사합니다.

답변 1

답변을 작성해보세요.

3

주도님의 프로필

주도

2022.07.13

안녕하세요, chanho0912님.

튜터 주도입니다.

 

Q. 다른 노드에 재배포된 pod는 해당 volume을 사용할 수 없나요? 

A. 다른 노드에 재배포된 pod가 해당 volume을 사용하려면 PV생성시, persistentVolumeReclaimPolicy를 Retain로 선언하시면 됩니다.

persistentVolumeReclaimPolicy는 "PVC가 삭제되었을 때 PV를 어떻게 처리할 것이냐?"에 대한 정책을 정의하는 부분인데요.

persistentVolumeReclaimPolicy(이하 ReclaimPolicy)의 종류는 강의(4분 48초)에 나온대로 세가지가 있습니다.

  • Retain : PVC를 삭제해도 PV는 남아있음(Retain). 
  • Delete : PVC를 삭제하면 PV도 함께 삭제됨. 
  • Recycle : Depreated(재활용. 이제 안 쓰임)

 

강의에서 나온 랩 기준으로 말씀드리면,

PV(nfs-pv)의 ReclaimPolicy가 Retain이므로, 

Deployment(nfs-pvc-deploy)의 pod가 삭제되어도 

Deployment(nfs-pvc-deploy)와 연동된 PVC(nfs-pvc)가 그대로이므로,

마찬가지로 PV(nfs-pv)는 삭제되지 않고 그대로 유지(retain)되어서 다른 노드에 재배포된 pod에 접속했을 때, 예전 pod에 접속한 로그와 새로 배포된 pod의 로그를 확인하실 수 있습니다.

그렇게 되면 말씀하신 대로 pod가 다른 노드에 재배포되어도, 해당 pv에 접근이 가능합니다.

 

혹시 추가로 궁금하신 점이 있으면 남겨주세요

감사합니다 :)

 

chanho0912님의 프로필

chanho0912

질문자

2022.07.13

상세한 답변 너무 감사드립니다!!