Hass.io, Hassbian, HassOS: cosa cambia?
Lo scopo di quest’articolo è di fare un po’ chiarezza sulla differenza tra Home Assistant, Hass.io, HassOS e Hassbian e sulle differenze tra i diversi tipi di installazione.
Home Assistant è un software per la cosiddetta “home automation”, o domotica. È scritto in Python ed è open source (rilasciato sotto licenza APL 2.0), può quindi essere installato su qualsiasi piattaforma supportata da Python ed è gratuito.
In rete si è venuta a creare un’enorme confusione tra Home Assistant ed Hass.io, confondendo spesso quest’ultimo per il primo, senza sapere cosa sia realmente.
Hass.io è il frutto della combinazione tra Home Assistant ed altri strumenti (hassio-supervisor) che permettono di gestire gli aggiornamenti di HA e aggiungono il supporto agli add-on. Hass.io viene distribuito tramite container Docker: Home Assistant, hassio-supervisor e i vari add-on vengono eseguiti ognuno in un container diverso.
Docker è uno strumento per la distribuzione e la gestione dei container. Un container è un insieme di uno o più processi isolati dal resto del sistema, tutti i file necessari per eseguire tali processi vengono distribuiti in un’immagine. Docker potrebbe essere visto come un sistema di virtualizzazione, ma la differenza è che una macchina virtuale emula un sistema operativo intero (hardware compreso), Docker invece condivide lo stesso kernel (che è il kernel Linux) tra tutti i container in modo da non avere quella perdita di prestazioni che si avrebbe con la virtualizzazione.
Grazie ad hassio-supervisor abbiamo la possibilità di aggiornare Home Assistant, gestire gli add-on e creare dei backup di tutta l’installazione con un singolo click attraverso la tab “Hass.io” che si trova nel pannello a sinistra dell’interfaccia grafica. Tab che non è presente in un’installazione “standalone” di Home Assistant.
Molti pensano che installare Hass.io rispetto ad Hassbian o ad un’installazione standalone di HA sia un po’ come darsi una zappa sui piedi dal momento che si andrebbe a perdere la possibilità di installare altri software sul Raspberry (o sul device che sia). Ma ciò è falso, anche perché, pensandoci, sarebbe contro la natura di Docker. Questa limitazione non viene infatti creata da Hass.io, ma da HassOS, il sistema operativo embedded (dedicato a svolgere una sola funzione) che viene usato dalle immagini di Hass.io. Questo sistema operativo, proprio per la sua natura di sistema embedded, contiene il minimo indispensabile per far funzionare Docker, e quindi a sua volta i container di Hass.io; non è quindi possibile installare altri software né tantomeno avere l’accesso root, siccome la sua partizione è read-only.
Lo schema di seguito rappresenta l’architettura di un sistema Hass.io:
Come si evince, tutto gira all’interno di dei container Docker (che è installato a monte del sistema operativo), tranne HC (Host Control), che è un daemon che serve a gestire le impostazioni di rete, riavviare e tenere aggiornato il sistema operativo.
N.B. Hass.io non è da confondere con Home Assistant in Docker, che è comunque un’installazione standalone di HA e non ha gli strumenti offerti da Hass.io; è quest’ultimo che invece contiene anche Home Assistant in Docker.
Arrivati a questo punto la domanda sorge spontanea: è possibile installare Hass.io a monte di un sistema operativo completo e che mi permetta di installare anche altri software? La risposta è sì, è possibile farlo, e, nell’attesa di pubblicare una guida su questo sito, vi rimando alla wiki ufficiale per tutti i passaggi da seguire per installarlo.
All’inizio del paragrafo precedente ho citato Hassbian come un altro tipo di installazione di Home Assistant. Hassbian è un sistema operativo che a differenza di HassOS è basato su Raspbian (che a sua volta è basato su Debian) e viene distribuito con Home Assistant preinstallato di fabbrica, che in questo caso non gira in un container Docker, ma direttamente sul sistema operativo in un’environment virtuale di Python 3.
Quindi, riassumendo tutto: Home Assistant è il software che noi tutti conosciamo; Hass.io è un metodo di installazione di Home Assistant che offre degli strumenti aggiuntivi per la gestione degli aggiornamenti di HA, dei backup e degli add-on, si basa su Docker ed è ottimizzato per dispositivi embedded (come i Raspberry Pi); HassOS è un sistema operativo che contiene il minimo indispensabile per far funzionare Hass.io; Hassbian è un sistema operativo completo, basato su Raspbian, che ha Home Assistant preinstallato.
Articolo scritto da Marco Realacci, telegram.me/RealFantasy, marcorealacci.me
5 risposte
Salve,
ho letto l’articolo devo dire davvero chiaro. Una cosa non ho capito e sicuramente non so come fare. Io ho Hassbian. Posso passare ad Hass.io senza perdere tutta la configurazione attuale lo storico ecc.?
Se si come fare?
Grazie mille e saluti.
Sì, basta copiare tutti i file yaml. Per lo storico devi copiare il file .db che trovi nella cartella insieme a tutti i config.
Grandissimi !! Bellissimo articolo: chiaro, conciso e risolutore 🙂
Articolo interessante.
Io sono partito dall’installazione di Home Assistant su raspberry, poi ho provato hass.io ma ho riscontrato un problema. Seguendo questa guida, https://www.home-assistant.io/components/wake_on_lan/, con la prima installazione riuscivo a spegnere i miei NAS Qnap. Con Hass.io non ci sono riuscito e pertanto sono trovato alla prima soluzione ma viste le guide che si trovano su questo sito non mi dispiacerebbe riprovare Hass.io se solo riuscissi a capire come spegnere i miei NAS
Mi spiegheresti gentilmente come riesci, a spegnere i nas qnap con home assistant?
Grazie