Major Discord
kiwifarms.net
- Joined
- Jun 3, 2021
Since /g/ is down and there's no /hsg/, I thought it can be a prime time to start a thread on here. I have seen a few other threads having tidbits of the information, but I thought centralizing everything can be beneficial.
I am by no means an expert on this topic, so any contributions will be greatly appreciated.
What is this thread for?
I would like this thread to cover discussions both about home servers/homelabs, as well as Virtual Private Servers (VPS). Both have their uses. I know that "self hosting" is sometimes strictly reserved for home servers, but I would like to include VPS as well.
Why should you self host?
Hosting your own services helps to both de-bloat your life and learn a few new skills in the process. A lot of services can be relatively easily hosted privately. You are also less-likely to be affected by some ToS changes or price hikes. I think hosting stuff yourself is often cheaper.
Resources
Where to host
Useful Links
Various guides/manuals/collections of information.
I am by no means an expert on this topic, so any contributions will be greatly appreciated.
What is this thread for?
I would like this thread to cover discussions both about home servers/homelabs, as well as Virtual Private Servers (VPS). Both have their uses. I know that "self hosting" is sometimes strictly reserved for home servers, but I would like to include VPS as well.
Why should you self host?
Hosting your own services helps to both de-bloat your life and learn a few new skills in the process. A lot of services can be relatively easily hosted privately. You are also less-likely to be affected by some ToS changes or price hikes. I think hosting stuff yourself is often cheaper.
Resources
Where to host
- VPS: I think the general advice is - if the service you want to host requires extensive internet access, use a VPS. This includes websites and email servers. Specifically email servers require reverse DNS (rDNS), which will not work for the majority on a homelab server, since people tend to have dyanmic IP addressess and not static IP ones. VPS are also useful as a kind of an off-site backup.
- Home server: everything else can be hosted/experimented on a home server, such as: Network-Attached Storage (NAS), Plex/Jellyfin server for your media, automated backups, CCTV.
Useful Links
- Hosting on a VPS
- Landchad.net: Contains useful tutorials on how to host your own website, email server and other stuff. I think some information is outdated/wrong, but I don't remember what exactly - I think some stuff will just not work. And I also dislike that Luke (site's author) does everything as a root instead of making a su account.
- Vultr, Hetzner, Netcup: Some companies from which you can get a VPS. I honestly don't have experience with many. I have seen another thread on the forum discussing VPS providers - I know obviously that KF itself can't be hosted with these providers. But most likely the majority reading this thread will just want to host normie stuff and I think the mentioned providers will do. I believe all 3 unblock ports for email servers on request (or have them unblocked to begin with). I would not recommend Njalla, especially since I find their entire selling point sort of moot. If the VPS provider is in Europe, you are covered by the GDPR anyway, and as far as I know your data will be always anonymized.
- MX Toolbox: If you are hosting an email server or a website, this can be useful to check for possible problems and issues.
- https://appmaildev.com/en/spf & https://www.learndmarc.com/ (provided by @Riftrunner ) : Another tool for checking SPF, DKIM and DMARC for email deliverability.
- Cheap VPS Deals (provided by @dumbledore ): Normie providers, mostly. Some, such as Crunchbits or BuyVM, would be also suitable for "free speech" content. You should check the ToS/AUP of the provider to understand if they will unblock ports (notably 25) for the email server. At this moment BuyVM, Crunchbits and CloudFanatic (the latter according to @Jeff Q. Anime ) seem to unblock the email server ports on request.
- Homelab
- Home Server Guide: Was often posted on /g/, contains lots of useful information.
- Home Server Case Guide: Guides for selecting cases, especially for NAS.
- Awesome Self Hosted: List of stuff you can host yourself.
- Google Sheet with a List of Low-Power x86 Systems: Energy-efficient x86 systems. I personally think the N100 Mini PCs are a good option.
- Google Shit with a List of ARM boards: If you prefer an ARM-based, this list can be helpful.
- Disprices for Checking Storage Prices: You can never have enough storage.
- Miscellaneous
- FUTO's Guide to a Self Managed Life: part 1, FUTO's Guide to a Self Managed Life: part 2 & wiki text guide (archive link) (thanks to @August Levasseur for bringing this to attention): Excellent guides for self hosting by Louis Rossman in both video (12h) and text formats.
- https://mxroute.com/ and https://namecrane.com/ (provided by @dumbledore ): Services for Email hosting on your own domain. Helps to avoid issues with deliverability (common on self-hosted email) or censorship of any kind. Mxroute seems more expensive, whereas namecrane has better deals - including lifetime ones.
- Null's thoughts on internet service providers (thanks to @August Levasseur for linking it).
Various guides/manuals/collections of information.
Courtesy of @Riftrunner
Virtualization
Whether you’re a homelabber or a Fortune 100 corporation, virtualization is an important concept to understand and an essential skill. While you could get away with running everything on bare metal hardware, virtualization gives you the ability to run as many virtual servers as your hardware can support.
The benefit of going virtual is that you can take point-in-time snapshots of the disk for easy rollbacks and backups, segregate services and applications, and manage resources such that no rogue application can suck up all your disk, CPU and RAM.
Virtualization
Whether you’re a homelabber or a Fortune 100 corporation, virtualization is an important concept to understand and an essential skill. While you could get away with running everything on bare metal hardware, virtualization gives you the ability to run as many virtual servers as your hardware can support.
The benefit of going virtual is that you can take point-in-time snapshots of the disk for easy rollbacks and backups, segregate services and applications, and manage resources such that no rogue application can suck up all your disk, CPU and RAM.
- Containers
Whether Docker, LXC, or something exotic, these are a form of user-space isolation rather than full virtualization. Generally, the kernel is shared between container guests and the OS, which makes for much faster initialization and lower resource usage, but does restrict your OS choices (e.g. no Windows guests if you're on Linux)
Another benefit of containers (mainly Docker) is it gives you access to a large library of pre-configured images with software like MariaDB pre-installed and ready to go.
Some hypervisors (fancy word for virtual machine host software) support containers as well as full virtualization, but this is not the case for most.
- VMware ESXi (vSphere)
ESXi used to be the go-to option for nerds at home wanting to gain marketable skills. It was a darling in virtualization from small business all the way up to the largest corporations in the world, but thanks to its recent acquisition by Broadcom, it has lost a lot of favor.
The strength of VMware ESXi is that it’s easy to use, performant, well supported and reliable. This is mostly still true today, but recent anti-consumer changes such as the removal of perpetual licensing, increased minimum core counts for licensing, locking down updates, and firing customers who reduce their licensing consumption, has meant its reputation has soured immensely.
This isn’t to say that corporations aren’t using VMware anymore, they absolutely are, but smaller players (such as you) are not welcome to use it anymore. There is no longer a free version, and pirates can no longer receive updates online. At the moment there’s no DRM on offline updates, and the latest version still accepts perpetual keys which are easily obtainable with a Google search, but I would not recommend it for new homelabs.
- VMware Workstation
One of the few good things to come out of the Broadcom acquisition is that VMware Workstation is now completely free. Unlike ESXi which runs bare metal, this runs as an application on your Windows or Linux (read the DIY section before going down this path) PC and is an easy way to get started with virtualization.
- Microsoft Hyper-V
Similar to VMware Workstation, Hyper-V can run atop the Windows operating system and virtualize any x86 guest. Enterprise users will typically setup dedicated hosts using Windows Server, but you can run it on consumer versions of Windows so long as you’re using Pro, Enterprise or Education editions.
In my opinion VMware Workstation is easier to use, but Hyper-V is a much more marketable skill than Workstation if you’re interested in developing skills for a career in IT.
- Proxmox Virtual Environment
In the wake of VMware completely shitting itself, many smaller enterprises have been migrating to Proxmox VE as it offers a compelling feature set at a fraction of the cost. For autists at home, the price is $0 as Proxmox is FOSS, you need only suffer a nag screen when you logon.
For those familiar with VMware or Hyper-V, it’s a learning experience, and for total newbies it’ll take a while to get to grips with its somewhat convoluted UI. For those familiar with Debian Linux, you’ll feel right at home as PVE is built on Debian, though you do need to install it using their customized ISO.
This is my recommended option for savvy autists who have moved beyond desktop virtualization such as VMware Workstation and are looking to virtualize on dedicated hardware. It has native support for Linux containers (LXC) so it’s a good option for those who are starved of resources or just prefer containers.
There's also out of the box support for full backups and Proxmox Backup Server is available for free if you need incremental backups.
- XCP-ng
While I would wager Proxmox VE is the most popular vSphere alternative, another one I’ve seen mentioned a lot is XCP-ng. This is a community supported distribution of Citrix XenServer which bundles Xen Orchestra and uses Xen HVM as the hypervisor.
I have not used it and cannot comment on its user friendliness, the main complaint I’ve seen is that it has a 2 TiB limitation for virtual disks at the moment. This isn’t likely to cause issues for homelabbers and they aware committed to fixing this.
It's definitely worth considering if you're shopping around for a hypervisor.
- DIY
Fundamentally all the components you need to virtualize are available in most Linux distributions. KVM (Linux kernel virtualization module) + QEMU (device and hardware emulator) is all you technically need for a fully-fledged Linux-based virtualization machine.
There are GUIs like virt-manager which provide an interface for KVM-based VMs and this is what I'd suggest to anyone wanting to do desktop virtualization on Linux as it's far better supported than running VMware Workstation.
- In Conclusion...
Don't ignore virtualization when building up your homelab. It's a critical component to a well functioning lab and an invaluable skill to demonstrate if you want a career in IT.
You may ask why I didn't mention Oracle VirtualBox, and it's mainly because I don't understand why you'd use VBox when Workstation is free on Windows and you have KVM on Linux.
I hope you enjoyed my essay and find it useful.
Last edited: