Installation Avec Virtual Machine Manager
Pour faire suite à mon article du mois de Juin 2020 , Un serveur home assistant et synology , ou j’expliquai comment installer hassio avec Docker ,je vous partage mon retour sur l’installation de home assistant avec Virtual Machine Manager sous Synology.
En effet suite aux dernières versions de Home Assistant , certaines fonctionnalité ne sont pas accessibles sous la version actuelle de Docker inclus dans synology.
Avant de commencer
Installation sous VMM , a des limites . tous les NAS Synology ne sont pas compatibles avec la solution de virtualisation maison. Il est conseillé de disposer d’au moins 4 Go de mémoire. Le paquet VMM permet de gérer jusqu’à 4 périphériques USB au maximum ..
L’installation sous VMM utilisera plus de ressources que l’installation sous docker, à prendre en compte si votre NAS est limité en ressources.
- Liste des NAS compatible avec Virtual Machine Manager ( Synology VMM compatibilité ).
- 4 Go recommandé sur le NAS
- 4 périphériques USB max ( la stabilité des ports USB est aléatoire , j’ai souvent pu constater des problèmes de déconnexion USB suite à des redémarrages du serveur Hass.io )
Installation
il faut récupérer l’image OVA sur le site de home assistant . ( Actuellement l’image est en version 5.8 ).
Puis ouvrir Virtual Machine Manager sur son synology NAS et clic sur le triangle à coté de créer afin de sélectionner importer.
Sélection de l’image depuis le PC
J’ai eu un souci d’importation avec la version 5.8 , l’image refusait de démarrer . J’ai donc récupéré une ancienne version sur le Github de Hass Io . Puis j’ai effectué la mise à jour de l’OS à la fin de la mise en place de la VM ( en fin de chapitre, comment mettre à jour l’image OS via la commande ha os update).
Je choisis l’espace de stockage de la VM
Je configure la VM.
j’associe deux processeurs et deux Mo de mémoire.
Puis l’espace de stockage ( Par défaut 10 go , on pourra étendre la taille du disque dur par la suite).La carte réseau peut être laissée par défaut.
Il faudra choisir type de bios : UEFI ( A la place de legacy bios ), j’ai opté pour type de USB ( version 2 ) , que je trouve plus stable que la version 3 par défaut.
Il sera possible dans un deuxième temps de monter les périphériques USB , comme une clé zwave , un rfxcom , une clé Zigbee ou encore une clé Bluetooth.
Terminé la création de votre image est lancer votre nouvelle VM. Au bout d’une vingtaine de minutes , le serveur Home assistant sera disponible à l’adresse suivante : homeassistant.local:8123
Il ne reste plus qu’a créé un nouveau compte, ou à restaurer une sauvegarde existante.
Add-ons utiles:
Ci dessous une liste d’addon conseillé pour l’utilisation de Hass.io en mode VM
- File editor ou Visual Studio Code: Pour éditer les fichiers de configuration , directement depuis l’interface web de HA
- Samba share : Pour partager les fichiers de configuration via un partage SMB , le fichier de configuration est simple , comme décrit dans la documentation.
workgroup: WORKGROUP
username: homeassistant
password: YOUR_PASSWORD
interface: ''
allow_hosts:
- 10.0.0.0/8
- 172.16.0.0/12
- 192.168.0.0/16
- fe80::/10
veto_files:
- "._*"
- ".DS_Store"
- Thumbs.db
compatibility_mode: false
- Terminal & SSH : Pour accéder via un terminal ssh à home assistant et bénéficier des actions en modes « ligne de commande » . Commande ha
- Portainer: pour gérer vos images docker installés par hass.io . Portainer , permet de garder une vue sur vos dockers Home assistant, et pouvoir agir en cas de problèmes ou des modifications à faire sur les conteneurs ou images en direct.
- Mosquito Broker : Le broker MQTT indispensable sous home assistant ( possible de l’installer hors de HA , si le broker sert pour d’autres périphériques ).
Add-ons optionnel
- AirSonos : Si vous êtes équipés de matériel SONOS , ce plugin permet de transformer tous les sonos de la maison en sonos compatible AIRPLAY
- AppDaemon 4 : Pour exécuter des scripts python , afin d’apporter des nouvelles fonctionnalités à HA. Retrouvez une bibliothèque de script avec le module HACS.
- Dash.io : Si vous disposez de bouton amazon Dash ( github dashio )
- Grafana et Influxdb : Pour avoir des graphiques et statistiques plus visuel.
- Samba backup : Pour la sauvegarde automatique de vos snapshots ( github samba backup )
Ils existent de nombreux autres add-ons , comme duckdns , maria db etc ….
Mes choix de configuration
Pour mon installation, j’ai préféré déporter la partie SSL et la base de données à l’extérieur de home assistant.
Accès externe et SSL :
Pour la partie accès extérieur, et certificat SSL, je préfère passer par le proxy inversé du synology et lui laisser gérer les certificats let’s encrypt.
Vous pouvez trouver sur le net, plusieurs articles, expliquant comment mettre en place SSL et proxy reverse. Quelques exemples ci-dessous , en fonction d’une simple recherche : « synology proxy reverse et ssl »
- reverse proxy : vdays.net , nas-forum , sarakha, etc …
- SSL synology : vdays.net, synology , etc
- Video : synology security
Base de donnée :
J’ai choisi d’utiliser maria DB , hors home assistant ( via le docker du NAS ) , afin de centraliser ma base , pour qu’elle soit accessible depuis une autre instance de Home assistant en cas de panne. Cela me permet aussi d’alléger mes sauvegardes sous home assistant.
J’ai écris un article , sur l’optimisation de HA et l’utilisation d’une base de donnée externe : Optimisation home assistant
Ajustement Configuration :
Suite à des problèmes régulier de déconnexion des ports USB , j’ai choisi d’externaliser ma clé Zigbee sur une passerelle zigbee2Mqtt ( avec un raspberry qui trainait dans mes placards ).
A ce jour , il ne reste plus que la clé Zwave , Bluetooth et RFXcom de connecté à mon NAS , mais j’envisage de les déporter aussi , sur une passerelle afin de pouvoir partager tous ces protocoles entre plusieurs box.
Sur mon docker Synology , tourne la base de donnée , le broker mosquito , mon serveur plex ainsi que d’autres conteneurs de test et outils divers.
Mise à jour de l’OS Hass.io
La mise a jour de l’OS , peut être réalisé en ligne de commande via le terminal ssh .
ha os update --version 5.10
Il suffit de préciser le numéro de version choisi.
Avec cette méthode, il est possible de revenir à une ancienne version si un bug est constaté. Cela marche aussi pour la version du core et du supervisor.
Conclusion
Docker ou VMM sur synology ?
La version docker du synology , est actuellement en version 18 , home assistant demande la version 19 au minimum ( cependant HA est fonctionnel sous docker , mais affiche un message d’erreur ). Dans l’attente que synology passe son docker en version 19 ou 20 , il peut être interessant de passer sur une VM.
Plusieurs paramètres sont a prendre en compte , sur la partie technique avant de passer sur VMM.
- Le type de NAS ( mémoire installé ) , compatibilité VMM et Docker
- L’utilisation du NAS , ressources disponibles ( la VM prend en moyenne 20% de charge processeur )
- Le nombre de périphériques USB à gérer
Si il faut choisir :
Docker : Pour des NAS ayant peu de mémoire ( moins de 4 Go ) ou ayant une charge supérieur à 50%
VMM : Si vous avez au moins 4 Go ou plus et une charge de moins de 50%
Si besoin impératif de gérer plus de 4 périphériques, Docker à la place de VMM. VMM est limité à 4 périphériques USB au max, en pratique 3 conseillé, au-delà VMM est instable, j’ai pu constater des problèmes de déconnexion USB avec 4, j’ai dû déconnecter une clé afin d’avoir une meilleure stabilité.
Avec la version 7 de DSM :
Actuellement les drivers des différentes clés USB comme le Zwave ou rfxcom ne sont pas encore pris en charge. Dans l’attente d’avoir des drivers compatibles , il est conseillé de ne pas migrer sous DSM 7.
8 commentaires sur “Home Assistant et Synology ( partie 2 – VMM )”
Bonjour,
Merci pour ce tuto très utile pour démarrer. Tout roule bien à 1 détail près : la mise à jour de la clef Conbee ne passe pas car elle passe par une phase de reboot, et du coup ce déconnecte de la VM sans s’y reconnecter automatiquement. Auriez vous un astuce pour automatiser le montage d’une clef USB sur la VM. Au redémarrage de Synology par contre elle ce connect bien.
Bonjour , je n ai pas de clef conbee mais effectivement j ai pu constater des problèmes de clef qui ne remonte pas dans Vmm suite au redémarrage du synology. Par exemple avec ma clés zwave.
Pour l instant pas de solution.
Bonjour,
Bien que j’ai chargé la version 7 bêta de DSM, pas de nouvelle mise à jour de Docker pour le moment.
Je vais donc essayer de passer sous VMM. Mais comme mon Synology D218+ n’a que 2Go de RAM, je viens de commander une barrette de 8Go ; en effet, il m’est pour le moment impossible de faire tourner une VM, même peu gourmande (ex Linux)
Merci en tout cas pour le tuto
Et voilà, avec 10 Go de RAM sur mon DS218+ et ce tuto, Home assistant tourner sans problème et j’ai pu faire une mise à jour et changer des add-ons.
Je ne pense pas revenir sous Docker, même s’il y a une mise à jour.
Seul inconvénient, je n’ai pa su récupérer mes snapshots de la version docker et j’ai donc tout repris de zéro.
Merci encore pour ce tuto, qui m’a en plus permis de découvrir la mise en œuvre d’une machine virtuelle sur Synology.
Super.
Pour les snapshots , il y a aucun soucis de transfert entre les différents systèmes. Pour ma part ente docker et VM tout a bien fonctionné.
Quel a était votre problème ?
Je n’ai pas trouvé les snapshots enregistrés sous docker ni comment les recharger dans la nouvelle instance. J’avais espéré les retrouver sur le « cloud » payant de home assistant, mais ce n’est pas le cas (dommage).
Finalement, plutôt que de passer du temps à chercher, j’ai préféré reconstruire mon HA.
L avantage de docker c est que les images sont dans le dossier backup du dossier config mappé sur un dossier partagé du synology. Du coup pas besoin de sauvegarde. Avec la Vm , les snapshot sont dans l image Vm. Il faut donc penser à les sauvegarder Avec synology c est simple à faire.