그냥저냥

[Kubernetes] 왜! NFS 볼륨을 사용하게 되었느냐! 본문

인프라

[Kubernetes] 왜! NFS 볼륨을 사용하게 되었느냐!

sync86 2025. 5. 1. 22:40
728x90
반응형

 

https://kubernetes-sigs.github.io/nfs-subdir-external-provisioner/

 

NFS Subdirectory External Provisioner Helm Repository

NFS Subdirectory External Provisioner Helm Repository

kubernetes-sigs.github.io

 

왜! NFS 볼륨을 사용하게 되었느냐! 하면...

 

API 서비스에 파일 업/다운로드 서비스를 구현했다.

서비스 중 이미지 업로드하는 기능이 필요했다.

 

Kubernetes에 디플로이먼트로 배포되면 파드가 하나 또는 여러개가 될 수 있다.

이때 로컬 볼륨을 사용하면 낭패를 볼 수 있다.

 

왜 그러냐고 하니 로컬 볼륨은 파드별로 독립적이다.

특정 파드에 마운트된 로컬 볼륨에 있는 디렉토리와 파일은 다른 파드와 공유되지 않는다.

그래서 다수의 파드로 구성했을 때 파드 전체가 공유해야 되는 파일이 있을 경우 문제가 생기는 것이다.

 

열심히 구현한 파일 업/다운로드할 때 바로 그 문제가 생겼다.

 

로컬 볼륨을 사용하니 특정 파드에 업로드된 파일은 다른 파드에서는 파일을 찾을 수 없었다.

 

어떨땐 파일을 정상적으로 다운로드 받고, 또 어떨 땐 404 에러를 뱉었다.

멋대로인 것 같았다.

그래서 여러 파드에서 공유할 수 있는 불륨이 필요하다.

하나의 파드에 파일이 업로드되면 다른 파드에서도 해당 파일 접근할 수 있는 아주 멋진 것이 필요했다.

그래서 NFS를 사용하고자 한다.

728x90
반응형