Jellyfin은 언제 별도의 데이터베이스 또는 스토리지 호스트를 사용해야 하나요?

에바 왕기술 작가 그리고 이자 ZimaSpace의 상주 장인입니다. 평생을 기술에 열정을 가진 사람으로서 홈랩과 오픈소스 소프트웨어에 열정을 가지고 있으며,복잡한 기술 개념을 쉽게 이해할 수 있는 실습 가이드로 번역하는 데 전문성을 가지고 있습니다.에바는 셀프 호스팅이 어렵지 않고 재미있어야 한다고 믿습니다. 그녀의 튜토리얼을 통해 커뮤니티가 하드웨어 설정의 신비를 풀도록돕고 있습니다. 첫 NAS 구축부터 Docker 컨테이너 마스터링까지.

대부분의 Jellyfin 가정용 환경에서는 미디어 저장 호스트와 데이터베이스 호스트를 분리하기에 앞서, 미디어 저장 역할을 애플리케이션 데이터베이스 역할과 구분하세요. 프로덕션 앱 상태는 지연 시간이 짧은 로컬 SSD에 유지하고, 용량·복구·배치상의 필요가 있을 때만 대용량 미디어를 분리하면 됩니다.

이 결정은 머신 수가 아니라 데이터 역할에 관한 것입니다. Jellyfin에는 지연 시간에 민감한 구성 및 데이터베이스 상태, 재생성 가능한 캐시, 임시 트랜스코딩 데이터, 그리고 크기가 크고 대부분 순차적으로 읽히는 미디어 파일이 있습니다. 이러한 데이터 유형은 서로 다른 저장소, 백업 및 장애 경계의 이점을 얻습니다. 두 번째 호스트는 이전에 로컬이었던 종속성을 취약한 네트워크 경로로 바꾸지 않으면서, 특정 역할에 더 명확한 용량 또는 복구상의 이점을 제공할 때만 유용합니다.

머신을 분리하기 전에 데이터 역할부터 분리하세요

먼저 네 가지 역할로 나누세요. 권위 있는 애플리케이션 상태, 재생성 가능한 파생 데이터, 임시 작업 공간, 미디어입니다. 데이터베이스, 사용자, 시청 상태, 재생 목록, 구성 및 선택한 메타데이터는 복구 단위에 속합니다. 캐시와 트랜스코딩 세그먼트는 일반적으로 다시 만들 수 있습니다. 영화와 음악 파일은 크기가 큰 원본 객체이므로, 보호 전략이 애플리케이션 데이터베이스와 완전히 다를 수 있습니다.

최신 Jellyfin 데이터베이스 유지 관리 가이드는 통합된 10.11 데이터베이스를 일회성 캐시가 아닌 실시간 운영 상태로 설명합니다. 따라서 호스트 배치는 “Jellyfin”이라는 이름이 붙은 모든 디렉터리를 같은 공유 폴더에 넣는 것보다 소유권과 복구 요구 사항을 먼저 고려해야 합니다.

호스트 구성을 그리기 전에 이러한 역할을 정리하세요. 현재 서버에 앱 상태를 저장할 SSD 공간과 백업 범위가 충분하다면 이를 옮겨 얻을 구조적 이점은 없습니다. 미디어 라이브러리가 로컬 드라이브 베이, 전력, 냉각 또는 장애 격리 능력을 넘어섰다면, 애플리케이션은 로컬에 유지하면서 해당 역할을 NAS나 스토리지 서버로 옮길 구체적인 이유가 생깁니다.

외부 데이터베이스 경로가 실제로 지원되지 않는 한 프로덕션 데이터베이스는 로컬에 유지하세요

Jellyfin 10.11에서는 주요 EF Core 마이그레이션이 완료되었지만, 그렇다고 별도의 PostgreSQL 서버가 기본 프로덕션 토폴로지가 되는 것은 아닙니다. 실험적인 PostgreSQL 어댑터가 존재하지만, 여기에 다른 서비스, 자격 증명, 버전 호환성, 백업 순서 및 네트워크 종속성이 추가됩니다. 일반적인 가정용 환경에서는 이러한 비용이 전용 데이터베이스 호스트가 주는 이론적인 깔끔함보다 큽니다.

실험적인 PostgreSQL 릴리스 자체도 해당 어댑터가 프로덕션용이 아니라 평가용이라고 경고합니다. 이 실험적 데이터베이스 경계는 중단 신호입니다. 토폴로지를 더 엔터프라이즈처럼 보이게 만들기 위해 지원되지 않는 백엔드를 중심으로 가정용 복구 계획을 설계하지 마세요.

프로덕션 환경에서 로컬이라는 말은 보호되지 않는다는 뜻이 아닙니다. 애플리케이션 상태를 신뢰할 수 있는 SSD 저장소에 두고, 다른 장애 영역에 백업하며, 동일한 Jellyfin 버전으로 백업이 복원되는지 검증하세요. 선택한 백엔드가 해당 릴리스에서 지원되고, 이를 독립적으로 운영할 수 있으며, 복구상의 이점이 새로운 네트워크 및 버전 결합 비용을 넘어설 때만 데이터베이스 서비스를 분리하세요.

용량이나 드라이브 구성 때문에 필요할 때 미디어를 별도의 스토리지 호스트로 옮기세요

대용량 미디어는 접근 패턴이 다릅니다. 직접 재생은 주로 재생 비트레이트에 맞춰 큰 파일을 순차적으로 읽으므로, 네트워크·마운트·디스크가 동시 스트림을 감당할 수 있다면 NAS도 미디어를 충분히 제공할 수 있습니다. 미디어를 분리하면 컴퓨팅 노드는 작게 유지하면서 스토리지 호스트는 더 큰 풀, 더 많은 드라이브 베이 또는 다른 백업 설계로 확장할 수 있습니다.

최근 한 가정용 구성에서는 Jellyfin의 Docker 데이터를 SSD에 두고 미디어는 HDD에 저장하여, 실용적인 SSD 앱 및 HDD 미디어 분리를 보여줍니다. 이 구성의 단점은 재생 시작 시 드러납니다. SSD에 앱 데이터가 있어 탐색은 빠르게 유지되더라도 절전 상태의 HDD가 깨어나는 데 시간이 걸릴 수 있습니다.

드라이브 확장, 소음 배치, 중복성 또는 여러 서비스가 사용하는 스토리지가 추가 경로를 감수할 만큼 중요할 때 별도의 스토리지 호스트를 선택하세요. 하나의 섀시가 이미 용량과 백업 요구를 충족한다면 미디어를 로컬에 유지하세요. 단순히 분리하기 위한 분리는 실제 사용자 경험을 바꾸지 않으면서 DNS, 마운트, 권한, 네트워크 장애 및 시작 순서 관리 작업만 늘립니다.

스토리지 네트워크를 보이지 않는 케이블이 아니라 필수 종속성으로 취급하세요

미디어를 다른 호스트로 옮기면 Jellyfin은 스캔과 정상 작동 전에 마운트가 준비되어 있어야 합니다. NAS가 없어도 비어 있는 마운트 지점이 유효한 디렉터리처럼 보일 수 있고, 느리거나 불안정한 네트워크는 스토리지 문제를 재생 지연으로 바꿀 수 있습니다. 따라서 토폴로지에는 실패 시 안전하게 중단되는 시작 규칙과 측정 가능한 대역폭 목표가 필요합니다.

커뮤니티 경험에 따르면, 네트워크를 적절히 구성하면 일반적인 가정용 네트워크를 통해 별도의 NAS에서 미디어를 제공하는 방식도 잘 작동할 수 있습니다. 최근 한 논의에서는 많은 사용자가 이 방식을 재생 문제 없이 사용하고 있었습니다. 별도 NAS 미디어 저장소에서 얻을 수 있는 유용한 교훈은 네트워크 분리가 실현 가능하지만, 네트워크를 미디어 경로의 일부로 취급해야 하며 공짜로 가정해서는 안 된다는 점입니다.

스토리지 풀, NAS 네트워크 카드, 스위치, 서버 네트워크 카드, 마운트 프로토콜 및 동시 스트림 수요 중 가장 느린 구간을 검증하세요. 예상한 미디어 마운트가 없으면 Jellyfin을 중지하거나 파괴적인 라이브러리 유지 관리 작업을 일시 중단하세요. 두 번째 호스트는 장애가 명확하고 범위가 제한될 때만 안정성을 높입니다. 장애가 빈 라이브러리로 조용히 변환되어서는 안 됩니다.

분리 여부는 복구 및 확장 테스트로 결정하세요

호스트를 추가하기 전에 두 가지 상황을 연습하세요. Jellyfin 컴퓨팅 노드의 손실과 미디어 스토리지 노드의 손실입니다. 검증된 복원 우선 복구 워크플로는 구성, 영구 데이터, 버전이 지정된 서비스 정의 및 복원 순서를 백업 파일의 존재만으로 추정하지 말고 함께 검증해야 하는 이유를 보여줍니다. 마찬가지로 스토리지 호스트 테스트에서도 미디어의 권위 있는 상태를 다시 작성하거나 삭제하지 않고 Jellyfin이 예측 가능한 방식으로 성능을 낮추도록 해야 합니다.

ZimaSpace의 Jellyfin 스토리지 복구 감사도 동일한 소유권 테스트를 사용합니다. 모든 영구 경로에는 장애 발생 전에 명확한 역할, 백업 범위 및 복원 방법이 지정되어 있어야 합니다.

앱 상태, 미디어 용량, 백업 및 정상적인 최대 I/O가 모두 여유 있게 충족된다면 호스트 하나를 유지하세요. 용량이나 스토리지 수명 주기가 제약이 될 때 미디어 스토리지를 분리하세요. 데이터베이스 제공자가 프로덕션 환경을 지원하고 독립적으로 복구할 수 있을 때까지는 별도의 데이터베이스 호스트를 고급 예외로 취급하세요. 중단 기준은 추가할 수 있는 상자의 최대 개수가 아니라, 역할을 명확히 정의하고 복원할 수 있는 토폴로지입니다.

NAS 및 서버 설정

더 읽어보기

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.