I’ve come across Red Hat allot lately and am wondering if I need to get studying. I’m an avid Ubuntu server user but don’t want to get stuck only knowing one distro. What is the way to go if i want to know as much as I can for use in real world situations.
RedHat, CentOS, Debian, Ubuntu.
All are good choices.
Well, maybe not Redhat these days…
Ubuntu, RedHat, AWS Linux, Arch. Honestly distros in production are pretty similar since they’re all headless and pretty pared-down. If you just know the logistics of a few package managers and init systems you’ll be good.
I’m surprised to see arch on your list, I know everything runs in containers now but arch seems way too unstable O_o
By unstable I don’t mean “buggy”, but “you will have to adapt to new major version of package XXX or you can’t fetch updates anymore, so no security patches anymore”.
deleted by creator
I never ran into this so I don’t really know what you’re talking about
You are probably not an IT Admin. Never heard about any server being deployed on Arch anywhere.
I’m a devops professional, not IT. I’ve managed thousands of servers both in-cloud and in-datacenter. That includes Arch servers managed via Chef.
Now you’ve heard about it.
So whats the point of a unstable bleeding edge Arch server, seriously curious. Also if you are not IT than I don’t know what IT is, lol.
I didn’t find it more unstable or bleeding edge than anything else. All upgrades had to be tested and scripted anyway so the process for upgrading stuff was basically the same as any other distro. I honestly never ran into any of the problems people talked about here.
As for why it was chosen, the person in charge liked it and used it personally.
You mean you never received any major package update on arch ? 😛
More seriously, it depends on what we are talking about, if everything runs in container I agree that it kinda doesn’t matter, you will just have a more up to date kernel, but it is stable enough.
Other peoples on this thread are talking about actual system dependancies, for example installing a postgres server from official repo. On this example it would require a database migration as soon as a major postgres version is released, which means some downtime and non-scheduled maintainance.
Depends on context.
If you want to get a job as a “Linux admin” then Red Hat is basically what you want as a “default”. Fedora will give you something you can use at home that’s broadly similar. You will need to learn more than just that though.
Using Fedora at home because you have to use Red Hat at work? NOPE, thanks. Also I wonder if that RHEL focus is mostly american companies? Because here in europe I rarely see RHEL used from my limited perspective.
I’d suggest RedHat and SUSE as well.
I once worked in for a small publishing company years ago, circa 2005, where they used CentOS on the desktop and server environments. Deploying a new desktop was as simple as using kickstart. They had their infrastructure down to a science.
I hope I can get my company to go linux. But for now I can only use it for myself. But i’m quietly pushing :)
Good luck, users at my company would flip out if the desktop wallpaper was unfamiliar.
To tag onto this, what makes RHEL so special? Is it just the support you get from Red Hat or is there something about the distro that makes it so widely used?
Support contracts for risk mitigation is a big part of it, and the other is RH release engineering is amazing.
Aside from that, RHEL, and clones, is a very straight forward, clean distro. It’s very focused with everything doted and tidy, and overall, it has a very uncomplicated feel to it. In contrast Debian derivatives are kind of messy, and SUSE tries to stuff every function into a single application.
RHEL does push a lot of technology. Out of the stable distros, it will be the first to put tech into production. RH does a lot with integration with other systems. This has kept me off of SUSE in the past. RHEL was more tech forward, comparatively.
dnf downgrade
dnf history undo
dnf history redo
it’s very very very critical for most case :')
you can just snapshot before any transaction in apt / pacman / whatever else.
It’s hard, and better have package manager built in. It’s not enough in the enterprise sadly… Just saying, and I think most Corporate with agree with it.
the package manager will have it built in with a simple hook. works great with unattended upgrades.
Beyond support agreements that others are mentioning, the huge requirement for the shop I work at (mid-scale high performance computing center) it’s 3rd party vendor package support. Mellanox/nvidia, whamcloud, slurm, vast, and on and on. Driver packages targeting rhel kernels are an industry standard offering if a vendor supports linux. That’s not always the case with Debian variants, for instance.
Same with huge applications and proprietary compiler suites (think matlab and the intel compiler suite or OneAPI). These are hugely important packages for a number of shops.
Don’t get me wrong, I can build against plenty of other distros but my vendors target rhel as a first class citizen for both build scripts and straight binary packaging.
It is 100% the support. Corporations pay big money to have experts on call to fix things fast when they break, and there’s basically no other player for that kind of model in the Linux space.
The support is a huge part of it. Being able to submit a ticket or call in to get help with a strange quirk is extremely valuable to a lot of companies. Additionally, having a licensed distribution like this means there’s built in trust. Red Hat has been a big player in this space forever and are well trusted already, too. So there’s a huge community of people who have used the product to talk to or hire. They also have certifications for rhel, supported by Red Hat, and those carry weight in the industry to some degree.
100% sure its Debian.
Mission critical server mostly are RHEL or EL Clone or Fedora or it’s derivative… If you combine even Azure nowdays, Microsoft Linux is derived from Fedora, same as Amazon Linux, and others… Debian are covering some part, but mostly hobbyist, or SME, and mostly non critical, as they don’t have standard across, even on their https://wiki.debian.org/LTS/Extended and https://www.debian.org/consultants/
apt also bad when you got to dowgrade package when something mess up, and get messy with dpkg… :'(
So I quite doubt if it’s production env, mostly go with EL. I do know some company use Ubuntu/Debian, but it’s quite few…
If Ubuntu/Debian want to shape Industries, and kick out RHEL, they need to have standard, and better consultancy than RHEL. I hope so that they could grow and make market competitive, but for now it isn’t sadly.
Debian needs to focus more on automation if they want more penetration in the enterprise. Debian feels made for human admins logging in and managing things old school style which is fine for a few machines. Modern enterprises use Ansible etc and need highly functional non-interactive ways to install and configure etc. Preseed and Apt leave something to be desired here.
What has automation to do with a distro? You can automate any distro. Ansible runs on any linux.
A distro can make automation more difficult than it needs to be. As I mentioned in my examples, Preseed sucks, have you ever used it? And of course Ansible works on pretty much any distro, but Debian family distros are made with the expectation of user input, such as expecting configuration values during package installation and this has to be worked around. It’s not impossible, just more work and testing. When you’re automating CentOS and Ubuntu next to each other, you’ll realize extra Ubuntu related code.
Not a big deal, it’s just minor preferences.
but Debian family distros are made with the expectation of user input, such as expecting configuration values during package installation
Any examples? I never installed such a package.
It’s been a long time, if I remember correctly one of them is Postfix. Again going from memory that’s at least five years old, when installed in say Ubuntu, you get asked questions, like what you want your mailserver hostname to be, whether you want to configure a relay, etc. This is fine if you know the answers at install time and you’re around to answer the question, otherwise your automation will hang indefinitely if this is not worked around.
Now also IIRC, there are ways to work around this, such as by providing the answers in your automation for the package install step (but then you’re mixing partial postfix config with the package install and the remainder of the config is separate, feels weird) , in some cases it’ might be simply an apt option, but like I said, it takes extra code in your automation which is not necessary on RHEL based distros. Installing a package in Ansible can be 3 short lines of code, for Deb based it’s like 10 lines.
Doing this for one package isn’t such a big deal, but when you find yourself having to work around things and writing extra code for one specific distro/family it becomes clear it wasn’t made for automation and unless you have a personal affinity for it, it’s just a bit easier to use something else.
This is not a diss, it’s not a bad thing for a distro to made for humans, it’s just in that the environments I work in, managing hundreds of machines with Ansible and having a significant code base I prefer to have my code smaller and cleaner.
Company I’m at runs Windows server. Kill me.
Oh dear god
Almost always use Ubuntu in production. Also a bit of Centos at one point.
C’est vrai, same for me
If you want to learn more than one distro, try setting up Docker containers for various services. The base distros in the containers use the same commands as on the base metal
It really depends. I work for a large company and we use Ubuntu, Oracle, RedHat, and SLES. We were moving from Oracle to Ubuntu but now we are going back to RedHat.
Currently we deploy like this: Ubuntu: PostgreSQL, web servers, some engineering workstations, and big data Oracle & RedHat: web servers, security applications, and network systems
So just having a fundamental understanding of Linux and you will be fine SUSE: SAP and HR software
What’s the reason if I may ask why they are moving to Red Hat instead?
Mostly cost. We used to run a lot of Oracle databases and they have become extremely expensive to keep running. So we are migrating to PostgreSQL. The servers were getting migrated to CentOS but now that RedHat fucked that distro we are going back to RedHat. Part of that deal is switching from chef to Ansible. So to save costs we are consolidating to a single vendor.
Debian.
A lot of my clients were using CentOS. Not sure what’ll happen next now that Red Hat killed CentOD.
I’ve seen some organisations move from CentOS to Rocky Linux.
I work at NASA and we use redhat a lot for development work.
All of my personal servers are Debian. My last company switched their entire production fleet from centos to Debian. I think a lot of people switched to Debian back when the Centos Stream debacle went down.