본문 바로가기
IT생활

TrueNAS SCALE에서 Amazon S3 및 Google Cloud Storage와 같은 오브젝트 스토리지 구축 가능 여부

by 우물 밖 개구리. 2025. 3. 15.
반응형

TrueNAS SCALE에서 Amazon S3 및 Google Cloud Storage와 같은 오브젝트 스토리지 구축 가능 여부

TrueNAS SCALE은 Linux 기반의 오픈소스 NAS 운영체제로, 컨테이너 및 클러스터링 기능을 지원하는 것이 특징이다. 특히, MinIO를 활용하여 Amazon S3와 동일한 API를 제공하는 S3 호환 오브젝트 스토리지를 구축할 수 있다. 이를 통해 내부적으로 S3 스토리지를 운영하거나, AWS S3 및 Google Cloud Storage(GCS)와 유사한 기능을 제공하는 퍼블릭 클라우드 대체 솔루션으로 활용할 수 있다.


1. TrueNAS SCALE에서 오브젝트 스토리지 지원 여부

TrueNAS SCALE은 기본적으로 오브젝트 스토리지를 직접 지원하지 않지만, MinIO 또는 Rook-Ceph를 사용하여 구축할 수 있다.

1.1 MinIO를 활용한 S3 호환 스토리지 구축

MinIO는 고성능 분산 오브젝트 스토리지 소프트웨어로, AWS S3 API와 완벽히 호환된다.
TrueNAS SCALE에서는 앱(Apps) 기능을 통해 MinIO를 컨테이너 형태로 쉽게 배포할 수 있다.

MinIO를 사용해야 하는 이유

  • S3 API 완전 호환: AWS S3 및 GCS와 동일한 API 지원
  • 고성능: 100GB 이상의 대용량 객체 저장 가능
  • 클러스터링 지원: 다중 노드를 구성하여 확장 가능
  • 로컬 데이터 보호: ZFS 기반의 데이터 무결성 제공

2. TrueNAS SCALE에서 MinIO를 사용하여 S3 호환 스토리지 구축 방법

2.1 MinIO 설치 및 설정

TrueNAS SCALE에서 MinIO를 설정하는 방법은 크게 앱 스토어 활용수동 설정 두 가지 방식이 있다.

방법 1: TrueNAS 앱스토어를 이용한 MinIO 설치

  1. TrueNAS 웹 UI 접속 (http://<truenas-ip>/)
  2. Apps -> Available Applications 에서 MinIO 검색
  3. MinIO 앱 선택 후 Install 버튼 클릭
  4. MinIO 설정값 입력
    • Storage Path: MinIO 데이터 저장 경로 지정 (ZFS 풀 내 특정 디렉토리)
    • Service Port: 기본 포트 9000 설정
    • Access Key / Secret Key 생성
    • Erasure Coding (EC) 설정: 고가용성을 위해 활성화 추천
  5. 설치 후 MinIO 서비스 실행

방법 2: Kubernetes 컨테이너 기반 MinIO 배포

TrueNAS SCALE은 Kubernetes 기반의 앱 실행이 가능하므로, Helm을 활용하여 MinIO를 배포할 수도 있다.

helm repo add minio https://charts.min.io/
helm repo update
helm install my-minio minio/minio \
  --set accessKey=myaccesskey \
  --set secretKey=mysecretkey \
  --set persistence.size=500Gi

이 방식은 멀티 노드 클러스터링 환경에서 더 적합하다.


2.2 MinIO에 S3 클라이언트 연결

MinIO가 실행되면, S3 API를 지원하는 클라이언트에서 접근할 수 있다.

  • 웹 UI 접근: http://<truenas-ip>:9000
  • AWS CLI 사용
    aws configure set aws_access_key_id myaccesskey
    aws configure set aws_secret_access_key mysecretkey
    aws --endpoint-url http://<truenas-ip>:9000 s3 ls
    
  • S3 Compatible Backup Software (Veeam, Restic 등)에서 사용 가능

3. Google Cloud Storage 및 Amazon S3와의 비교

 

비교 항목  TrueNAS SCALE + MinIO  Amazon S3  Google Cloud Storage
비용 서버 유지 비용만 필요 사용량 기반 과금 사용량 기반 과금
S3 API 호환성 완전 호환 네이티브 API 일부 S3 API 지원
확장성 수직적 확장 (노드 추가 가능) 글로벌 스케일 글로벌 스케일
고가용성 로컬 ZFS 기반 RAID 다중 AZ 지원 다중 AZ 지원
백업 용도 가능 (Veeam, Restic 등 연동) 가능 가능
데이터 전송 속도 로컬 네트워크 속도 AWS 글로벌 네트워크 Google 글로벌 네트워크

TrueNAS SCALE 기반 MinIO는 퍼블릭 클라우드 대비 저비용으로 S3 스토리지를 운영할 수 있는 장점이 있지만, 전역적인 가용성 및 자동 확장성은 부족하다.


4. 고급 설정 및 확장성 고려 사항

4.1 다중 노드 클러스터 구성 (Erasure Coding 적용)

MinIO는 다중 노드 구성을 통해 분산 스토리지를 제공할 수 있으며, TrueNAS SCALE에서 이를 지원한다.

  • minio server /mnt/pool1 /mnt/pool2 /mnt/pool3 /mnt/pool4
  • Erasure Coding을 활성화하면, 하나의 노드가 다운되더라도 데이터가 유지됨
  • 최소 4개 이상의 스토리지 노드를 구성하면 AWS S3 수준의 내구성을 제공 가능

4.2 외부 S3 스토리지 연동 (Hybrid Storage 구축)

TrueNAS SCALE의 MinIO는 AWS S3, Google Cloud Storage와 연동하여 하이브리드 클라우드 스토리지를 구성할 수 있다.

  • MinIO Gateway 모드 사용
    minio gateway s3
    
    • 이 모드를 사용하면 TrueNAS가 S3 프록시 역할을 수행하여, AWS S3 또는 Google Cloud Storage를 캐싱할 수 있다.

4.3 성능 최적화

  • ZFS ARC, L2ARC 활용: SSD 캐싱을 통해 오브젝트 스토리지 성능 향상
  • Load Balancer 적용: HAProxy, Nginx를 사용하여 부하 분산
  • NVMe 기반 스토리지 활용: 높은 IOPS 및 대역폭 확보

5. 결론: TrueNAS SCALE로 S3 호환 오브젝트 스토리지 구축 가능 여부

✅ 가능함

TrueNAS SCALE은 MinIO를 활용하여 Amazon S3 및 Google Cloud Storage와 유사한 오브젝트 스토리지를 구축할 수 있다.

  • 소규모 기업 및 개인 클라우드 스토리지 구축에 적합
  • AWS S3와 완벽히 호환되는 API 지원
  • 내부 네트워크 기반의 고속 S3 스토리지 구축 가능
  • Erasure Coding 적용 시 높은 내구성 제공

⚠️ 한계점

  • 퍼블릭 클라우드 수준의 글로벌 확장성 부족
  • TrueNAS의 하드웨어 성능에 따라 성능 제한이 있음
  • 멀티 리전 기능이 없으므로 DR(재해 복구) 용도로는 한계가 있음

📌 추천 사용 사례

  • 내부 백업 및 아카이빙 용도 (Veeam, Restic 등과 연동)
  • 비용 절감을 위한 자체 오브젝트 스토리지 구축
  • 퍼블릭 클라우드와의 하이브리드 스토리지 구성

TrueNAS SCALE을 활용하면 저비용으로 강력한 S3 호환 오브젝트 스토리지를 구축할 수 있으며, 특히 고성능 NAS + 오브젝트 스토리지가 필요한 환경에서 유용하다.

반응형