I have been running Homeassistant, Influxdb and Grafana together with some scripts on a Raspberry PI3 now for about a year and a half. As my config is rapidly expanding (about 90 sensors and 40 actuators) the system is starting to be very slow.
As a solution I have bought myself a NUC7PJYH which should be total overkill for Homeassistant. I now need to decide on the way forward. I have limited my options to the following:
Install Ubuntu Server and install Homeassistant on that in a Python venv
Install Ubuntu Server and install hass.io container in Docker
Install Ubuntu Server, Portainer and install hass.io
Do something else
As my experience with Docker is next to none, but I am willing to learn I would like to ask this community some advice on the way forward. My requirement is to be able to run Homeassistant, Influxdb, Grafana and in the future MotionEye. All needs to run on a headless NUC.
@fversteegen, I moved from RPI to a NUC running ubuntu 18.04 and docker. Best decision ever!
You can install and drop containers as much as you want and it wont break anything.
Play around with a package and break it? No problem, dump it and install again in minutes.
I strongly recommend it!
So I got my NUC and installed Ubuntu Server 18.04, Docker and Portainer. I have to admit: never thought this would be so easy to migrate everything! I created the Udev rules inside Ubuntu and then mapped them inside Portainer. Only thing I did not manage to get up and running is Bluetooth.
Unfortunately the Homeassistant UI isn’t as fast as I hoped it would be, but that might also have to do with the amount of devices I have installed.
I did similar to pitor, and went for a NUC, but rather than proxmox, I went VMware esxi.
One of the virtual machines is a docker host (running on header-less Debian), which is where HA runs, plus portainer, jenkins, and a couple more things. Note I run HA not hass.io
I’ve also got other VMs doing various different things, e.g. some development machines, dedicated VMs for an intranet and web server, proxy, etc. Some of these things might over time shift to docker, but there’s always going to be some requirement that needs a machine, not a container, and there’s enough power in the i5 or i7 NUC to run these.
For those interested, as I felt my way through the ESXi setup, getting backups working, etc, I detailed it all in my blog here: https://tinyurl.com/pembovm
Have you had more experience with the system since your post? What is your generel feeling in regards to speed, is it in real life better than the Pi in everyday use?
Reason for asking is that I am having Hassio on a pi and in the user interface it is very snappy. It might be slow to restart, but that is not a big deal for me, as I don’t do it that often. I am however using Appdaemon and for the motion sensors it is a bit slower than integrated YAML, I am not sure if moving to better hardware will actually solve that or it is some kind of latency between Hassio and Appdaeomon. Trying Node Red was even worse, which is what points me in the direction that it could be the Pi that is underpowered.
I do not want to return back to the Pi days anymore
The speed is absolute perfect even with running Motion, Facebox and several other containers on the same NUC. CPU usage is hardly ever above 20% and memory consumption about the same.
Even though I expected Docker/Portainer/Ubuntu to have a steep learning curve it is really easy to do in reality. I am also running Appdaemon on the NUC but to be honest I haven’t done much with it so far. I don’t use Nodered at this moment but I believe I have it up and running on Docker already for future use.
I have never checked the power consumption on my NUC but the sound from it is minimal. I have quite a few containers among them one DVR Xeoma and the Traccar server. Never over 20% memory, most is probably the DVR