Re-thinking my HA

Hello all,

I’ve been happy with my HAOS installation on my dedicated server (Dell Optiplex 3050M Micro). After almost a year, realize that I am barely using the server capability and want to add more applications to that machine.

For example … I want to add a couple large SSDs and use the system as network shared storage and backup solution (NAS). I would also like to add a surveillance camera (or two) and play with either Blue Iris or Frigate (NVR).

Now … the questions for this community… how best do I do that?

Can I expect HA to handle my network storage and backup, as well as my camera NVR? Or would it be better to start over with a fresh Windows 10 install and Docker. (I don’t have a huge investment in my HA system, so a restart would not be too painful.) I could then create containers for my HA install, my storage install, and NVR camera install. Would there be a way to migrate my HA work so I didn’t need to start completely over?

Or … is there a better solution?

cheers,
Karl

For the CCTV side of things there are add-ons for HAOS that allow this to be done without any problem at all. (Frigate , MotionEye etc)

The NAS side… not sure.

You could just run HA Supervised and then run the NAS on the underlying OS (Debian). I’d stay away from running on top of Windows.

Consider running Proxmox as the operating system instead of Windows. HA works great in this environment.

https://community.home-assistant.io/t/installing-home-assistant-os-using-proxmox-7/201835

1 Like

Hi Karl,
I would just say to be aware of the bandwidth required for the cameras, especially at higher resolution and frame rate … sooner or later you will be making compromises.

Consider that for security a high quality picture is desirable (to give a wide field of view, and particularly if you might want to zoom in to see a suspects face); high frame rate is desirable to see smooth motion; and wi-fi means the camera can be placed where it gets the best angle. Sounds great, but don’t spend your money until you do the math …

A modern good quality camera might have an image resolution of 1280 pixels (dots) wide by 1024 pixels high = 3,310,720 pixels. True colour is 24 bits (3 bytes) per pixel giving 31,457,280 bits (plus some framing and overhead) per frame of the image. If you record at 30 frames/second that’s 943Mbps … and maybe your camera doesn’t support wi-fi 6 or even wi-fi 5.

Even 800x600 resolution x 16-bit color x 10fps is still 77Mbps; and in the real world you would be lucky to get 32Mbps actual data throughput from a 2.4GHz Wifi Access Point which is rated at 54Mbps.

I am not trying to discourage you … just suggesting that you consider your objectives and be aware of bandwidth requirements.

Actually thats a pretty low resolution camera these days. Mine are 4K and even those are old. The best thing you can do with the cameras is stay clear of wifi altogether and use PoE cameras.

1 Like

Everywhere I use HA, I run Unraid and HA as a VM. Works great and gives you way more capabilities that just HA.

HAOS doesn’t support multiple disks, so continuing that way is right out.

A desktop OS (Windows 10) to host a server (HA) is … not a great choice.

Running something like Unraid would be the easier and more effective option. If you’re really at home with Linux then instead maybe Debian + KVM so you’ve got maximum flexibility.

2 Likes

VMware esxi is also an option (similar to proxmox)
for a single server it’s free

+1 for Proxmox, that is: if you have enough RAM & CPU power so you can virtualise other stuff.
Definitely no Windows!

The only thing I’ll add here

1gbit connection is more than capable of handling all the cameras you could probably throw at frigate in a residential scenario.

I personally run 14 cameras most are 4k with upwards of 16mbit/s per stream. But I use all three streams from my Dahua cameras. The issue isn’t bandwidth. You’ll want your machine running frigate on the same switch as your cameras, as you’ll just be overwhelming your switching capacity for other VLANs if your frigate host is on another switch/upstream switch. My setup has 45 streams running on a intel J4125 with dual coral TPU. But if if want all 45 streams running properly and not dropping packets(dropped frames) you need to ensure your switches have the switching capacity for it. There’s a big difference when traversing L2 vs L3 switching load on your switches CPU.

I dont use any vm’s and run docker over Ubuntu as the OS on a dell optiplex. I use Home assistant container- you lose the addons, but almost all of the addons have an equivalent docker container you can install yourself. Frigate has a docker image you can install instead of the addon. All docker images can be manged with portainer, which has a nice UI. I run shinobi on the Ubuntu bare metal as an nvr. It’s an older program but is handling 3 cameras recording 24/7 to an external HD drive well for me.

The biggest pain point with a docker install will be managing the loss of the addons. What other addons are you using?

I never used it, but the proxmox install mentioned above sounds like a nice alternative to keep the addons.

Id avoid supervised- you’re not supposed to run other software with supervised and it restricts you to Debian as the OS.

I decided to just use another spare PC as my server and keep the machine dedicate to home assistant. I have a bad taste in my mouth trying to run HA on a VM. Issues with USB passthrough and zigbee/zwave sticks.
Actually, I just built a new PC and dedicated my Dell XPS 8940(I7 10700, 16gb RAM) as my Home Assistant server. Overkill, yes…but it handles Frigate well with a USB coral. I have an M.2 coral coming.
I took the machine that was running Home Assistant and turned into my server/NAS. Probably going to install Plex and a few other things on it.

Thanks to everyone for their inputs. It’s always good to come back to this community of users before I set out on a new path. What I’ve concluded from the various inputs is:

  1. don’t try to make a NAS out of my HA server because HAOS doesn’t support multiple disks. (Thanks Tinkerer)

  2. beware of bandwidth requirements for surveillance cameras. I might play with a single camera and an HA add-on of Frigate, but eventually run the IP cameras with POE to a dedicated NVR server. (Thanks Don Burch & SparkyDave)

  3. When I want to add a new capability to my server, I’ll probably install ProxMox OS and create a new VM for HA and the new thing. (Thanks PecosKidd)

cheers,
Karl

No IP camera will stream uncompressed raw video. All IP cameras have onboard video compression and will deliver a h264 or h265 stream. In practice, a 16mbps stream is perfectly fine for 4k cameras (3840 x 2160), which is pretty much the mid level standard these days. Higher end cameras go much higher resolution wise.

1 Like

No issues using VMware

My best advice for this is… dont touch it at all, it works fine why bother complicate things.

But if you wanna still continue, go ahead by I recommend doing that stuff on your extra hardware first before deploying it.

And I dont really recommend this stuff being utilized closed to 100% all the time. I used to do this but damn, I manage to break one of my dell micro due to overheating. the poor fan just cant keep up with the 24/7 heavy load I guess. If you wanna consolidate everything on single box, I recommend getting the matx model instead.

Also dont use USB as your main way of connecting extra storage, if you go that way, your just asking for heacache.

Here’s my take

I’d rather have a whole lot of 5-20watt SBC for microservices running HAOS as a make shift Ubuntu/Docker server. Running several add ons on each. Than a large server consuming more energy… I don’t have to worry about Linux package updates.

You want your SBC’s to be about 20-30% cpu, and 40-60% memory utilization. At peak load of your services end up around 60-80% CPU utilization which leaves cycle times to keep everything running smoothly.