Home Assistant - Addio Docker, benvenuto Proxmox!
di Luigi Duchi
12 Maggio 2020
Home Assistant
(GUIDA AGGIORNATA AL 02/05/2022)
Oggi è un giorno nero per me, neanche il tempo di abituarmi ad avere HASS.IO in Docker su Ubuntu... che il team di Home Assistant ha visto bene di interrompere il supporto a questo tipo di installazione. Salvo poi ritrattare dopo qualche ora...
Purtroppo l'installazione su Docker in ambiente Linux generico era fonte di un grossissimo lavoro da parte del team di sviluppo.
Troppe variabili in gioco, difficilmente identificabili e replicabili in caso di errore.
####################################################################################################################
Attualmente il team è ritornato sui suoi passi, ma visto che in un futuro potrebbero davvero eliminare il supporto all'installazione in Docker ne approfittiamo per mostrare l'installazione su macchina virtuale Proxmox (https://proxmox.com/en/).
####################################################################################################################
La soluzione richiede sicuramente un hardware piuttosto potente, diciamo un NUC tipo questo:
https://www.amazon.it/dp/B07RNKFJHT/?tag=h07b2-21
Eventualmente potrete pensare anche ad un hardware più prestante ma questo è un ottimo compromesso prezzo qualità
Non è possibile replicare questa guida su un Raspberry.
Questo sistema prevede la creazione di una macchina virtuale con all'interno il sistema operativo HassOS.
Esistono diverse piattaforme di virtualizzazione, noi utilizzeremo Proxmox.
Questo sistema si basa su Linux (Debian) e ha il vantaggio, come tutte le piattaforme di virtualizzazione, di creare un ambiente stagno, indipendente dalle altre macchine virtuali.
Naturalmente sullo stesso hardware si potranno creare quante VM si desidera.
Oggi vedremo come installare Proxmox sul nostro pc (nel mio caso un Intel NUC).
Per prima cosa sarà necessario scaricare l'immagine di Proxmox, lo potrete fare sul sito ufficiale che troverete QUI.
Il file ISO altro non è che un contenitore che racchiude tutto il necessario per effettuare l'installazione di Proxmox.
- Dovrete ora aprire questo contenitore ed estrarre il suo contenuto su una chiavetta USB (un comune pendrive).
Per effettuare questa operazione avrete bisogno di un software che sia in grado di effettuare l'estrazione e nello stesso tempo renda la chiavetta avviabile, cioè in grado di far partire un comune PC dalla porta USB.
Il software che trovo più semplice per fare ciò è BalenaEtcher (https://www.balena.io/etcher/)
Basterà scaricare tale software e lanciarlo effettuando 3 semplici mosse.
Cliccate su select image e selezionate l'immagine ISO di Proxmox precedentemente scaricata.
Cliccate su select target e scegliete il vostro USB drive.
Infine cliccate su Flash per iniziare la procedura estrazione.
Al termine della procedura, inserite il pendrive in una porta USB del pc (spento).
Avviate il PC...
All'avvio del PC, la schermata iniziale generalmente indica i tasti da premere sia per accedere alle impostazioni di BIOS/UEFI, sia per selezionare rapidamente il dispositivo di Boot.
- F2 (Setup): consente di accedere alle impostazioni di BIOS/UEFI.
- F12 (Boot Options): consente la selezione rapida del dispositivo di avvio.
I produttori possono usare nomi diversi per le medesime voci (es: Boot Menu, Boot Options ecc.) oppure adoperare tasti differenti (es: ESC, F12, F8 ecc.). Tuttavia la procedura risulta molto simile nella maggior parte dei pc recenti.
Può addirittura capitare che il PC si avvii da chiavetta senza che dobbiate toccare nulla perchè nel bios è già previsto ciò.
In ogni caso, se riuscite ad entrare nel Boot Menu, dovrete scegliere la voce che di solito si chiama removable drive (anche questa voce può essere chiamata in maniera leggermente diversa a seconda del pc) e premere invio per confermare.
Così facendo il PC partirà dalla porta usb e avvierà l'installazione di Proxmox con il suo contenuto.
(perdonate la qualità delle foto ma in questa fase non avevo altra scelta che fotografare lo schermo del monitor.)
Dopo poco comparirà a video la seguente schermata.
Premete invio sulla prima voce selezionabile.
Alla schermata successiva rispondete cliccando il tasto I AGREE
... non vi preoccupate in piccolo c'è scritto che la vostra anima non sarà più vostra e che passerete il resto dei giorni in mezzo ai file yaml ;-)
Arrivati a questo punto Proxmox riconoscerà in automatico il disco su cui dovrà essere installato, proseguite cliccando NEXT.
Alla pagina successiva dovrete selezionare la vostra zona geografica, compilate come in foto.
Qui dovrete creare una password che sarà poi la password di accesso a Proxmox, dopo averla ripetuta per conferma inserite un vostro indirizzo email per eventuali future comunicazioni.
Su questa pagina vi troverete dei dati già compilati (se così non fosse fatelo con i dati della vostra rete).
L'indirizzo ip è quello che sceglierete di assegnare a Proxmox.
Vi sconsiglio vivamente di dare l'indirizzo IP che utilizzate per il vostro Home Assistant, quindi impostatene uno diverso che poi potrete provvedere a prenotare sul vostro router in modo che sia sempre lo stesso.
Cliccate su NEXT
Nella schermata di riepilogo potrete controllare tutte le informazioni inserite fino ad ora.
Potrete proseguire con l'installazione cliccando su INSTALL
A fine installazione il sistema vi avvertirà di fare il reboot.
Metre lo farà dovrete rimuovere la usb drive che avete usato per l'installazione.
A questo punto non avrete bisogno neanche più del monitor e della tastiera, il sistema Proxmox infatti sarà raggiungibile direttamente da pagina web.
nel mio caso all'indirizzo https://192.168.1.254:8006
Ovviamente nel vostro caso dovrete mettere l'indirizzo ip che avete scelto durante la configurazione di Proxmox.
Una volta entrati a quell'indirizzo si aprirà la schermata di login.
Come nome utente dovrete mettere root e come password quella che avete scelto durante la configurazione.
Una volta loggati cliccate in alto a sinistra su pve e successivamente su shell
si aprirà un terminale
digitando questo script si auto installerà una VM (Virtual Machine) contenente HassOS.
bash -c "$(wget -qLO - https://github.com/tteck/Proxmox/raw/main/vm/haos-vm-v3.sh)"
(è molto importante che abbiate la versione 7 di proxmox con le precedenti questo script non funzionerà se provenite da una vecchia installazione pubblicherermo una guida per aggiornare proxmox in futuro)
appena avrete lanciato lo script confermate cliccando y eseguito dal tasto invio
appena comparirà questa schermata scrivete Advanced e premete enter
in realtà andrà bene anche se premete enter solo che vi installerà l'ultima versione disponibile, quindi quando ci sono versioni beta sceglierà quella, entrando in advanced mode invece potrete scegliere di installare la versione stabile(scelta che mi sento di consigliarvi)
Qui premete enter proprio per installare la versione stabile
il VM ID potrete lasciare quello di default premendo enter
successivamente potrete dare un nome alla vm, non vi preoccupate di queste voci le potrete modificare dalle impostazioni dellea vm anche in secondo momento.
Quindi premete enter tranquillamente anche a questa voce andrete a modificare le cpu dedicate in un secondo momento(volendo potete decidere anche ora ma da interfaccia vedrete quante cpu avete a disposizione e in base a quello potrete scegliere)
Stessa cosa per la ram
premete enter a tutte le voci eventualmente potrete sostituire il mac address con un mac address di vostro gradimento se preferite.
quando vi chiederà di avviare la vm una volta creata premete no in modo che la potrete avviare in un secondo momento e modificare eventualmente alcuni parametri visti sopra.
se tutto è andato a buon fine troverete una schermata del genere
una volta finito noterete che nell'interfaccia avrete la vostra VM con HassOS pronta tra le VM disponibili.
La troverete cliccando nel sottomenu della voce pve
Attendete ad avviarla, prima andranno effettuate delle impostazioni.
Selezionatela e cliccate sulla voce hardware
Da li potrete settare vari parametri da assegnare alla vostra VM selezionando le relative voci.
ad esempio la memoria ram da assegnare alla VM
Basterà selezionarla e cliccare su modifica per impostare il valore di ram da assegnare.
Sarà possibile anche decidere quanti core del processore assegnare alla VM, sempre selezionandolo e cliccando su modifica.
Cliccando su disco fisso e successivamente ridimensiona disco potrete scegliere lo spazio dell'hard disk da dedicare alla VM.
Volendo potrete modificare anche il mac address virtuale assegnato alla VM semplicemente andando a modificare la voce dispositivo di rete.
Dopo aver effettuato queste modifiche connettete (se ne avete ) le vostre periferiche USB al vostro pc ad esempio la famosa chiavetta zigbee2mqtt, ecc...
Cliccate su Aggiungi e successivamente su Dispositivo USB
nel menù che comparirà selezionate la seconda voce
Tramite la barra di ricerca selezionate il dispositivo che vorrete aggiungere (se avete più periferiche usb ripetete l'operazione).
Questo permetterà di abilitare le usb sulla macchina virtuale.
Vi consiglio di selezionare anche una usb chiamata 8087:07 (nel vostro caso potrebbe variare il numero) che non è altro che il bluetooth del NUC nel mio caso (credo funzioni anche con altri pc questo passaggio).
Adesso siete pronti per avviare.
Selezionate la vostra VM nel menù a sinistra (ricordate?sotto pve)
Tasto destro del mouse e cliccate su avvia.
Vedrete a terminale scorrere diverse righe di codice.
Quando si sarà fermato (ci vorranno circa 5 minuti)
premete invio
Vi comparirà questa stringa
scrivete root e premete invio.
quando sarete di fronte a questa schermata digitate login e premete invio.
quando sarete di fronte ad un # seguito da una _ che lampeggia sarete pronti per accedere al vostro Home Assistant.
Cliccando su sommario
potrete osservare l'indirizzo ip assegnato alla VM.
Potrete eventualmente cambiarlo da riga di comando ma io vi consiglio di cambiarlo sul vostro router con l'indirizzo che preferite (se provenite da un'altra installazione di Home Assistant assegnate lo stesso indirizzo che avevate in precedenza).
Una volta effettuate queste operazioni il vostro Home Assistant sarà raggiungibile all'indirizzo http://vostroip:8123 dove vostro ip sarà quello scelto per Home Assistant.
ad esempio http://192.168.1.32:8123.
Per caricare uno snapshot vi consiglio di utilizzare samba oppure SSH (ne abbiamo parlato QUI)
posizionatelo nella cartella backup
successivamente andate nell'interfaccia di Home Assistant sotto la voce supervisor/snapshot.
e selezionate lo snapshot inserito, nel caso non ci fosse, cliccate sul pulsante di refresh in alto a destra.
Una volta cliccato lo snapshot deselezionate la prima voce e anche samba (o ssh se avete usato quello per trasferire il backup) successivamente cliccate su restore selected.
Mettetevi comodi ci vorranno circa 20 minuti.
Nel frattempo se nella precedente configurazione avevate DuckDNS andate a re-inoltrare le porte necessarie ovvero 8123 e 443 sull'indirizzo ip della VM (che nel mio esempio è 192.168.1.32).
Vi dovrete quindi collegare all'indirizzo https://vostroaccount.duckdns.org:8123
oppure
https://vostroaccount.duckdns.org se avrete aperto la 443 esterna sulla 8123 interna come visto nelle precedenti guide.
Produrre e aggiornare contenuti su vincenzocaputo.com richiede molto tempo e lavoro. Se il contenuto che hai appena letto è di tuo gradimento e vuoi supportarmi, clicca uno dei link qui sotto per fare una donazione.