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.
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.
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.