7 ms·
I understand "bare-metal" to mean without an operating system. More recently, the definition has confusingly expanded to sometimes include an operating system,
by loxias 5y ago
I understand "bare-metal" to mean without an operating system. More recently, the definition has confusingly expanded to sometimes include an operating system, but without a hypervisor.
This is a tutorial on installing Ubuntu, then k3s, then other software. What exactly is "bare-metal" about this?? :)
- m0zg 5y agoUbuntu is installed on bare metal, isn't it? :-) But on a more serious note, "bare metal" in the context of K8S means merely that K8S is not pre-installed by a cloud provider for you, and there are no external services (such as storage or load balancing) available out of the box.
- outworlder 5y ago> What exactly is "bare-metal" about this?? :) In this context, this means running K8s nodes directly on the hardware. As opposed to running the nodes as virtual machines. Normally VMs are used in the context of cloud providers but it's not uncommon (with beefier hardware) to run k8s as VMs in datacenters. Deployments on top of OpenStack, Azure Stack or Anthos are common. As is ESXi. It's another abstraction layer, but that gives you easier handling of things like storage and, in some cases, networking. > More recently, the definition has confusingly expanded to sometimes include an operating system, but without a hypervisor. That's exactly it - the definition has expanded.
- topdancing 5y ago> I understand "bare-metal" to mean without an operating system. In your mind, how does a computer system function without an operating system?
- jandrese 5y agoLike an embedded system? Where at boot it just jumps to some offset in ROM where your program lives and starts executing. If you want I/O you better bring your own library and/or be willing to set registers.
- topdancing 5y agoEven embedded systems run on an OS, wondering of the GP knows that Ubuntu is running Linux (ie, an OS) under the hood. And that Kubernetes deployments out there primarily run on Linux.
- runnerup 5y ago> Even embedded systems run on an OS Many do not. I've seen quite a few ARM processors running without any OS.
- loxias 5y ago(am I the GP?) No, not all embedded systems run an OS. Linux is not an OS, it's a kernel. Ubuntu is an OS. Kubernetes is application software that runs on several operating systems, primarily ones based on the Linux kernel.
- topdancing 5y agoLinux is indeed an OS: https://en.m.wikipedia.org/wiki/Linux https://en.m.wikipedia.org/wiki/Linux Ubuntu is not an OS, it's a Linux distribution.
- hnlmorg 5y agoBare bones software (in the original sense of the term) interfaces directly with the hardware without abstracting it via an operating system. Much like an operating system would need to do in order to provide that abstraction (albeit you might not need to worry about paging, kernel rings etc with bare bones software). You see this in plenty of domains: firmware, embedded systems, uEFI, bootloaders, etc. This used to be the norm too. Old 8-bit personal computers like Commodores didn't run an OS, instead they'd have BASIC run as firmware (though you could get CP/M, GEM and others for a lot of the later generations of 8-bit micros). You can also get modern software that runs bare metal without an OS. eg this game: https://github.com/adventurerok/Bare-metal-Space-Invaders-Clone https://github.com/adventurerok/Bare-metal-Space-Invaders-Cl...
- loxias 5y agoSimple. It only runs one what you think of as a "program". I've written for bare metal on several platforms. Operating systems exist for a specific use case: when you want to run potentially multiple programs on the same piece of hardware, over time (not nec. concurrently), and you don't want your software to have to think about how to interface with the hardware. That's what operating systems do. There are plenty of cases when you don't need, or want, an OS.
- op00to 5y agoThe term has different definitions based on context.