IMG-LOGO
공지사항 :

CephFS

lmkfox - 2025-04-29 07:07:18 97 Views 0 Comment

좋습니다. 이번에는 오픈소스 분산 스토리지 시스템인 Ceph (특히 CephFS) 에 대해 심층적으로 설명드리겠습니다.


Ceph 개요

Ceph는 고가용성, 고확장성을 목표로 설계된 오픈소스 분산 스토리지 시스템입니다.

크게 세 가지 주요 스토리지 서비스를 제공합니다.

서비스

설명

RBD (RADOS Block Device)

블록 스토리지 제공 (VM 디스크 등)

RGW (RADOS Gateway)

오브젝트 스토리지 제공 (S3, Swift 호환)

CephFS (Ceph File System)

POSIX 준수 분산 파일 시스템 제공

특히 CephFS는 파일 기반 스토리지 공유를 목적으로 사용하며, 네이티브 POSIX API를 지원합니다. 즉, 기존 파일 시스템처럼 사용할 수 있으면서도 분산, 복제, 자가 복구 기능을 자동으로 제공합니다.


Ceph 아키텍처

Ceph는 다음과 같은 핵심 컴포넌트로 구성됩니다.

컴포넌트

역할

MON (Monitor)

클러스터 상태 관리 (맵 관리, 인증, 모니터링)

MDS (Metadata Server)

CephFS 메타데이터(디렉토리, 파일명 등) 관리

OSD (Object Storage Daemon)

실제 데이터 블록 저장 및 복제, 리밸런싱

RADOS (Reliable Autonomic Distributed Object Store)

Ceph 클러스터의 핵심 분산 객체 저장소

RGW

오브젝트 스토리지 (S3, Swift API 제공)

Client

Ceph 클러스터에 접근하는 서버 또는 사용자

CephFS를 사용하려면 특별히 MDS 서버가 필수로 필요합니다.

MDS는 메타데이터(디렉토리 구조, 파일명, 권한 등)를 관리하고, 실제 파일 데이터는 OSD에 저장합니다.


CephFS 특징

  • POSIX 호환: open, read, write, chmod 등 시스템 콜을 지원

  • 고가용성: 다중 MON, 다중 MDS 구성 가능

  • 자가 복구: OSD 장애 시 자동으로 데이터 복제 및 복구

  • 확장성: 수십~수천 대 서버로 무중단 확장 가능

  • 성능 최적화: 메타데이터 캐시 지원, I/O 최적화

  • QoS 정책: 클라이언트별 대역폭 제한 가능

  • 암호화 및 인증: CephX 인증, TLS 통신 지원


CephFS 기본 동작 흐름

  1. 클라이언트가 MON에 접속하여 클러스터 맵을 받아옴

  2. 파일 시스템 작업 시 MDS에 메타데이터 요청

  3. 파일 데이터는 직접 OSD를 통해 읽기/쓰기

  4. MDS는 파일 잠금 관리(locking) 및 consistency 보장

  5. 데이터 무결성 체크 및 장애 자동 복구


CephFS 구성 예시

  • 3개 MON 서버 (고가용성)

  • 5개 OSD 서버 (스토리지 서버)

  • 2개 MDS 서버 (메타데이터 서버)

  • Ceph Client (mount하거나 커널 클라이언트로 접근)

Mount 방법 예시

mount -t ceph {mon-ip-addr}:6789:/ /mnt/cephfs -o name=client.admin,secret={key}

또는 ceph-fuse를 사용할 수도 있습니다.

ceph-fuse -n client.admin /mnt/cephfs


CephFS 설치 개요

  1. OS 준비

    • Ubuntu, CentOS, Rocky Linux 등 지원

    • NTP, SSH 설정

  2. Ceph 설치

    • cephadm, ceph-ansible 또는 수동 설치

    • 최신 버전: Pacific(16.x), Quincy(17.x), Reef(18.x)

  3. MON, OSD 배포

    • MON 부터 클러스터 초기화

    • OSD 디스크 등록 및 배포

  4. MDS 생성

ceph fs volume create cephfs

  1. CephFS 마운트 및 테스트


CephFS 장점과 단점

장점

단점

무제한 확장 가능

초기 설치 및 운영 복잡도 높음

장애 복구 자동화

네트워크 트래픽 및 OSD 간 동기화 부담

통합 관리 (RBD, RGW, CephFS)

스토리지 노드 성능(디스크/네트워크)에 민감

오픈소스 무료 사용 가능

관리 경험 없으면 초기 학습 곡선 존재


CephFS와 다른 스토리지 시스템 비교

항목

CephFS

GlusterFS

NFS 서버

확장성

매우 뛰어남

중간 수준

낮음

장애 복구

자동화 (RADOS 레벨)

수동 조정 필요

기본 지원 없음

설치 복잡도

높음

중간

낮음

성능

높은 병렬 처리 가능

상대적으로 느림

단일 서버 한계

사용 사례

클라우드, 데이터센터

중소기업 파일 공유

간단 파일 공유


실제 CephFS 사용 사례

  • Red Hat OpenStack: 블록/파일 스토리지 백엔드로 Ceph 사용

  • SAP Hana 백업: 대규모 데이터 백업 저장소로 Ceph 사용

  • 클라우드 서비스 제공자: VM 스토리지 및 백업용으로 Ceph 활용

  • 고성능 컴퓨팅(HPC): 과학연구소, 금융분석 데이터 저장


요약

  • CephFS는 고성능, 고확장성을 가진 오픈소스 분산 파일 시스템이다.

  • 중대형 환경에서 뛰어난 데이터 무결성, 고가용성, 확장성을 보장한다.

  • 설치와 운영이 복잡하지만, 한 번 구축하면 뛰어난 안정성과 성능을 제공한다.


추가로 원하시면:

  • CephFS 실제 구축 예제

  • MDS 고가용성 구성법

  • Ceph 클러스터 튜닝 및 성능 최적화 방법

  • Ceph와 Kubernetes 통합(CSI Driver 활용) 방법

도 바로 자세히 설명드릴 수 있습니다.

추가로 “CephFS를 어디에 사용할지”에 따라 튜닝 방향이 달라지는데, 사용하려는 목적이 무엇인가요? 예를 들면 백업용, 대용량 파일 스토리지용, 클라우드 플랫폼용 등 어떤 용도인지 알려주시면 더 맞춤형 안내를 해드리겠습니다.


댓글