Aller au contenu

La domotique jeedom sous proxmox


Ldfa

Messages recommandés

jeedom.png?1486749939361

Je vous propose ici un tuto pour héberger le système domotique jeedom dans votre proxmox avec prise en charge du zwave et du bluetooth.

J'utilise une solution domotique depuis une petite année chez moi avec beaucoup de plaisir. Mon éclairage est intégralement domotisé / ambiancé, et j'ai des scénario pour balancer de la musique dans chacune de mes pièces en fonction d'évènement ou de déclenchement. Mais avant de rentrer dans le vif du sujet, j'annonce mon plan pour ce papier:

D'abord deux questions importantes pour comprendre l'intérêt que je trouve à utiliser une vm pour cet office et pourquoi j'ai choisi jeedom;

Puis viendra ensuite ma marche à suivre pour installer le système, externaliser les backups, et ajouter mes clé usb bluetooth et zwave.

Pourquoi une vm?

Jeedom a été pensé à l'origine pour tourner sur un rapsberry pi, mais cela a deux inconvénients:

-Le système tue littéralement les cartes sd avec des réécritures permanentes, et la puissance de la carte est vite trop faible quand on commence à ajouter des capteurs.
-À l'inverse consacrer un nuc-like rien qu'à ça me semble relativement dommage: la machine+ram+ssd revient un peu chère.
-Alors qu'avec proxmox on a une solution tellement plus geek; d'autant qu'il est facile de passer des périphériques à une vm (zwave, enocean...). Dans ce cas pour être sûr de son coup, il faut vérifier que son processeur et sa carte mère supporte le vt-d.

#Après j'ai aussi un ami qui passtrought une clé zwave à sa jeedom sans support officiel du vt-d (les constructeurs et leurs fiches techniques...), donc pour faire court: on est juste sûr de n'être sûr de rien.

Pourquoi jeedom?

Bien qu'il soit tout à fait possible d'opter pour des systèmes plus simples, plus maîtrisables, et surtout libre comme domoticz, ou encore de tout bâtir avec ses propres briques logiciels, j'ai choisi d'utiliser la solution domotique jeedom.

En effet, elle s'avère pratique malgré qu'elle ne soit qu'open-source. Pratique puisqu'elle dispose d'une importante communauté et elle est vraiment clé en main (les plus barbus auront raison de me condamner...), mais cela réduit les bidouillages nécessaires pour que ça juste marche, temps précieux pour se concentrer sur la mise en oeuvre de ses idées de scénarii domotiques.


Enfin jeedom n'est qu'une surcouche sur une debian (base sql, apache et php)... Vous êtes donc libre d'ajouter les choses qui vous plaisent sur le système (dans la limite de ne pas trop mettre le désordre là-dedans...).

Comment on fait alors?

L'installation de jeedom

Je pars du principe que vous avez une debian toute fresh d'installée, avec un accès SSH en root (aller là sinon).
Pour installer jeedom, la procédure est très simple; il suffit de récupérer un script, d'autoriser son exécution, puis de le lancer.

~$ wget https://raw.githubusercontent.com/jeedom/core/stable/install/install.sh
~$ chmod +x install.sh
~$ ./install.sh

#Vous n'avez rien d'autre à faire que d'attendre et de ne pas oubliez de noter le mot de passe sql à la fin de l'installation.


Les backups

Je pars ici du principe que vous disposez d'un système de fichier en réseau (nfs, sftp, ftp...). Pour ma part, jeedom étant en local, j'utilise par simplicité mon serveur nfs.


À la racine de mon nfs je dispose d'un dossier sauvegarde dans lequel je stocke mes backups de vm, mes dossiers nextcloud, mes backups de configuration de jeedom, et les scripts de toutes mes sauvegardes.

racinenfs.png?1486751944317
J'aime beaucoup le nfs puisque procéder ainsi me simplifie la maintenance de mes scripts: montés en nfs, ils sont accessibles sur tous mes systèmes locaux, et je les appelle par crontab en une ligne.


Pour monter un partage nfs sur sa vm jeedom:

~$ mkdir /chemin-local/nfs
~$ nano /etc/fstab
~$ ip-du-serveur-nfs:/chemin-distant/nfs/ /chemin-local/nfs/ nfs defaults,user,auto,rw,noatime,rsize=16384,wsize=16384 0 0

Le script de backup de jeedom que j'utilise:


À noter que chaque jour jeedom se backup tout seul dans /var/www/html/backup/ ; mon script ne fait que récupérer le contenu de ce dossier et de l'envoyer sur le répertoire nfs que nous venons de monter. Au passage, il supprime aussi les anciennes sauvegardes de plus de 15 jours. Je vous propose d'enregistrer ce script dans /chemin-local/nfs/sauvegardes/scripts/jeedom/rsync et les backups dans /chemin-local/nfs/sauvegardes/jeedom/rsync.

~$ nano /chemin-local/nfs/sauvegardes/scripts/jeedom/rsync
#!/bin/bash
find /chemin-local/nfs/sauvegardes/jeedom/rsync -type f -mtime +15 -exec /bin/rm -f {} \;
rsync -a --progress --delete --ignore-errors --force /var/www/html/backup/* /chemin-local/nfs/sauvegardes/jeedom/rsync


Il ne reste plus qu'à appeler le script un fois par jour avec crontab:

~$ crontab -e
@daily bash /chemin-local/nfs/sauvegardes/scripts/jeedom/rsync
 

Le passtrought des clés pour élargir les protocoles domotiques supportés par sa jeedom

Je décris cette étape suite à un commentaire d'un lecteur qui m'en avait fait la demande, sans que je prenne le temps sur le moment de décrire la démarche. Sous proxmox c'est assez simple et documenté sur leur howto.

Il faut commencer par déterminer où proxmox attache les périphériques usb à lui:

~$ lsusb -t

mappage.png?1486753112848

On note ensuite le bus et le port, pour moi ce sera:

Bus 01 Port 10 pour la clé zwave; ce qui donnera pour la suite 1-10
Bus 01 Port 09 pour la clé bluetooth; ce qui donnera popur la suite 1-9

#La désignation du périphérique n'est pas forcément explicite, alors simplifiez-vous la vie en tapant la commande 2 fois et en branchant puis en débranchant la clé, au besoin.

Il faut ensuite modifier la conf de sa vm:

~$ nano /etc/pve/qemu-server/id-de-votre-vm.conf


Et d'indiquer à la fin du fichier:

usb1: host=1-10
usb2: host=1-9


usb.png?1486753280125

On termine en rédémarrant sa vm jeedom pour permettre la prise en compte du passtrought, et normalement vous devriez pouvoir faire reconnaitre vos périphériques par le système. Amusez-vous bien!

zwave.png?1486753350717

bluet.png?1486753376152

Afficher l’article complet

Lien vers le commentaire
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.