Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
Frigate NVR
#1
Frigate c'est quoiC'est un NVR open source 

NVR : Network Video Recorder, Un truc qui permet d'enregistrer les video de vos caméra en gros  Big Grin Big Grin 

Voici la présentation tiré de leur site :

Citation :Surveillez vos caméras de sécurité avec une IA traitée localement

Frigate est un NVR open source construit autour de la détection d'objets IA en temps réel. Tout le traitement est effectué localement sur votre propre matériel et les flux de vos caméras ne quittent jamais votre domicile.

Home Assistant: 
Frigate s'intègre facilement a HA.
Peut importe la méthode, je vous conseille d'installer Frigate de maniere séparé a Home Assistant. Ca peut être sur la meme machine mais dans une VM ou un container a part.

Materiel Recommandé :
Vous trouverez le materiel recommandé : https://docs.frigate.video/frigate/hardware
Pour un bien Frigate necessite du materiel capable de faire la travail d'analyse video, pour eviter que ca passe par le CPU il existe des petites cartes qui permettent de faire ce travail. 
Frigate appel ca : Detectors.
Les plus connu sont probablement les Google Coral, qui existe en plusieurs version : USB/NVMe/M.2...
Mais il y a aussi du materiel récent qui embarque des détecteurd compatible sur des architecture Intel/AMD...

Avant de vous jeter sur l'achat d'un module, réfléchissez bien a comment vous allez faire tourner Frigate, cherchez des tuto a la recherche de toutes les astuces.

Il faut aussi penser DDur, il y a des série qui sont plus approprié a ce type d'usage qui sollicité en permanence les ddur.

Comment on fait tourner ca : 
On peut le faire tourner de plusieurs façon :
  1. Sur une machine dédié
  2. Sur une VM (Dans Proxmox par exemple)
  3. Dans un container LXC (plusieurs manière aussi de faire je pense là aussi)
  4. ...
Installation de Frigate :

Frigrate tourne normalement sous Docker.


1. Sur une Machine Dédié
Il n'y a qu'a suivre le site
Cette méthode est probablement la plus simple. 

Par contre ca vaut le coup de se donner un peu de peine de regarder un peu coté virtualisation je pense, car la virtualisation apporte pas mal d'atout en therme de backup par exemple. 


2.Sur proxmox : 
Frigate recommande un container LXC plutôt qu'une VM, par contre c'est pas la partie la plus facile. Enfin oui et non, quand on recolte les bonnes info a droite et gauche ca le fait.

Pour une install sur une VM, le passage d'une clé Coral a la VM nécessite quand même quelque manip. C'est pas forcément le plus simple.
On trouve des tuto sur le NET, mais attention, en fonction de votre plateforme Intel/AMD il faudra adapter certaine étape.

Option 1 : Sur une VM
Creer une VM Debian ou ubuntu
Installer Docker
Installer Frigate
* Si on utilise un Detecteur Type Google Coral, il faudra faire du Passthrough de périphérique PCIe/USB

Option 2 : Dans CT LXC via Script tteck
tteck propose un script d'installation de Frigate pour un Container LXC, il me semble qu'il n'utilise pas docker.

Citation :Frigate LXC
Frigate is an open source NVR built around real-time AI object detection. All processing is performed locally on your own hardware, and your camera feeds never leave your home.
To create a new Proxmox VE Frigate LXC, run the command below in the Proxmox VE Shell.
Copy
Code :
bash -c "$(wget -qLO - https://github.com/tteck/Proxmox/raw/main/ct/frigate.sh)"

⚡ Default Settings: 1GB RAM - 20GB Storage - 4vCPU ⚡
Frigate Interface: IP:5000
go2rtc Interface: IP:1984

Option 3 : Dans CT LXC via Docker
Créer un CT LXC Debian 12
Configuration du Passthrough : Il faut configurer le CT pour que l'on passe la clé USB* ou NVMe au CT
Installer Docker
Installer Frigate

*Le passage de clé USB au container peu paraitre déroutant, car la clé change de nom quand elle n'a pas encore été utilisé et ensuite quand les drivers sont chargé (une histoire comme ca). Du coup ca complique les choses quand on veut dire a proxmox qu'il faut passer la Clé Toto quand elle s'appellait Titi 2s avant.  Big Grin
Mais pas panique il y des solutions.



Quelques Liens utiles :

Bon avant de vous donner plus de détail : voici qq lien qui peuvent être utile : 
Raynox : VM + Clé Coral USB
https://www.youtube.com/watch?v=jEgKU5U4kGw

apalrd : LXC + Podman  (alternative a Docker) + Coral PCIe
https://www.apalrd.net/posts/2023/ultimate_frigate/
https://www.youtube.com/watch?v=sCkswrK0...0&index=12

Raspberry Pi Cloud (Video En allemand, mais avec les sous titre ... )
Install tteck 
https://www.youtube.com/watch?v=OHnLHljs_jo

De mon coté j'ai 3 Clé Coral : USB/PCIe Dual TPU (De mémoire)/M2. Histoire d'avoir le choix du matériel.
Je n'ai pas de config hyper récente, mais je n'ai pas non plus chercher a savoir 

En cours de rédaction.
KNX Partner Base / Avancé

Ma boite de MP est pleine, merci de créer un post si vous avez une question, cela profitera a tout le monde.
Répondre
#2
Merci @filou59 pour les infos.

Quels sont les avantages de la solution 3 (dans un lxc via Docker) par rapport à la solution 2 (dans un LXC) ? Je voudrais tester Frigate sans la Clé Coral et l'ajouter ensuite si nécessaire.

Sur la documentation officielle Frigate, il est mentionné :  "Frigate fonctionne mieux avec Docker installé sur les distributions nues basées sur Debian.", peut-être la première raison pour privilégier la solution 3 ?
Répondre
#3
Docker et LXC ce sont 2 solutions de conteneurisation d'applications.

Si on met de coté les affinité :
LXC sous proxmox : c'est quelque chose de vraiment léger, quand on peut c'est la meilleurs solution je trouve.
Docker : D'un coté Proxmox recommande d'installer Docker dans une VM, mais du coup ca nous donne une solution bcp plus lourde en terme de poid, mais aussi de deploiement, mais si on prend le cas de Frigate, la team de Dev explique clairement qu'il faut privilégier la solution Docker via container pour les perfs.
Docker dans un LXC c'est pas ce qui a de plus facile a mettre en oeuvre, car il faut réussir a gerer des problèmes de permissions qui sont parfois difficile, si on veut travailler un LXC en mode unprivileged (ce qui est mieux niveau sécurité)

Je dirais qu'il y aussi le cas des applications qui sont distribué sous plusieurs forme, on peut donc les installer facilement dans une VM, un LXC ou via une image Docker.
Après il y en qui ne sont distribué que via des images Docker, c'est un peu le cas de Frigate.
Mais il y a des gars qui arrivent a nous pondre des scripts d'installation qui nous facilite la vie comme tteck et là du coup on se grate la tete pour savoir quel est la meilleur méthode.

Ce qui peut aussi rentrer en ligne de compte, c'est l'expérience que l'on a. 
Si je prend mon car personnel, je découvre Linux, Proxmox, LXC, Docker ...
Même si on trouve plein de tuto Docker , c'est pas forcément ce qui a de plus facile a mettre en oeuvre, si on ne se contente pas de suivre bêtement un tuto et si on veut comprendre les choses. Donc pour le moment je préfère les solutions basé sur LXC qui sont en général plus simple car il n'y a pas la couche Docker.
Avec LXC : C'est comme si on était sur une distribution Linux Classique.
Avec Docker : Il faut maitriser un minimum de chose : Docker, Docker Compose, éventuellement Portainer voir Dockege pour la gestion, ensuite il faut comprendre les volumes, la partie réseau... , comment on fait pour modifier un CT Docker après l'avoir déployé, comment le mettre a jour...


Quand on se pose la question Docker, on a forcément la question de savoir comment on l'install :
-Une VM ou un LXC dans lequel on install Docker puis on met plusieurs container dedans.
ou
-Plusieurs LXC Docker qui contiennent chacun un service : Exemple un LXC Frigate, un LXC PiHole, un LXC Wireguard ...

La dernière solution pour moi est la meilleur, ca permet d'isoler les services, de faciliter la reprise en cas de probleme en récupérant un backup.
Certains diront que c'est plus lourd a maintenir a jour, ce qui est pas faux, mais la sécurité ou la souplesse a un prix.


Bon au final pour en revenir a nos moutons : LXC ou Docker pour frigate ?
Là on ne parle que d'installation pour un test, le plus simple moi je dirais que c'est le script de tteck , même si c'est pas la voie officiel de le team de dev de Frigate.

Car ton but, c'est de tester le produit et de voir comment le configurer puis de l'intégrer dans H.A je suppose ? 

De toute facon sans accélerateur, ce qui risque de ce passer c'est que ton containeur utilisera pas mal de CPU. 
Ensuite tout dépend de ton CPU et de sa génération.

On trouve plein de tuto/méthode pour la partie installation je trouve, mais un peu moins pour la partie configuration ou la prise en main (a part peu etre sur YT)
Il faut prendre un peu plus de temps pour la 2nd partie j'ai l'impression.

C'est pas forcément la question la plus facile tout en restant objectif tu l'auras compris, tout dépend des afinités de chacun.
KNX Partner Base / Avancé

Ma boite de MP est pleine, merci de créer un post si vous avez une question, cela profitera a tout le monde.
Répondre
#4
Merci @filou59 pour ces infos.

J'ai installé le script docker LXC de tteck (rebaptisé Helper-Scripts). 

Voici les options choisies (je passerai en ip fixe avec Proxmox) ; j'ai un doute pour "Using local for template storage" et "Using local for container storage" car je pouvais choisir un volume de mon NAS ?

[Image: dw89.jpg]
Répondre
#5
Donc tu as choisis d'installer Docker en LXC, et Frigate via la méthode classique dans Docker ?

Template Storage : C'est là ou son stocker les template qui serve de modele, si le modele a déjà été téléchargé on le réutilise. Moi j'aime bien avoir une copie en local histoire que ce soit plus rapide. Comme en plus je n'utilise pas bcp de template différent ca prend pas de place.

Ton dépend de ton architecture et le place que tu as :
Jaime bien avoir une config ZFS avec :
1xPool ZFS pour L'install de Proxmox + le Boot : 2xSSD de gamme Entreprise d'occas.
1xPool ZFS pour les VM/Docker...

Le VM/CT : Il faut les mettre sur le 2nd,
Les ISO ou les Template, on peut les mettre aussi sur ce pool ou a distance sur un NAS si on est pas préssé. (facon de parler)

Je n'utilise pas lvm, mais local-lvm c'est là que tu dois stocker tes container, dans tout les cas il faut que ce soit en local celui-là. C'est bcp mieux que de mettre ca a distance a moins de savoir ce que l'on fait et de passer sur des techno bien précise.
KNX Partner Base / Avancé

Ma boite de MP est pleine, merci de créer un post si vous avez une question, cela profitera a tout le monde.
Répondre


Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)