8 ms·
Scripts for Streamlining Your Homelab with Proxmox VE
- generalizations 3y agoThe actual scripts: https://github.com/tteck/Proxmox https://github.com/tteck/Proxmox After poking at a couple of these, they seem like they're 50% shiny packaging and 50% one-liner bash commands.
- wutwutwat 3y agoThe recipe for a very useful devops tool :)
- j45 3y agoHaving standardized components like these is pretty valuable and reusable. One could definitely write them on their own. It’s also another way to discover other packages in these categories. Some of the LXC container settings can be a little specific and these scripts manage those we’ll most of the time with a standard install, or an advanced one is available too.
- SV_BubbleTime 3y ago[flagged]
- j45 3y agoIt’s very myopic to not be able to imagine others are not like you, and that they may be better and wanting to help create beginners more easily. The “I can do it in x” period of time reviews are baffling to me too. I like to be able to rely on smart folks who have fought scripts like these into being polished, so I can built on top of them, even though I have plenty of experience to build these myself. It makes no sense unless it becomes much more important to me.
- masto 3y agoDid they say it was a bad thing? And why the need to throw in autism shaming?
- spacebacon 3y agoThis worth investing time in getting infrastructure "just right" pay off big later in his grug experience.
- lifeisstillgood 3y agoI see software as a form of literacy - and I think this is a good point of view for your issue here. The bash commands and virtualisation host are words or perhaps "cliches" - short pieces of literate work that are available to everyone. And yes you don't have to remember them any more than you need to know every word in the OED. But people can then string those words together to make their own unique literate work - to set up your virtualisation host in the right way. It's possible to do that in some fill in the variables way but it is waaaay better for you to shape what you need. Anyway, that's my take. Yes it's sensible to put the weird ass params to X in a single script and forget about it, I came across one of my own not touched for 18 months. But then I was able to read it, remember the important bits and adjust it. I agree with you - I think
- helpfulContrib 3y ago[dead]
- gosub100 3y ago100% agree. I have been running my own NAS the hard way: FreeBSD, ZFS, manual samba/NFS shares, dhcp+gateway+firewall, PXE Boot, Jellyfin (can't remember if it's in a jail or not). All this stuff is a huge, utter PITA and never works quite right. - I have to manually check the zpool periodically to see if there are faults. I went about 30d with a DEGRADED disk before I realized it, turns out it was a bad cable but if another disk failed I would have been hosed. - I have to manually run zpool scrub (yeah I know about cron but chances are if I just add the cron entry it will fail, probably some permission thing or a 1-character bug in the cmd line. Nothing like this is ever easy, it's a 1-hour rodeo, at minimum. And yeah, I'm lazy too, not gonna deny it) - I can only get NFS v3 working, not v4, no idea why. IIRC v4 isn't technically supported by either FreeBSD yet. But rather than just say "not supported" it gives you some cryptic bs that you waste minimum 20m on googling and trying things. Everything you try, you have to triple check: restart rpciod? Or was it nfsd? exportfs -ra? Or was it some encryption version in /etc/exports? - Samba kinda works, no idea how the permissions are supposed to work, but turns out SMB is more resilient to network interrupts than NFS which just hangs the client indefinitely. So for listening to music or reading a book its fine. - I wanted to set up VPN on a 2nd network (not VLAN, just a 2nd subnet that routes out the tun device. I thought since I control DHCP, I could force certain devices to only ever have access via VPN), turns out this isn't possible or "very hard" doing some hack to the NAT pf rules, way above my skill level. I wasted hours on this, got the VPN and tun to authenticate, but got stuck at the routing layer. Oh also I think dhcpd doesn't like routing to different adapters? Can't remember. - PXE was a disaster, as it usually was. I got it barely working enough to boot my tape backup computer off it and run backup scripts. - I want simple logfile aggregation. I dont want to have to ssh into the NAS and check the logs/dmesg. I admit I haven't done a lot of research (10 years ago there was nagios, thats all I know), but it bugs me profusely that I cannot easily monitor the logs of all the machines on my network, and I rarely ever hear about anyone else doing it. so probably 40% success, 60% (frustration|half-assery|disappointment). I guess it's just masochism, like the weightlifters who love the pain of adding 10 extra pounds to their set. At least they get some results eventually. :/ Overall, I don't regret doing it the hard way, but I am often times envious of the Proxmox users who (presumably) just plug and play.
- latentcall 3y ago
- generalizations 3y ago> We have a complexity crisis, and few people see it I’m not saying memorize this stuff - put it in a big proxmox.readme.md file. Then you can incorporate the actual command into your script. Otherwise you end up incorporating this wrapper into other stuff, ad infinitum, and that’s how you get a complexity crisis.
- jasonjayr 3y agoDo you know how to join copper pipes? The difference between PEX and PVC? The various pipe fittings and their benefits/costs/tradeoffs? Do you know how high a pipe can rise before you need to add additional pumping? I'm pretty sure you turn the faucet on, and expect drinkable water to come out, without thinking of what's going on between the source of the water and your sink. Yet, anyone, given the right motivation, can use and learn all those pieces and parts, and make use of them at whatever competency level they have. You can even make a soccer goal net with PVC. There is room (and need) in the world for all people to explore, geek out, and use these details. And the people who are passionate about these details, and the intermediate pieces should be cherished, because they are the ones that will understand and fix the intermediary pieces when they break. Sometimes, making money is not the goal.
- whalesalad 3y agoMost of homelabbing is this. it's an outlet to play. unixporn, neofetch, pretty dashboards to link to all of your content pirating tools, etc.
- lostlogin 3y agoThis this a negative or a positive? And more broadly, a lot of software could be summarised as a pretty packaging of a basic tool.
- calamari4065 3y agoIt really depends on your perspective and what you want out of a homelab. If you want to tinker with servers as a hobby it's a huge plus. If you want things to Just Work, this is probably not for you
- favorited 3y agoI've been a "Just Work" person for a long time, but over the last couple years I've shifted to DIYing more instead of buying turn-key products. I replaced my off-the-shelf NAS with a custom TrueNAS box, and swapped my router+firewall+switch+WiFi all-in-one with a low-energy device running pfSense and a dedicated WiFi AP. I have been pleasantly surprised to find that, after the initial research & setup, things still "just work!" In some cases, more reliably (and way more quietly!) than before.
- calamari4065 3y agoI've had the same experience in reverse. I'm a tinkerer and I always have been. I bought a server expecting to tinker with it all the time. What fun! But no, after the first couple hours of tinkering it Just Works. This past week I settled in for a good solid weekend of getting a gitlab server stood up. I was looking forward to it! Imagine my disappointment when it was a single command that took half an hour to run. Oh well, I guess it just means more time for my other hobbies.
- hiAndrewQuinn 3y agoBro we spend all day looking at screens. Literally the definition of shiny packages
- helpfulContrib 3y ago[dead]
- AdamJacobMuller 3y agoI think the balance is closer to 80% shiny, 20% working code. There's definitely some cool stuff here (disabling the nag screen, thank you!) but I really dislike the way it's presented. I don't like the curl|bash very much, but mostly I think this would be far more interesting as a collection of one-liners to accomplish each task vs the current form of a curl|bash with dialogs and prompts. I think that's better for security and better for learning you should know what commands you're executing!
- chronicsonic 3y agoBeing disabled scripts like these really help me, I can’t sit behind a computer as much as I could before, but it’s still my main hobby. I do a quick look over of the source to make sure it’s ok. It saves me so much time and pain.
- m463 3y agoI really wish proxmox had sort of first-class docker/podman integration. With docker it seems a Dockerfile is a self-contained recipe. You build it, then you run the container. with proxmox, you sort of have to be a sysadmin. The proxmox UI helps you define the characteristics of the container, but then you have to put everything inside the container yourself without help or reproducibility.
- asylteltine 3y agoProxmox is great. I personally run unraid which is amazing. Very stable, very powerful
- j45 3y agoIf anyone is looking at proxmox, running these scripts from the host will speed up experimenting. It’s great to have something up and running in minutes to only redo it slightly differently. If you are considering two proxmox hosts ensure the second one added to the cluster is an empty proxmox host, and the proxmox cluster from the first box will assign unique id’s to all containers on any host.
- alias_neo 3y agoAlso, for homelabbing, there's a magic incantation that allows you to configure Proxmox away from the default High Availability cluster mode. By default, the HA mode insists that all nodes are up or others won't come up, making this tweak (it may be contained in the OP scripts, I don't recall) allows you to retain many of the benefits of having Proxmox machines "connected", without requiring you treat them like a HA cluster. In my case, I have a node I shutdown when it's not used, I use it for specific occasional tasks, and then I have nodes I want up all of the time. With the non-HA tweaks, you can still do things like centrally manage, migrate VMs and containers between nodes etc, without the limitations of it wanting them all up and available all of the time.
- johntash 3y agoWould this work for having proxmox modes across multiple datacenters? IIRC it was sensitive to latency I don't really use the HA features of proxmox that often, mostly just for migrating vms across hosts. But I had been thinking of re-installing some of my remote servers with proxmox and hooking them up to the same cluster so that I could potentially shut off all of the servers in my basement and run everything from a remote location, then migrate the vms back later.
- j45 3y agoOP may know better, but in part it may depend on the ms latency between the sites?
- alias_neo 3y agoI've not noticed anything latency-sensitivty, perhaps the Ceph feature? I'm not using that though. There's also the issue of quorum of it's only a 2-node cluster, though I've personally not had any issues with it, despite repeatedly restarting the different nodes. I see no reason why you couldn't do this to allow you to move your VMs from home to elsewhere and back again as you just mentioned.
- VectorLock 3y agoWow that is a whole bunch of curling/execing bash scripts that curl/exec other bash scripts.
- secabeen 3y agoYeah, all done as blind execution of remote code. Bleh.
- oriettaxx 3y agoyes, but come on: you download it and quickly check yourself
- brirec 3y agoNot really that simple. All the scripts there curl|bash more scripts. If you want to audit the contents you’ll have to follow quite a few.
- oriettaxx 3y agoyes, I had a better look at not trivial ones, and you are all correct
- bkallus 3y agoAssuming that the script you download is the same as the script that curl|bash downloads. https://web.archive.org/web/20231128113854/https://www.idontplaydarts.com/2016/04/detecting-curl-pipe-bash-server-side/ https://web.archive.org/web/20231128113854/https://www.idont...
- Karunamon 3y agoA neat attack, but probably unrealistic in the context of those downloads being on github.
- VectorLock 3y ago
- nonane 3y agoSlightly off topic: I’m setting up a home server on a Mini PC that has Windows 11 Pro pre-installed. I want to attach it to my TV and play retro games as well as run home automation tasks (periodic scripts, UniFi controller, Pihole etc) Is anyone using Proxmox on their homelabs? Would you recommend blowing away Windows and installing Proxmox and then install Windows with PCIE passthrough?
- aaronax 3y agoYou really should have different physical hardware for such different use-cases.
- op00to 3y agoWhy? I find having a single capable hypervisor hosting VMs far more reliable than a bunch of smaller machines.
- refracture 3y agoMaybe running a firewall on dedicated hardware so the internet doesn't drop if you reboot the hypervisor.. but even then I just live with that and run pfSense in proxmox.
- op00to 3y agoExcellent point! I do run my main PiHole in a VM, but I have a second PiHole running on an RPi just in case I'm rebooting the hypervisor. DNS is the only real dependency that can cause problems for me when the hypervisor reboots for updates. I'm just running Fedora on a somewhat recent Dell rack server. Firewall is a great example of what not to run on a vm, at least for me! I consider gateways as appliances though, and I haven't run my own router on Linux since I first got Cable internet in 2002. I remember how awesome it was compared to the weak routers available at the time! Now I just buy a UDM Pro and forget about it!
- deleted 3y ago[deleted]
- fb03 3y agoSerious question: What is the advantage of Proxmox for power linux users that can run a debian or ubuntu server box + KVM ? I'm always reading stuff about people using proxmox but don't really understand its 'edge'
- plagiarist 3y agoMe either, although I am using it for my home. It does allow configuring VMs, containers, logical volumes, and such. I think you can have multiple proxmox in a cluster. I might not have reached the point where I am doing enough with it to understand the benefit.
- Modified3019 3y agoFor me who uses it as a NAS/VM platform, it’s basically Debian with some virtualization relevant packages and an opt in kernel that are more reasonably up to date, with solid ZFS support out of the box so I don't care about the "update kernel, reboot, oops version mismatch I need to revert" nonsense. While things like TrueNAS exist with ZFS support, in the past iX systems has made some overeager patches to ZFS, to bring in new features that weren't appropriate to include yet IMO. I hate to dig up old news, but that's why I've avoided them so far. Basically I've got Proxmox "figured out", which lets me fuck around with the things I want, rather than the things I don’t want. This reduces my very subjective mental overhead. All the high availability stuff is wasted on me though, and I just disable the related services. Note to new users experimenting with proxmox The most common "gotcha" with proxmox, is that it does NOT automatically adjust network stuff after install. If you switch out a network card or change what physical port it's connected with, you will lose network access, and need to manually edit `/etc/network/interfaces` to make sure your using a correct port ID and/or assigned IP are valid. iface vmbr0 inet static ... bridge-ports <The port ID, like "enp130s0f0"> ...
- solarkraft 3y ago> While things like TrueNAS exist with ZFS support, in the past iX systems has made some overeager patches to ZFS, to bring in new features that weren't appropriate to include yet IMO. I hate to dig up old news, but that's why I've avoided them so far. I've also not enjoyed reading their forums at all, while information about Proxmox tends to be actually helpful rather than berating people over their hardware choice or spreading misinformation about ZFS.
- op00to 3y agoWhy proxmox and not simply using libvirt? I am very happy with kvm, but always looking to make my life better.
- oriettaxx 3y agoProxmox will no doubt make your life better: very robust tools already there, no need to re-invent the wheel
- allanrbo 3y agoWondering the same. Also a libvirt and virsh user here, and pretty happy using commands such as `virsh snapshot-create ...`. I've used VMWare ESXi in the distant past, and from the screenshots it looks like Proxmox is maybe inspired by VMWare? So maybe a more polished and integrated GUI based experience than libvirt? Also looks like Proxmox supports containers in addition to virtual machines. Also I see from other comments that there's some features to migrate VMs between hosts, which would be a much more manual effort with libvirt.
- stephen_g 3y agoYeah, that’s basically it, it’s an ESXi style management UI that just makes everything really easy. In our little setup I used libvirt on an old server, Proxmox on the new one, and now I’ll probably shift the old server too to Proxmox due to the clustering (for example, you log onto one machine and can manage them all). ZFS support that just works is really nice too. They also have a backup solution I’d like to check out but haven’t yet.
- RulerOf 3y agoGood GUIs for great software are really compelling. I'm a virsh/kvm user myself, but I admit I'd probably leverage more features of the platform if the interface was easier to use.
- op00to 3y agoI've had like 75% success on throwing XML files at ChatGPT and telling it what I want to do for weird things like passthrough or pinning. It gets me most of the way there. That is not a compelling user interface as is. :)
- lxe 3y agoI've used this and It's been the easiest way to set up proxmox, configure the updates, and add HAOS to it. I have this bookmarked so I can recreate it later.
- oriettaxx 3y agoI don't see anything on cloud-init (did I miss some link?) while it works perfectly in Proxmox, see https://pve.proxmox.com/wiki/Cloud-Init_Support https://pve.proxmox.com/wiki/Cloud-Init_Support
- skazazes 3y agoAlthough its supported, its not well documented enough to be a good way to learn about cloud-init in my experience. I tried configuring a K3's cluster across three proxmox nodes via cloud-init to get some exposure to it and eventually gave up and just configured them manually
- oriettaxx 3y agoI had the same issue at the beginning, and unfortunately stopped on it for over a year: then I went back and got it and now I cannot think of provisioning a VM by hand anymore Have a look at this script for example https://github.com/francescor/swarm/blob/main/create_swarm_vm.sh https://github.com/francescor/swarm/blob/main/create_swarm_v... which is the "proxmox" side of cloud-init, that then load an ordinary cloud-init https://github.com/francescor/swarm/blob/main/cloud-init/cloud_init_ubuntu22_04_version_08.yml https://github.com/francescor/swarm/blob/main/cloud-init/clo...
- m463 3y agolol (looking at cloud init for ubuntu 22...) ... # remove snapd trash - snap remove lxd - snap remove core20 - snap remove snapd - systemctl stop snapd.service - systemctl stop snapd.socket - systemctl stop snapd.seeded.service - systemctl disable snapd.service - systemctl disable snapd.socket - systemctl disable snapd.seeded.service - systemctl stop snapd.service - systemctl stop snapd.socket - systemctl stop snapd.seeded.service - rm -rf /var/cache/snapd/ - apt autoremove --purge snapd -y - rm -rf /root/snap # remove apport trash ...
- kiney 3y agoUsing cloudinit in proxmox is godsend. I can spin up a fresh linux vm and login with my ssh key (and ansible) in less than a minute.
- unixhero 3y agoI love proxmox
- sschueller 3y agoProxmox is awesome. I use it for my router and a bunch of servers. [1] it is so nice to be able to take a snapshot, update opnsense and go back if something fails. It's working so well I now have too many vms and need to get a bigger disk. [1] https://sschueller.github.io/posts/wiring-a-home-with-fiber/ https://sschueller.github.io/posts/wiring-a-home-with-fiber/
- tamimio 3y agoThis looks great, will have to try it out soon.