ZFS vs ext4 vs xfs
| 특징 | ext4 | xfs | ZFS |
|---|---|---|---|
| 주요 용도 | 일반 리눅스 데스크톱/서버 | 대용량 파일, 고성능 엔터프라이즈 | 데이터 무결성, 스토리지 서버 |
| 데이터 보호 | 저널링 (메타데이터만 보호) | 저널링 (메타데이터 중심) | 체크섬 (데이터+메타데이터) |
| 스냅샷 | 지원 안 함 (LVM 필요) | 제한적 지원 | 기본 지원 (공간 효율적/즉시 생성) |
| RAID 구성 | 별도 도구(mdadm) 필요 | 별도 도구(mdadm) 필요 | 내장 RAID (RAID-Z, Mirror) |
| 복구 능력 | 손상 시 fsck 필요 | 손상 시 복구 어려움 | Self-Healing (자가 치유) |
ZFS의 이점
- 데이터 무결성(Self-Healing): 모든 데이터에 체크섬을 부여하여 “Silent Data Corruption(비트 로트)“을 실시간으로 감지하고, 미러링된 드라이브에서 데이터를 가져와 자동으로 복구함.
- Copy-on-Write(CoW): 데이터를 덮어쓰지 않고 새로운 블록에 쓴 뒤 포인터를 변경함. 쓰기 도중 전원이 꺼져도 파일 시스템이 깨지지 않음.
- 스냅샷 & 복제: 수천 개의 스냅샷을 만들어도 성능 저하가 거의 없으며, 단 몇 초만에 특정 시점으로 시스템 복구 가능
ZFS 설치 및 환경 구축
1. 패키지 업데이트
EPEL 저장소를 필요로 합니다.
dnf install -y epel-release
dnf upgrade -y
업그레이드 과정 중에 커널 업데이트가 있었다면 서버를 재부팅합시다.
2. ZFS 저장소 추가하기
OpenZFS 저장소를 추가하겠습니다.
dnf install https://zfsonlinux.org/epel/zfs-release-2-2$(rpm --eval "%{dist}").noarch.rpm
3. ZFS 패키지를 설치합니다.
dnf install zfs -y