전산쟁이의 기억노트
Ceph 스토리지 구축 본문
ceph 소개
분산 객체 스토리지를 구성하는 OSS
서버 구성은 OSD, Monitor, Manager, MDS 서버가 필요
논리적으로 구성한 Storage pool안에서 데이터를 개체로 저장. Crush알고리즘을 사용해서 배치그룹을 계산하고 저장
구성정보
Component 종류
ceph-mon(모니터노드) : 클러스터 상태를 체크하고, 데몬과 클라이언트간 인증관리 담당 / HA구성시 3대 필요
ceph-mgr(관리노드) : 스토리지 활용도 / 현재상태 및 메트릭 추적 (dashboard 및 RestAPI 제공) / HA구성시 2대 필요(Active / Standby)
ceph-osd(객체스토리지 데몬) : 데이터를 저장하고 복제 / 부하분산 역활을 수행 (OSD디스크 1TB당 메모리 1G이상으로 구성을 권고), HA구성시 최소 3대 필요
ceph-mds : CEPH FS를 대신해서 메타 데이터를 관리하는 서버. = Block Devices / Object Storage에서는 MDS를 사용하지 않음
Component Hardware Spec
Component
|
Hardward
|
Spec
|
osd
|
CPU
|
OSD당 2 Core
|
osd
|
MEM
|
데몬당 4GB이상
|
osd
|
DISK
|
최소 1TB이상,(SSD 권장)
단일 디스크에서 여러 OSD 실행은 비권장 단일 디스크에서 osd+mon+mds 실행방식 비권장 OSD용 디스크는 OS와 분리해서 사용(성능저하 이슈) |
osd
|
NIC
|
10G이상
|
mon
|
CPU
|
2코어 이상
|
mon
|
MEM
|
데몬당 24GB이상
|
mon
|
DISK
|
데몬당 60GB
|
mds
|
CPU
|
2코어 이상
|
mds
|
MEM
|
데몬당 2GB이상
|
mds
|
DISK
|
데몬당 1MB 이상
|
mds
|
NIC
|
1Gb 이상
|
* OSD에 RAID구성시 성능저하가 발생할 수 있으므로 BMT를 통해 성능 비교 권고
시스템 이해
OSD Backend
Bluestore
Ceph 12.2이후 부터 default storage
저장장치를 직접 엑세스 해서 데이터를 관리 - XFS같은 파일시스템을 사용하지 않음
RocksDB를 통한 메타데이터 관리
전체 데이터 및 메타데이터 checksum 수행 - 무결성 유지
inline압축 - 디스크에 저장하기 전에 선택적으로 압축수행
데이터 관리 계층화 - journal을 별도 장치에 기록할 수 있어 성능향상 가능.
CoW을 사용하기 때문에 기존보다 향상된 IO
Filestore
Ceph에 개체를 저장하는 방식.
일부 메타데이터에 대해 LevelDB를 사용해 key/value로 저장
파일시스템을 btrfs / ext4에서 사용시 알려진 결함이 있어 데이터가 손실될 수 있음 (XFS는 영향없음)
Pool
개체를 저장하기 위해 사용하는 논리 파티션
Recovery : 데이터 손실없이 사용할 수 있도록 설정하는 OSD
PG : Pool에 대한 배치 그룹 수 (일반적으로 OSD당 100개의의 PG을 사용)
Cursh Rule : 데이터를 Pool에 저장할때 Crush Rule에 의해 결정
Snapshot : 특정 Pool의 스냅샷 생성
Pool을 사용하기 위해서는 어플리케이션과 연결되어 있어야 하며, RBD에서 사용할 경우 RBD도구를 사용해서 초기화가 필요 (cephfs / rbd / rgw 중 택1)
CephFS
분산 개체 저장소인 RADOS를 기반으로 구축된 파일시스템
공유 디렉토리 및 HA를 제공
CephFS는 데이터용와 메다데이터용으로 각각 2개이상의 RAODS Pool이 필요
메타데이터 pool에서 데이터가 손실되면 전체파일 시스템 액세스가 불가능
메타 데이터 pool에 SSD 사용
데이터 풀은 파일시스템을 생성하고, 기본적으로 모든 inode 정보를 저장하는 위치
NFSExport
NFS-Ganesha NFS를 이용해 CephFS 네임스페이스 export 가능
ceph 소개 분산 객체 스토리지를 구성하는 OSS 서버 구성은 OSD, Monitor, Manager, MDS 서버가 필요 논...
igoni.kr
'storage' 카테고리의 다른 글
RHEL환경의 VDO 구축 / 운영 (0) | 2022.07.24 |
---|---|
RHEL환경에서 VDO 사용하기 (0) | 2022.07.24 |
centos6.x drbd설치 (0) | 2022.07.24 |
DRBD 기술노트 (0) | 2022.07.24 |
Glusterfs rpm 설치 (0) | 2022.07.24 |