My Home Lab setup 💻
Tags: homelab
Published: 2023-09-03 18:53:23

Here is my homelab setup that my brother and I created after so many horrific experiences.

The list consists of mostly software requirements.

**Virtualization**: Hyper-V _(Because with [Easy-GPU-PV](https://github.com/jamesstringerparsec/Easy-GPU-PV) I can split my GPU as much as possible._)

For **VMs** I use:
- [AtlasOS](https://atlasos.net/)(_It's a very trimmed down version of windows with almost 0 security_)
- [Linux Lite](https://www.linuxliteos.com/)

**Anti-Virus**: [Kaspersky](https://www.kaspersky.co.in/internet-security)

**Printer**: [PaperCut](https://www.papercut.com/)

**Remote Desktop**: [Parsec](https://parsec.app/)

**Media Server**: [EMBY](https://emby.media/)

**Media collection**:

- TV Shows: [Sonarr](https://sonarr.tv/)
- Movies: [Radarr](https://radarr.video/)
- Seedbox: [Seedr](https://www.seedr.cc)
- Torrent Client: Combination of deluge (_for python automations_) and qbit.
- Indexer: [~~Jackett~~](https://github.com/Jackett/Jackett) switched to [Prowlarr](https://prowlarr.com/)

I also do run an Airflow with few DAGs that take care of notifications to my telegram about Emby conversions and torrent downloads.

**Tunneling**: [Twingate](https://www.twingate.com/)

**Software Load Balancer**: [NPM](https://nginxproxymanager.com/)
**Static IP VPN**: [PureVPN](https://www.purevpn.com)
**Proxy Server**: [~~CCProxy~~](https://www.youngzsoft.net/ccproxy/) switched to [Squid](https://www.squid-cache.org/)

**For Local text sharing**: [Ssavr.com](https://www.ssavr.com/)

**Daily Driver**: Windows 11 Pro, MacOS Sonoma, ~~Pop!OS~~  elementaryOS

**Internet Load Balancer**: [Tplink ER605](https://www.tp-link.com/us/business-networking/omada-sdn-router/er605/)
re-flashed with OpenWRT. [[credits](https://github.com/chill1Penguin/er605v2_openwrt_install)]

**Domain Service**: Google Domains

========================================================


Problems I faced:
- I started with Proxmox, but migrations and handling storage were becoming a bit of a hassle. GPU passthrough was good but needed another Windows with Hyper-V to split even further. When I discovered AtlasOS, it had issues with Hyper-V. I started sponsoring to boost the development. Now there are no issues with the hypervisor, and I'm happily able to run as many GPU splits.
- I tried the many solutions for tunneling from this repo [awesome-tunneling](https://github.com/anderspitman/awesome-tunneling). But none of if it was enough and finally settled on Tailscale (_uses WireGuard_) before Twingate. Twingate was a game changer, is miles better than any solution available.
- For Media server, I tried Plex, even took the Plex pass. But the support is not good. Sometimes subtitles won't render even if we tried to burn. Also, my biggest complaint was the exposing to internet. I don't have static IP because I use 2x1Gbps connection load balanced. So, it becomes difficult to manage. Plex doesn't work well under NAT networks. Then I tried Jellyfin which works like a breeze with routing through my static IP VPN. But Jellyfin is just not practical to pay for. Has so many playback related issues. So landed on Emby and it works nicely enough. Also took the premium.
- I do have a local torrent client which I can route through VPN, but it takes a heavy toll to performance. Have been using seedr for years now. Love the speed. The premium version for API support is a bit costly, so need a little extra work to download from Sonarr/Radarr to seedr. Still looking to improve this. Adding Airflow DAGs were a huge success.
- NgnixProxyManager works like a charm with Let's encrypt and GoogleDNS.
- TPlink's firmware is trash and was unable to handle the multi WAN setup. It was only able to fallback with a significant downtime. Flashing ER605 took a few minutes, but is a massive performance boost.