What Linux is and Why We Use It
Describe in two paragraphs why Linux is the underpinning of our HPC cluster
Linux is an open source operating system that was developed as a replacement for UNIX. It runs on many computing devices from phones, to space space stations, to laptops and to most of the servers comprising the internet. As a free and open source system, it provides security and customization that closed source systems do not typically offer. Licensing is also a lot cheaper than alternatives. For instance, a standard edition WIndows Server 2023 license is $1069 for each server. The license for Rocky Linux 9 is $0. Also, since Linux has been used in the server space for such a long time, there are many mature software resources available for it.Ā This makes the environment excellent for a high performance computing cluster. As such, it is worth learning a little bit about Linux to make accessing the HPC cluster a little bit easier.Ā
Distributions
So, generally speaking you cannot just install or just use "Linux." What is called Linux is actually just the kernel of an existing operating system that also contains libraries, user tools, sometimes graphical interfaces, and other things. For an explanation of this that has become an iconic moment of history for an incredibly niche online group, you can listen to this audio. What you actually install on a server or desktop is a "Linux Distribution." Some popular distributions are Pop!_OS, Ubuntu, Arch LInux, and Red Hat Enterprise Linux (or RHEL). If you want to go down a rabbit hole, you can browse the nearly infinite distributions on distrowatch.com. Now it is worth noting that different distributions have different use cases. Pop!_OS, for instance is focused on desktop or laptop computing whereas RHEL is the industry leader for Server installations. It is also worth noting that while RHEL requires a paid license to use (kind of), there are many alternatives that are based on it and are free. For instance, the majority of the nodes in our cluster are currently using Rocky LInux, which is a free replacement for RHEL. In this guide, where there are differences in commands for different distributions, we will try to include commands for systems based on RHEL, Debian, and Arch, but we will primarily focus on RHEL based systems since that is what we use.