커뮤니티 솔루션

ZimaBoard에서 RTX 3050 하드웨어 트랜스코딩: 최신 ZimaOS에 맞게 기존 CasaOS 드라이버 튜토리얼 업데이트

A 2023 CasaOS tutorial showing a ZimaBoard 832 with an RTX 3050, manually installed NVIDIA drivers, NVIDIA Container Toolkit, and Jellyfin transcoding. Its apt/kernel-driver steps are historical and should not be copied to current ZimaOS, which has its own NVIDIA driver/runtime and Docker GPU configuration model.

원본은 중요한 하드웨어 사용 가능성을 입증합니다. ZimaBoard는 PCIe를 통해 별도의 NVIDIA GPU를 물리적으로 사용할 수 있으며, 작성자는 컨테이너 기반 미디어 가속에 RTX 3050을 사용했습니다. 그러나 소프트웨어 지침은 현재 ZimaOS가 아닌 2023년의 CasaOS/Debian 스타일 환경에 해당합니다.

다음과 같은 명령 apt install linux-image-generic, apt install build-essentialNVIDIA의 수동 실행 .run 설치 프로그램 및 설치 nvidia-container-toolkit APT를 사용하는 방식은 최신 ZimaOS에 그대로 적용해서는 안 됩니다. 현재 ZimaOS는 이미 NVIDIA 지원 경로를 제공하며, 플랫폼/컨테이너 런타임을 통해 GPU 액세스를 구성해야 합니다.

원래 CasaOS 하드웨어 트랜스코딩 테스트에서 외부 전원이 연결된 RTX 3050 그래픽 카드와 연결된 ZimaBoard
원본에서는 물리적인 PCIe/전원 구성을 보여 주었지만, 소프트웨어 단계는 이제 최신 ZimaOS의 경계를 고려해야 합니다.
원본 하드웨어 트랜스코딩 튜토리얼에서 ZimaBoard와 함께 사용한 외부 전원 GALAX GeForce RTX 3050
별도 GPU에는 외부 전원 공급 장치가 필요할 수 있습니다. ZimaBoard의 PCIe 슬롯은 GPU에 필요한 전원 커넥터를 대신할 수 없습니다.

원래 튜토리얼은 CasaOS와 APT를 기반으로 작성되었습니다

원본에서는 Linux 커널을 업그레이드하고 GCC/빌드 도구와 헤더를 설치한 다음 NVIDIA의 독점 설치 프로그램을 다운로드하고 Debian 패키지 저장소를 사용해 NVIDIA Container Toolkit을 설치했습니다.

이 작업 방식은 변경 가능한 Debian/Ubuntu 스타일 호스트를 전제로 합니다. 현재 ZimaOS는 Buildroot 기반이며 일반적인 호스트 패키지 관리자로 APT를 사용하지 않습니다.

현재 ZimaOS에는 자체 NVIDIA GPU 지원 경로가 있습니다

IceWhale의 최신 문서에서는 트랜스코딩 및 AI 작업에 NVIDIA GPU를 사용하는 방법을 설명하며, 최신 개발자 문서에서는 다음을 사용하는 Docker 서비스를 보여 줍니다. runtime: nvidiaNVIDIA_VISIBLE_DEVICES.

APT로 호스트 패키지를 설치하는 대신 현재 ZimaOS NVIDIA 컨테이너 런타임 모델을 사용하세요.

RTX 30 시리즈는 현재 ZimaOS NVIDIA 지원 지침에 포함됩니다

IceWhale의 최신 AI/GPU 문서에는 현재 NVIDIA/CUDA 경로에서 Ampere RTX 30 시리즈 GPU를 지원한다고 나와 있습니다. 단, 사용하려는 정확한 그래픽 카드에 충분한 PCIe 연결성, 전원, 냉각 성능과 호환 가능한 작업 환경이 필요합니다.

미디어 컨테이너 내부에서 GPU를 확인하세요

호스트 수준 nvidia-smi 호스트 드라이버가 카드를 인식한다는 것만 증명합니다. Jellyfin/Plex도 컨테이너 내부에서 GPU에 액세스할 수 있어야 합니다. 가능한 경우 애플리케이션의 터미널에서 테스트하고 카드가 그곳에 표시되는지 확인하세요.

GPU가 있다고 해서 모든 코덱 경로가 보장되는 것은 아닙니다

하드웨어 트랜스코딩은 GPU의 NVENC/NVDEC 기능, 미디어 코덱/프로필, 자막, 톤 매핑 및 애플리케이션 설정에 따라 달라집니다. 직접 재생 클라이언트에서는 트랜스코딩이 필요하지 않으므로 인코더 활동이 표시되지 않습니다.

외부 GPU 전원은 실제 하드웨어 요구 사항입니다

소스에서는 RTX 3050에 별도의 PSU를 사용했습니다. 현재 구성을 구축할 때는 특정 GPU에 맞춰 전원 공급 장치 용량을 정하고, 해당 카드의 부하를 감당하도록 설계되지 않은 보드 경로에서 커넥터 전원을 끌어오지 마세요.

이전 드라이버 버전을 권장 사항으로 유지하지 마세요

소스에서는 NVIDIA 535.98을 사용했고, 이후 답변에서는 550.142와 Nouveau 블랙리스트 등록을 제안했습니다. 해당 버전들은 당시에는 합리적인 실험이었지만, 현재 ZimaOS 문서에 그대로 고정해서는 안 됩니다. 현재 ZimaOS 릴리스에 포함되었거나 해당 릴리스에 대해 문서화된 드라이버/런타임을 사용하세요.

소스의 “GPU 네트워크 인터페이스” 주장을 일반화해서는 안 됩니다

서론에서는 일부 외장 그래픽 카드가 네트워크 인터페이스를 갖추고 있기 때문에 네트워크 전송을 개선할 수 있다고 설명했습니다. 이는 일반적인 소비자용 RTX 카드의 특성이 아니며 RTX 3050 트랜스코딩 구성과도 관련이 없습니다. 여기서 GPU의 지속적인 이점은 컴퓨팅, 비디오 코덱, 렌더링 및 관련 가속이지, 일반적인 NAS 이더넷 오프로딩이 아닙니다.

PCIe 링크가 트랜스코딩의 첫 번째 병목인 경우는 대개 아닙니다

ZimaBoard/ZimaBlade는 최신 데스크톱 x16 슬롯보다 대역폭이 낮은 PCIe 확장 슬롯을 제공하지만, 비디오 인코딩/디코딩 트래픽은 고사양 게임 작업보다 훨씬 적습니다. Jellyfin/Plex 트랜스코딩에서 실제 병목은 대개 GPU 코덱 지원, 드라이버/런타임 액세스, 트랜스코딩 설정, CPU 측 자막 처리 또는 스토리지/네트워크 처리량입니다.

물리적으로 좁은 PCIe 링크를 NVENC/NVDEC가 미디어 서버에 도움을 줄 수 없다는 증거로 해석하지 마세요. 실제 트랜스코딩을 실행하고 GPU 사용률을 확인하세요.

GPU 커넥터뿐 아니라 전체 전력 예산을 계획하세요

원문에서는 RTX 3050이 ZimaBoard PCIe 슬롯에서 안전하게 공급할 수 있는 전력보다 훨씬 더 많은 전력을 필요로 할 수 있기 때문에 외부 PSU를 사용했습니다. 서버에는 자체 CPU, SATA 디스크, USB 장치와 스핀업 부하도 있습니다.

정확한 그래픽 카드와 연결된 스토리지를 기준으로 PSU 용량을 정하고, GPU에 필요한 PCIe 전원 커넥터를 제공하며, 과열되거나 불안정한 전압을 공급할 수 있는 임의의 어댑터는 피하세요. 부팅 시에는 감지되더라도 부하가 걸릴 때 사라지는 GPU는 전원 문제일 수 있습니다.

패시브 서버 보드와 독립형 GPU를 함께 사용하면 냉각 요구 사항이 달라집니다.

ZimaBoard와 ZimaBlade는 소형 시스템입니다. 독립형 GPU를 추가하면 보드와 스토리지 옆에 뜨거운 배기 열원이 생깁니다. 지속적인 트랜스코딩이나 AI 작업을 수행하면 GPU와 주변 부품이 몇 시간 동안 가열될 수 있습니다.

GPU 주변의 공기 흐름을 막지 말고 실제 작업 중 온도를 모니터링하세요. 짧은 nvidia-smi 유휴 상태에서 확인하는 것만으로는 장기적인 열 안정성을 검증할 수 없습니다.

현재 GPU 지원 앱 정의를 우선 사용하세요.

최신 ZimaOS App Store 패키지는 NVIDIA 런타임/디바이스 구성을 직접 포함할 수 있습니다. 이는 Docker의 전역 기본 런타임을 수동으로 변경하는 것보다 안전합니다. GPU가 필요한 애플리케이션에만 액세스 권한이 부여되기 때문입니다.

현재 App Store 버전에 GPU를 지원하는 Jellyfin/Plex 패키지가 있다면 먼저 해당 패키지를 사용한 다음, 2023년의 시스템 전체 런타임 구성을 다시 만들지 말고 YAML/터미널을 확인하여 디바이스 할당을 검증하세요.

전체 하드웨어 트랜스코딩 체인 검증

  1. 호스트에서 NVIDIA GPU가 인식되는지 확인하세요.
  2. 미디어 컨테이너에서 GPU가 인식되는지 확인하세요.
  3. Jellyfin/Plex에서 올바른 하드웨어 가속 백엔드를 활성화하세요.
  4. 실제로 트랜스코딩이 필요한 미디어를 재생하세요.
  5. 애플리케이션의 트랜스코딩 상태/로그를 확인하세요.
  6. 모니터링 nvidia-smi GPU 프로세스/사용률을 확인하려면 사용합니다.

이렇게 하면 GPU가 올바르게 설치되었지만 모든 테스트 클라이언트가 Direct Play를 사용해 NVIDIA 인코더가 활성화되지 않는 흔한 오진을 방지할 수 있습니다.

ZimaOS에서 RTX 3050 사용 FAQ

현재 ZimaOS 사용자가 원문에 있는 apt 명령을 실행해야 하나요?

아니요. 해당 명령은 과거의 CasaOS/Debian 환경에 속합니다.

현재 ZimaOS Docker 앱에서 NVIDIA GPU를 사용할 수 있나요?

지원되는 NVIDIA 런타임/디바이스 구성이 갖춰져 있고 컨테이너에 GPU 액세스 권한이 할당된 경우에 필요합니다.

RTX 3050에는 별도의 전원이 필요한가요?

많은 모델이 그렇습니다. PCIe 슬롯 전원만으로 충분하다고 가정하지 말고, 해당 GPU의 커넥터와 PSU 요구 사항을 정확히 따르세요.