High load during update on Raspberry Pi 3 b+

Tags: #<Tag:0x00007f7399935a80>

I’m running hassio on a pi 3b+ and I tried to update to 0.118 this morning and left the thing running for a half hour. When I come back, the webpage is still down. I ping it and it’s somewhat alive 50% success. I ssh into it (which takes abundantly too long) and eventually see that the load looks like this: Load average: 153.92 142.68 106.58 2/892 545

Sweet geebus! I tried waiting another half hour and the thing is still unresponsive and the ssh terminal dies by itself (Connection reset). I wait a little longer and try to ssh in again. Eventually, the ssh connects and seems more responsive but the load is still over 100. I decide to issue a reboot in hopes that it’ll come back around but the thing seems to be in the process of an update so I’m hoping this doesn’t break stuff.

What’s the proper way to handle this situation? I have had this happen a few times in the past and there doesn’t seem to be a good way to get into the system to restart it or stop the processes from grinding the whole thing to a halt.

TBH, I’m getting really tired of trying to use this under powered hardware to run Home Assistant because it seems to be happening more now than it used to. I’m running a few addons and I think those cause more churn: esphome, file editor, duckdns, mosquitto, unifi controller, etc. I’m thinking of just pulling the trigger on a nuc and calling it a day. :disappointed:

I just moved to a nuc from a 3b+ and things are vastly better. The interface itself is noticeably snappier, but the improvement I wanted and got was having everything back up and working from a full reboot in about a minute. In my case, it’s both a function of processing power and using an SSD on the nuc.
I don’t want to be that guy who says “just buy better hardware” but I guess that’s what I’m saying :blush:

Actually my experience was exactly the same… Until i bought new SD card with A2 class (Kingston Canvas Go Plus).
It’s muuuuuuuuuuuuuuuuuuuuuch better!!! It updates within couple of minutes and reboots quickly. Try with SD card first, it’s not expensive comparing to getting a new hardware. I’m also on Pi 3B+

Also, i would like to add that there was a slight performance boost before replacing the card when i switched the “recorder” component to MySQL on a local PC in home which is running 24/7. So no more overhead when writing to home-assistant.log.

Try it out and let us know! :slight_smile:

I should hope so… and I know what you mean about the “better hardware” comment. Thanks for the info.

I’m using a SanDisk Extreme PRO microSDHC Memory Card that I bought specifically for this project but you did say “A2” and this one is apparently A1. I also have offloaded my database to a networked computer already so that I’m not storing it locally in a sqlite file (only using ~30% of the space at the moment). It definitely could be the SD card if there are a bunch of bad blocks or something.

Unfortunately, when this happens it’s very difficult to see what’s going on with the machine because there doesn’t seem to be much in the way to feedback from Hassio. If the disk is failing, how would I know? I’m starting to wonder if it would be better to run the hassio instance from a docker on top of some other OS that I can actually manage instead of running it like my Raspberry Pi. That way, I can actually manage the computer it’s on instead of relying on the limited messaging that Hassio provides – but there again I’ll have to have beefier hardware. :neutral_face:

I’m not sure if you would have warnings for bad blocks on sd card. The filesystem would just fail and/or get corrupt without a warning. I’ve had that happen, it’s not fun to recover. But either way, home assistant suggests A2 card due to better handling of small IO files. So i would try with that.

As for running on different alternative, I’ve tried most. Hassos image for Pi (currently using), Hoke assistant with supervised (no longer supported i believe) and that one was ok since you could still control your pi. Home assistant for KVM with qemu image (that one if i believe runs on docker. I tried checking the “ha” command, it’s an alias do docker command wherein it’s an actual binary on hassos. I’ve tried running on Python Virtual Environment.

I would say based on what you use home assistant for, choose the best method FOR YOU to host it. For example i need the bluetooth of my pi and usb ports for when I’m flashing nodemcu with ESPHome FW. I’m thinking of purchasing new pi (Pi 4 4GB or 8GB) just for the heck of it but really not needed at the time as moving to a faster SD fixed performance issues.