[HN Gopher] Warewulf is a stateless and diskless container OS pr...
___________________________________________________________________
Warewulf is a stateless and diskless container OS provisioning
system
Author : mooreds
Score : 136 points
Date : 2025-03-06 18:45 UTC (1 days ago)
(HTM) web link (github.com)
(TXT) w3m dump (github.com)
| mooreds wrote:
| Website: https://warewulf.org/
|
| Docs: https://warewulf.org/docs/main/
| bluedino wrote:
| And if you want to pay for support you can reach out to CIQ
|
| https://ciq.com/products/warewulf/
| mkesper wrote:
| Weird this does not make use of IPv6. I'd thought this was a
| given if you have tens of thousands of nodes.
| 8organicbits wrote:
| 10.0.0.0/16 supports 64k hosts, so it seems it would fit in
| IPv4.
| anderbubble wrote:
| That's the thing: people don't put their HPC clusters on the
| public Internet; so an internal IPv4 network just keeps being
| fine.
| ale42 wrote:
| True, but on the other hand it might be that all private
| use blocks are already in use (10.0.0.0/8 is totally in use
| in our internal LAN), so if I want the nodes to reach those
| private IPs, I can't assign the same block. And we do have
| services on IPv6.
| wmf wrote:
| It's from 2001 when IPv6 didn't really exist. I love IPv6 but
| it's basically crackpot retrocomputing tech at this point.
| generalizations wrote:
| Can't decide if the retrocomputing you mean is the warewulf
| or the ipv6.
| wmf wrote:
| IPv6 is retrocomputing. I don't know much about Warewulf.
| generalizations wrote:
| Huh. Did not realize we'd given up on that. Did the
| industry just settle on IPv4 after all?
| mcpherrinm wrote:
| Really depends on who you ask. You still need v4 to be
| "globally reachable", but v6 is optional.
|
| AWS seems to finally be feeling the pinch of IPv4
| exhaustion and is pushing v6 support everywhere now, and
| starting to charge for v4.
|
| Mobile networks already have, and many are natively IPv6,
| with NAT64/464XLAT or other tech for bridging to v4.
| Apple's App store requires apps to support IPv6-only
| networks.
|
| CDNs and clouds etc mean that websites don't even really
| need to worry about their own IP allocation, and just let
| their provider figure out exposing things worldwide.
| joshstrange wrote:
| > Apple's App store requires apps to support IPv6-only
| networks.
|
| I read that and thought "huh, is that recent?" and found
| posts that were 9 years old about it. I guess apps just
| have to work on an IPv6-only network but I'm honestly
| surprised my apps do. I don't test in IPv6, my home
| network has it disabled, most of my servers don't have
| anything for IPv6 that I know of. Odd.
| ianburrell wrote:
| If you use the official network API, don't go out of way
| to use the old one, any app should support IPv6.
| Arnavion wrote:
| As long as the the servers they talk to have v6
| addresses. Or does Apple implement some DNS64+NAT64 /
| 464XLAT setup transparently in its OSes too?
| mcpherrinm wrote:
| I think Apple tests on "IPv6 Only" networks that have
| DNS64/NAT64 to reach v4 servers
| jcgl wrote:
| They do implement a CLAT, both in iOS and macOS afaiu.
| aitchnyu wrote:
| Tangential, will email host spam reputation rely on IPv4
| scarcity forever?
| dspillett wrote:
| For longer, I expect. For a long time email has been
| partially centralised so for most real people and a lot
| of systems mail goes out through a specific host (or
| small number of hosts) on the edge of their network or
| completely outside it (sending individuals sending via
| services like gmail, and systems using services like
| sendgrid, and so forth) so the need to push for IPv6 is
| less apparent for mail sending than a number of other
| things. There are orders of magnitude less hosts sending
| mail than, say, making HTTP(S) requests.
| anderbubble wrote:
| We're always looking towards IPv6 support! And you _can_ do it
| today, with a little bit of work. But it's been difficult to
| prioritize in the main project when so few of our users (read:
| maybe one) have expressed interest.
| withinboredom wrote:
| > when so few of our users
|
| existing users, I suppose. New users are looking for exactly
| this feature and will walk away. So, you can now count it up
| to 3.
|
| IPv4 has gotten quite expensive. A newer company I'm working
| with doesn't even have IPv4 access past the edge. There is
| just a little proxy that handles IPv4 translation on the
| edge; it barely gets any traffic.
| MortyWaves wrote:
| Where does this fit in the Ansible + PXE boot vs Terraform vs
| NixOS scale? Seems to be within that space, but before the
| "infrastructure as code" phrase was coined.
| anderbubble wrote:
| It's PXE boot for mostly stateless node / disk images, with a
| template-based overlay system for customizing the image as it's
| applied to the node.
| generalizations wrote:
| So with the overlay you can make node-specific changes? I was
| reading through the initial setup guide but I couldn't figure
| out how you actually specify which node gets which overlays
| (or one-off edits of whatever kind).
| PAPPPmAc wrote:
| I've been using Warewulf (&co.) for provisioning bare-metal
| clusters for decades (back into the Perceus days between Warewulf
| 1 and 2), it's a solid easy-to-comprehend tool that does things
| in ways that are transparent and built from generic [u/li]nux
| tools enough that they're not hard to think about when needed,
| but automated enough you usually don't have to.
|
| Definitely shows its research roots, best-tested with RHEL-
| alikes, reasonably well tested with Suse and Debian, and you may
| be in for some extra work if you need provision something else,
| but that pretty much covers the common cases (and it integrates
| with containerization tools if you need some specific environment
| on the nodes).
|
| It's a nice to have when you need to spin many nodes.
| generalizations wrote:
| Why use warewulf? Seems like there have got to be simpler
| solutions for dealing with bare metal clusters than all of
| this.
| anderbubble wrote:
| Perhaps you have not seen some of the other solutions out
| there in this space.
|
| Warewulf _is_ the simpler solution.
| mikestorrent wrote:
| Always feels like it will be simpler... you start with some
| iPXE, start building, and 6 months later you have a poor
| imitation of a product like this that works only for your
| specific use cases and causes you a headache if the company
| pivots and you have to make it do something new.
|
| Been there, built that. Next time I'm using something with a
| community, and if it doesn't do what I need, I'm contributing
| upstream until it does.
| generalizations wrote:
| Ooof sounds like experience talking. I guess flexibility is
| kinda paramount here. Do you think you'd use something like
| warewulf then?
| superb_dev wrote:
| It's that old? I can't believe it took me this long to find
| Warewulf! I've tried the more complex solutions and this looks
| like what I've always dreamed of
| sneak wrote:
| This project's README tells me so little.
|
| https://sneak.berlin/20241224/readme-howto/
| xenophonf wrote:
| The documentation link is _right there_.
| sevg wrote:
| The words in blue that are underlined are called hyperlinks.
| You can click them ;)
|
| This readme howto is truly way too long and excessively
| prescriptive, and the author goes too far with his inserting
| his opinions (ie, don't use github, don't use discord etc.). I
| couldn't possibly recommend this howto.
| mrbluecoat wrote:
| Is it just for short-term HPC compute job use cases or also IoT
| bare metal with OTA upgrades?
| CaliforniaKarl wrote:
| Its main thing is taking a system that's just powered on, and
| giving it an operating system. Said system can then run HPC
| jobs (or shell sessions, or web sites, or data-transfer); until
| it's rebooted, and the cycle begins again.
|
| I don't know how well it would work in IoT: The device needs to
| PXE-boot, which requires support from the DHCP server and the
| hardware boot environment (UEFI).
| mikeytown2 wrote:
| Description of the project:
| https://warewulf.org/docs/main/getting-started/introduction....
| 4ggr0 wrote:
| Right now I'm searching for the optimal solution to host
| containers in a small but cool way. Thinking about just using a
| plain Linux host, configured via ansible and compose.
|
| Used Portainer so far, but that's a bit bloated for my simple use
| (one host, no-HA, lab env). Kubernetes is way too complex as
| well.
|
| Warewulf sounds fun to try :D all of my profiles would probably
| only have one node. Does Warewulf make a fraction of sense when
| having a tiny, quasi-local environment?
|
| EDIT: ah, nevermind. stateless and temporary makes no sense for
| my usecase, as my containers will run 24/7 with rare changes. But
| I will think about Warewulf if I ever dive into large-scale
| containerization :)
| huijzer wrote:
| If you want small and cool, Wasmtime should be mentioned. It's
| a WebAssembly runtime to it can only run WebAssembly programs,
| which narrows the set of programs that can be executed.
| However, if you can get your program in WebAssembly then
| Wasmtime is very cool. Startup time is a few ms versus hundreds
| of ms for Docker. Memory usage is also orders of magnitude
| less. And security guarantees are similar.
| omnimus wrote:
| Maybe Dockge? Its like Portainer light/cool.
| 4ggr0 wrote:
| Also great suggestion, this looks like a nice addition to the
| stack! thx :)
| proxysna wrote:
| > plain Linux host, configured via ansible and compose.
|
| There is your answer. I'd would also add watchtower to keep
| your containers up to date.
| 4ggr0 wrote:
| great suggestion! thanks, will definitely implement this :)
| brazzy wrote:
| > Thinking about just using a plain Linux host, configured via
| ansible and compose.
|
| That's what I've been using since 2019 (plus caddy as reverse
| proxy for various web services), and in general I've been
| happy. Upgrading to docker-conpose-v2 caused me some headaches
| recently though, and I'll soon have to upgrade the underlying
| Ubuntu server, which I am dreading.
| udev4096 wrote:
| If you really want a lightweight experience, go with alpine and
| then run all the daemon processes using supervisor [1] and for
| HA, you can use keepalived which uses VRRP for HA
|
| [1] - https://github.com/Supervisor/supervisor
| suzzer99 wrote:
| Did anyone else read this as "stateless and dickless" at first
| and wonder what the heck was going on?
|
| No?
|
| I'll show myself out.
| yreg wrote:
| I did as well, "iskl" seems like an unsual english char
| sequence, at least compared to "ickl".
| naikrovek wrote:
| > Warewulf is a stateless and diskless container OS provisioning
| system
|
| are we just always assuming that everything is Linux, now? There
| are other operating systems, and this one only supports Linux.
|
| I know that once you start working in Linux a lot, you start to
| ignore other operating systems, _but they still exist._
|
| This is not an "OS provisioning system", this is a "Linux
| provisioning system".
| linuxftw wrote:
| If we're going to be pedantic, Why not GNU/Linux, as Linux is
| just the kernel? Of course, not all modern distros are based on
| the GNU userlands.
| yjftsjthsd-h wrote:
| Linux is a kernel, not an operating system; it's a system for
| provisioning Linux-based OSs.
___________________________________________________________________
(page generated 2025-03-07 23:01 UTC)