본문으로 이동
OpenZFS로 성능과 비용, 두 마리 토끼 잡기
문서

OpenZFS로 성능과 비용, 두 마리 토끼 잡기

박명순 · 토스 · 토스 기술 블로그

원본 보기

소개

토스페이먼츠 DevOps 엔지니어가 스토리지 파일 시스템을 OpenZFS로 변경하면서 성능은 높이고 비용은 절감한 과정을 소개합니다.

AI 핵심 요약

Elasticsearch Warm 존에서 저렴한 st1 볼륨을 사용한 결과, 로그 조회 시간이 Hot 존보다 두세 배 느려졌지만 비용 때문에 gp3로 바꾸기는 어려웠습니다. 팀은 fio로 EBS 볼륨과 OpenZFS 설정을 비교하고, 실제 읽기·쓰기 블록 크기에 맞춰 recordsize와 볼륨 개수를 실험했으며 LZ4 압축도 성능 저하가 크지 않은지 확인했습니다. 그 결과 st1 2TB 볼륨 4개에 OpenZFS를 적용하고 recordsize를 128k로 설정해 기존 8TB st1 단일 볼륨과 ext4 구성보다 성능을 약 2.7배 높였습니다. 스토리지 성능은 볼륨 유형뿐 아니라 EBS의 버스트 특성, 파일 시스템 설정, 워크로드를 함께 측정해 최적화해야 한다는 점을 얻었습니다.

  • fio 테스트는 실제 서비스의 I/O 패턴과 블록 크기를 반영하고, st1의 버스트 크레딧 영향을 줄이도록 충분히 길게 실행하세요.
  • OpenZFS의 recordsize는 파일 시스템 기본값을 무조건 따르기보다 워크로드의 평균 읽기·쓰기 크기에 맞춰 비교해야 합니다.
  • LZ4 압축은 테스트 데이터와 실제 데이터 특성을 고려해 성능 영향을 검증한 뒤 적용하세요.
  • EBS 볼륨을 여러 개로 나누면 성능이 높아질 수 있지만, 일정 개수 이후에는 개선 폭과 운영 편의성을 함께 따져야 합니다.