How has home assistant become a resource monster? What kind of integrations are you using aside from ESPHome?
Selfhosted
A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.
Rules:
-
Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.
-
No spam posting.
-
Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.
-
Don't duplicate the full text of your blog or github here. Just post the link for folks to click.
-
Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).
-
No trolling.
Resources:
- awesome-selfhosted software
- awesome-sysadmin resources
- Self-Hosted Podcast from Jupiter Broadcasting
Any issues on the community? Report it using the report flag.
Questions? DM the mods!
Yeah, home assistant is tiny... I'm not sure what he expects? Does he need it to run on a pi zero or something? Lol
He's trying to run it on an esp32, didn't you read the title? /s
I'm not using any other integration. Isn't this a resource monster?
I just don't want to keep running an entire VM with their image. Something more simple that could be used on a LXC / systemd-nspawn container or directly on a base system would be nicer.
It's half a GB of ram and virtually no CPU usage. You could run it on a Pi 3 with a 16Gb SD card and have resources to spare.
This is just weird.
What is weird is having to waste almost 700MB of ram + 10GB of storage for a simple webui that charts sensor data and only keeps it for 10 days. As a comparison my NAS container runs Samba4, FileBrowser, Syncthing, Transmission, and a few others under 300MB of RAM with pontual spikes on operations.
There's a lot of difference between a container and a VM. You can install HA on a container, all you have to do is set it up according to the manual install instructions, and work around any hardware interfacing issues that come up. You'll save 200MB of RAM and will have to do any upgrades manually. Doesn't seem worth it to me, but to each their own.
What I'm going to do is setup HA Core on a container manually and run without addons / docker. That will be about installing python and should waste way less resources.
setup on a container run without docker
??
If you don't need the addons you don't need Docker. HA Core is a python script with a few dependencies that can run with pyenv and a simple systemd service unit at every boot.
yeah but that’s not setting up a container that’s just setting up python env
Yes, but I would rather do it inside a LXC container.
ah got it, thanks
You have found the smallest, tiniest, itty bittiest potatoe to get upset about here. You could run this on a toaster.
I'm not upset, just wondering / looking for way to keep the potato from growing further and/or alternatives.
If this is what you consider a resource monster you’re gonna have a really, really rough time
This isn't reasonable at all, 700MB of ram + 10GB of storage for a simple webui that charts sensor data and only keeps it for 10 days.
You need to edit your configuration.yaml file to exclude certain sensors or values. I excluded some of the more chatty sensors that I didn't need and my disk use went from around 40gb to 150mb
Interesting. I'll have to check what might be logging so much info.
In what world is this is a resource monster??
Do you have the entire hass-os image running in a VM?
Yes.
Node-Red can do dashboards. I don't know if it does data logging, but I would guess so since it can do dashboards. It also supports MQTT so it should handle ESPHome devices without a problem.
It's made for automations (and great at it) but it can be a minimalist HA hub too.
Hmm.. that's interesting. I'll have to explore further. Thanks.
Consider running HA in a light weight systemd-nspawn container with minimal debian. No docker, only install the repositories you need. HACS if needed. Run your own database on the side somewhere and let HA use it.
By itself HA is fairly lightweight already.
I was trying to go that route with LXC actually and while it seems great what about the ESPHome addon? I'm not even sure if that thing is required to use ESPHome devices or not.
It's not needed, and you can run it separately standalone if you do want it as well.
It’s not needed,
For what exactly? Can I still add the ESPHome devices to HA without the addon installed, is the addon only for flashing the devices?
Thanks.
Correct, the discovery process where you add them doesn't actually involve the addon and works fine without it. The addon is just a wrapper for the standalone ESPhome web UI. It's also not the only way to author and flash a config to a device, you can do it from any computer and on the command line.
Thank you for clarifying this. I was aware I could flash devices on my computer (I did a few times because a few of my boards ESP32-S2-Mini have to be flashed once by the Flash Download Tool from espressif). Maybe I'll run the ESPHome WebUI on my computer or use the cli, I'll see.
I'll proceed to install the HA Core + HACS on a LXC container and see how it goes.
Node Red.
I run nodered within Homeassistant in a vm on one of my nucs, I do all of my actual automation in there and homeassistant is just an IO layer for zigbee and bluetooth stuff.
I started out that way, but I've moved to doing most of it in HA directly since they massively improves the UI. I still use NR for complicated stuff though. I've recently started using Pyscript for modbus integrations too.
The UI is definitely better than it used to be, but nodered can do some more powerful stuff like pulling the html of a devices web ui and parsing data straight from the page when there's no API to use for example. I used to do that for a solar inverter at my last house.
Now I use it to control my AV switcher that distributes video through the house, it has no native homeassistant integration and only supports things like control4 and RTI so I implemented my own control using their REST API and hooked it all up to buttons and selectors in homeassistant. works great.
Also my home theatre receiver has a homeassistant integration but its terrible, so again, I've manually implemented the tcp controls in nodered.
pulling the html of a devices web ui
I've done something similiar in NR to scrape the CUPS webpage on my desktop and turn on a tasmota plug for the printer when it sees a job waiting in the queue. I wouldn't even try to do that in HA directly. But I wouldn't be surprised if there's an integration somewhere that would do it.
I'm running domoticz with an rflink interface for my rf433 devices. No clue if they support ESPHome, but you can check. It runs confined to my network.
I went with the virtual appliance when I installed Home Assistant several years ago, turned out to be a great decision looking at how it's architected. I only self-host the database separately, which i've found easier to manage.
the fact that the storage usage keeps growing
There should be a setting to reduce how long Home Assistant retains data for - I removed the limit on mine, however its possible that on newer versions they've changed the default
Hope you find a solution though - I think node red (capable of doing dashboards on its own) with something else is going to get you part way there.
I've been doing this. I'm running HA under LXD (VM) and it works.
$ lxc info havm
Name: havm
Status: RUNNING
Type: virtual-machine
Architecture: x86_64
PID: 541921
Created: 2023/12/05 14:14 WET
Last Used: 2024/01/28 13:35 WET
While it works great and it was very easy to get the VM running I would rather move to something lighter like a container. About the storage I just see it growing everyday and from what I read it should be keeping for 10 days however it keeps growing. Almost 10GB for a web interface and logs from a couple of sensors, wtf?
I would be very happy with HA, really no need to move other stuff as long as things were a bit less opaque than a ready to go VM that runs 32434 daemons and containers inside it.
Curious, you might want to look into what's generating your data first. It's easy to generate data, it's harder to only keep the data that's useful.
And how do I go about that?
One logs into the VM and starts checking the files of course. Go from there.
FYI the DB isn't even that big and the total space is growing at around 100MB every 2 days.
I just don't get it.
Curious, you might want to look into what is generating your data then first. It's very easy to generate data, it's a lot harder to only generate and keep useful data.
Why aren't you using Node-red and ntfy/MQTT brokers? HA is feature-bloat for me
I wasn't aware that node-red existed until this post :P
Have fun!
Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I've seen in this thread:
Fewer Letters | More Letters |
---|---|
HA | Home Assistant automation software |
~ | High Availability |
LXC | Linux Containers |
MQTT | Message Queue Telemetry Transport point-to-point networking |
NAS | Network-Attached Storage |
4 acronyms in this thread; the most compressed thread commented on today has 11 acronyms.
[Thread #457 for this sub, first seen 28th Jan 2024, 18:25] [FAQ] [Full list] [Contact] [Source code]