Frigate NVR 구축 가이드: 클라우드 없이 만드는 AI 감시 카메라 시스템

Admin LeeJul 11, 202610 min read9 views

💡 글의 핵심 3줄 요약

  1. Frigate는 IP 카메라 영상을 클라우드로 보내지 않고 홈서버에서 직접 AI 객체 감지를 수행하는 오픈소스 NVR로, 구독료와 프라이버시 걱정을 동시에 해결합니다.
  2. 모든 프레임이 아니라 움직임이 감지된 영역만 골라 분석하는 똑똑한 구조 덕분에, 미니 PC급 하드웨어에 가속기 하나만 더해도 실시간 감지가 가능합니다.
  3. MQTT와 Home Assistant 연동으로 "사람이 감지되면 조명 켜기" 같은 자동화까지 이어지면, 단순 CCTV가 완전한 로컬 보안 시스템으로 진화합니다.

Frigate NVR 구축 가이드: 클라우드 없이 만드는 AI 감시 카메라 시스템

안녕하세요! 혹시 집에 IP 카메라 한두 대쯤 두고 계신가요? 요즘 판매되는 홈 카메라는 대부분 클라우드 서비스와 한 묶음입니다. 녹화 영상을 오래 보관하려면 월 구독료를 내야 하고, 우리 집 거실 영상이 어느 나라의 어떤 서버에 저장되는지는 약관을 읽어봐도 아리송하죠. "내 집 영상인데 왜 남의 서버에 돈 내고 맡겨야 하지?"라는 의문, 한 번쯤 가져보셨을 겁니다.

홈서버를 운영하는 우리에게는 다른 선택지가 있습니다. 바로 Frigate입니다. 카메라 영상이 집 밖으로 단 한 바이트도 나가지 않으면서, 상용 서비스 못지않은 AI 객체 감지까지 해내는 오픈소스 NVR(Network Video Recorder)이죠. 오늘은 이 물건이 어떻게 동작하는지, 어떤 하드웨어가 필요한지, 그리고 Docker로 어떻게 올리는지 차근차근 살펴보겠습니다.

Frigate NVR, 무엇이 특별한가요?

Frigate의 핵심 가치는 딱 두 단어로 요약됩니다. 로컬(Local), 그리고 실시간(Realtime)입니다.

기존 IP 카메라의 자체 움직임 감지 기능, 써보신 분은 아실 겁니다. 나뭇가지가 흔들려도 알림, 고양이가 지나가도 알림, 밤에 벌레가 렌즈 앞을 날아다녀도 알림이 옵니다. 하루에 수십 번씩 울리는 가짜 알림에 지쳐서 결국 알림을 꺼버리게 되죠. 보안 카메라인데 알림을 꺼놓는 아이러니라니요.

Frigate는 이 문제를 AI 객체 감지로 풉니다. 단순히 "화면에 변화가 있다"가 아니라 "사람이 현관에 서 있다", "차가 진입로에 들어왔다"처럼 무엇이 나타났는지를 구분합니다. 관심 있는 객체(사람, 차, 반려동물 등)만 골라서 알림을 받을 수 있으니 가짜 알림이 극적으로 줄어듭니다.

여기서 엔지니어링 관점으로 한 겹 더 들어가 보면, Frigate의 설계가 꽤 영리하다는 걸 알 수 있습니다. 모든 프레임에 무거운 객체 감지 모델을 돌리는 대신, 가벼운 움직임 감지를 먼저 수행해서 "어디를, 언제 분석할지"를 추려냅니다. 그리고 움직임이 있는 영역만 잘라서 AI 모델에 넘기죠. 연산 자원이 한정된 환경에서 전처리로 부하를 걸러내는, 임베디드 시스템에서 흔히 쓰는 파이프라인 최적화 발상입니다. 덕분에 거대한 GPU 서버 없이도 실시간 감지가 가능해집니다.

하드웨어 준비: 가속기 선택이 절반입니다

Frigate 구축에서 가장 중요한 결정은 객체 감지를 어디서 돌릴 것인가입니다. CPU만으로도 동작은 하지만, 감지 속도가 느리고 CPU 점유율이 치솟기 때문에 카메라가 두 대만 넘어가도 한계가 옵니다. 그래서 전용 AI 가속기를 붙이는 것이 정석입니다.

2026년 기준 가속기 선택지

한때 Frigate의 국민 가속기였던 Google Coral Edge TPU는 이제 새 구축에는 추천되지 않는 분위기입니다. 여전히 지원은 되지만 벤더의 후속 지원이 사실상 멈춰 있고, 더 나은 대안들이 나왔기 때문입니다. 2026년 현재 새로 구축한다면 크게 세 갈래를 고려할 수 있습니다.

첫째, 인텔 내장 GPU + OpenVINO 조합입니다. N100 같은 저전력 인텔 미니 PC를 홈서버로 쓰고 계시다면, 별도 하드웨어 추가 없이 내장 GPU로 객체 감지를 돌릴 수 있습니다. 비용 제로로 시작할 수 있어 입문자에게 가장 부담이 없습니다. 둘째, Hailo-8 계열 가속기입니다. 라즈베리파이 5의 AI 킷으로 채택되면서 접근성이 좋아졌고, 전력 대비 추론 성능이 뛰어나 전용 NVR 머신을 꾸미기에 좋습니다. 셋째, NVIDIA GPU + TensorRT입니다. 이미 그래픽카드가 달린 서버가 있다면 가장 강력한 선택지로, 카메라 대수가 많거나 고해상도 스트림을 다룰 때 여유가 넘칩니다.

여기에 한 가지 더, 녹화와 실시간 보기를 위해서는 영상 디코딩용 하드웨어 가속(인텔 Quick Sync 등)도 챙기면 좋습니다. 감지는 가속기가, 디코딩은 iGPU가 나눠 맡는 구조가 저전력 홈서버의 이상적인 그림입니다. 스토리지는 24시간 쓰기가 반복되므로 감시용 등급 HDD나 여유 있는 용량의 디스크를 권합니다.

Docker Compose로 Frigate 올리기

우리 홈서버의 표준 방식대로 Docker Compose로 설치해 보겠습니다. 기본 구성은 놀랄 만큼 단순합니다.

services:
  frigate:
    container_name: frigate
    image: ghcr.io/blakeblackshear/frigate:stable
    restart: unless-stopped
    shm_size: "512mb"
    devices:
      - /dev/dri/renderD128:/dev/dri/renderD128  # 인텔 iGPU (OpenVINO/VAAPI)
    volumes:
      - ./config:/config
      - ./storage:/media/frigate
      - type: tmpfs
        target: /tmp/cache
        tmpfs:
          size: 1000000000
    ports:
      - "8971:8971"   # 웹 UI
      - "8554:8554"   # RTSP 재배포

핵심 설정은 config 디렉토리의 config.yml에서 이루어집니다. 카메라의 RTSP 주소를 등록하고, 감지할 객체와 감지 영역(zone)을 정의하는 식입니다. 예를 들어 현관 카메라에서 사람만 감지하고 싶다면 이렇게 씁니다.

cameras:
  front_door:
    ffmpeg:
      inputs:
        - path: rtsp://user:[email protected]:554/stream1
          roles: [detect, record]
    detect:
      enabled: true
    objects:
      track: [person]
    record:
      enabled: true
      retain:
        days: 7

한 가지 실전 팁을 드리면, 요즘 Frigate에 내장된 go2rtc를 함께 활용하는 것이 좋습니다. 카메라 스트림을 go2rtc가 한 번만 받아서 감지용, 녹화용, 실시간 보기용으로 재분배해 주기 때문에 카메라에 걸리는 커넥션 부담이 줄고 지연 시간도 짧아집니다. 저해상도 서브 스트림은 감지에, 고해상도 메인 스트림은 녹화에 쓰는 식으로 역할을 나누면 자원 효율이 한층 올라갑니다.

Home Assistant 연동: CCTV에서 보안 시스템으로

Frigate가 진짜 재미있어지는 지점은 지금부터입니다. Frigate는 감지 이벤트를 MQTT로 발행합니다. "front_door 카메라에서 person 감지 시작/종료" 같은 이벤트가 실시간으로 브로커에 흘러들어오죠. 이 이벤트를 Home Assistant가 받아먹는 순간, 단순 녹화기가 스마트홈의 보안 두뇌로 승격됩니다.

공식 Frigate 통합을 설치하면 카메라별 감지 상태가 Home Assistant 엔티티로 노출됩니다. 그러면 이런 자동화가 가능해집니다. 밤 10시 이후 마당에서 사람이 감지되면 외부 조명을 켜고 휴대폰으로 스냅샷을 전송하기. 가족이 모두 외출한 상태에서 실내 카메라에 사람이 잡히면 사이렌을 울리기. 택배 차량이 진입로에 들어오면 현관 스피커로 알림 재생하기. 이 모든 판단이 클라우드를 한 번도 거치지 않고 우리 집 서버 안에서 완결된다는 점이 핵심입니다. 인터넷이 끊겨도 보안 시스템은 계속 돌아갑니다.

외부에서 확인하고 싶을 때는 이전 글에서 다뤘던 Tailscale 같은 메시 VPN을 통해 접속하면 포트 개방 없이 안전하게 볼 수 있습니다. 참고로 Frigate에는 유료 서비스인 Frigate+도 있는데, 이는 클라우드 녹화가 아니라 내 카메라 환경에 맞춘 커스텀 감지 모델을 학습해 주는 서비스입니다. 무료 버전만으로도 충분히 실용적이니 부담 없이 시작하셔도 됩니다.

결론: 내 영상은 내 서버에

정리해 보겠습니다. Frigate는 셀프호스팅 진영이 상용 클라우드 서비스를 기능 면에서도 따라잡았음을 보여주는 대표적인 사례입니다. 구독료 없이, 프라이버시 침해 없이, 오히려 상용 제품보다 유연한 자동화까지 얻을 수 있으니까요.

물론 공짜는 아닙니다. 초기 하드웨어 투자와 설정을 익히는 시간이 들고, 스토리지 관리도 스스로 해야 합니다. 하지만 홈서버를 이미 운영하는 분이라면 그 비용의 대부분은 이미 지불한 셈입니다. 미니 PC 한 켠에 컨테이너 하나 더 올리는 것으로 시작할 수 있으니까요. 이번 주말, 먼지 쌓인 IP 카메라가 있다면 RTSP 주소부터 확인해 보시는 건 어떨까요? 클라우드 없는 AI 감시 카메라의 세계가 생각보다 가까이 있습니다.

This post was drafted with the help of AI tools and personally reviewed and edited.

Share:

Thanks for reading!

If you found this post useful, check out more articles on the homepage.

Read More Posts