구글 클라우드 플랫폼(GCP)에서 클라우드 파일스토어(Cloud Filestore)라는 베타 서비스를 공개했습니다. 이 서비스는 간단히 매니지드 기반의 클라우드 NAS라고 보면 됩니다. 공유 파일시스템 상에 데이터를 저장해 두고 구글 컴퓨트 엔진, 쿠버네티스 엔진에서 자유롭게 데이터에 접근할 수 있습니다.
이 서비스를 어디에 쓸 것인가? GCP에서 클라우드 파일스토어를 쓰면 좋은 사례를 몇 개 공개했습니다.
- 렌더링 : 구글 컴퓨트 엔진에 조성한 렌더 팜에서 접근할 공유 파일시스템 기반 저장소로 쓰면 높은 가성비의 혜택을 누릴 수 있습니다.
- 애플리케이션 마이그레이션 : 공유 파일시스템에 데이터를 두고 접근하는 애플리케이션의 경우 온프레미스 환경에서 클라우드로 전환할 때 이 서비스가 징검 다리 역할을 제대로 할 수 있습니다.
- 웹 컨텐츠 관리 : 기업 홈페이지, 워드프레스 기반 블로그 등을 운영할 때도 클라우드 파일스토어가 어울린다고 하네요.
- 미디어 프로세싱 : 그래픽 디자인, 비디오나 이미지 편집 등 용량이 큰 파일을 놓고 미디어 프로세싱 작업을 할 때도 좋답니다.
- 홈 디렉토리 : 사내 파일 서버로 쓰는 용도, NAS 따로 사지 않고 쓰기 편한 공유 스토리지 용도로 써도 훌륭할 듯싶네요.
이 서비스의 장점은 가성비입니다. 클라우드 파일스토어는 레이턴시가 매우 낮은 서비스입니다. 따라서 컨텐츠 관리 시스템, I/O가 랜덤하게 일어나는 서비스, 그 외 메타 데이터를 엄청나게 생성하는 애플리케이션 등에 잘 맞습니다. IOPS가 높다 보니 성능 이슈가 없는 것이죠.
두 번째 장점은 뭐 클라우드 서비스니 당연한 것일 수 있는데, 쓰루풋/용량/IOPS를 워크로드 특성에 맞게 잘 골라 쓰기 좋다는 것입니다. 세 번째 장점은 단순함입니다. 클라우드 파일스토어는 매니지드 서비스입니다. 관리를 따로 신경 쓰지 않아도 됩니다. 그냥 가상 머신 생성해서 파일스토어를 마운트 하여 쓰면 됩니다.
클라우드 파일스토어 인스턴스 생성은 매우 쉽습니다. 간단한 명령으로 인스턴스를 생성할 수 있습니다.
gcloud beta filestore instances create nfs-server \
–project=[PROJECT_ID] \
–location=us-central1-c \
–tier=STANDARD \
–file-share=name=”vol1″,capacity=1TB \
–network=name=”default”
NFS 설치하고 마운트 하는 것 역시 간단합니다.
sudo apt-get -y update sudo apt-get -y install nfs-common sudo mkdir /mnt/test sudo mount 10.0.0.2:/vol1 /mnt/test sudo chmod go+rw /mnt/test