Configuration manager

Hello Dears,
I am up to implement cnfiguration manager as the number of Linux systems are growing alot in my company.
can please advise any of them?
Puppet, spicewalk ansilble etc.. please share you opinion.
My aim is to have config manager to automate/provision systems and to have inventory documented there as well. thanks guys

Hi,

some thoughts at the moment:

  • I'm using opscode chef at the moment, because my chef advised me to do so. The learning curve is steep, but after I got it, it helped me a lot.
  • I'm very fond of the extensible data discovery called "OHAI" available within chef. Every system is inventorized with a high grade of details and you can write data collection modules yourself. The data is available everywhere within chef and outside too, which is extremeley useful. You want a list of software packages from every machine? You want to search for a specific MAC address in your comany? You want an individual hardware report for all your machines? No problem. The data only waits to be searched.
  • This configuration management adds a considerable extra amount of resource overhead to the machines if regularly executed or as an additional service that has to run.
  • Personally I like the method to not use configuration management at all, but an approach to only use self created packages to reach the same goal: Nice video about an existing solution here: OSDC 2013 | Schlomo Schapiro: Configuration Management and Linux Packages (ENG) - YouTube
    The piece of software behind the video is named YADT
  • What I dislike about chef is, that the platform support is limited to current mainstream linux distributions, which causes some older legacy distributions can not be managed with chef. What I also disklike are things that some extension package handles things in other ways the os doing it. E. g. the solid mysql-chef-gem(Yes it's based on ruby). sets up a system that allows multiple instances of mysql at the same machine and so setup of the mysql packages and the setup of the mysql-chef-way interferes with each other. That's why I'm not using the good chef-mysql extensions and stick to my own "recipes" here.

Stomp has made some very true remarks here. I'd like to add some points.

1) Most questions in IT are not about the tools to use but about planning and "strategic coherence". If you solve problems without having an overlaying strategic decision made chances are you end up with a (in a way running but) quite incomprehensible environment. This will at some point come to haunt you and - unfortunately - not immediately but in the long run, when it is hard to redesign. So plan, plan thoroughly and then rethink your plans. You will get the invested time and effort back in manifolds.

2) stomp already mentioned it, but i'd like to stress the point for emphasis: keep in mind that your environment will change over time and that means you need a tool with enough flexibility and compatibility to support these ever-changing platforms. We are right now starting to use chef too to manage our AIX environment, btw. but are not completely satisfied because we need to use a Linux system as a chef server instead of our native platform.

3) Never forget that practice and prospects are two fundamentally different things. I grew up in a time when PC networks were nearly exclusively served by Novell Netware servers. Then came M$$ and shoved their "WinNT server" onto the market, usually against the outcry of the IT department. Their selling argument was like see, it looks like the Windows desktop your secretary uses to type your correspondence, so she can administrate your network in between two letters. This, of course was utter nonsense (my kitchen knife has the same "interface" as a scalpel - that doesn't qualify me as a surgeon), but it sounded good in the presentation. Once (that was back ~1993) the single 64MB 2-processor Novell server was thrown out and replaced by 8(!) 256MB-4-processor WinNT-Servers (which combined produced about half the speed of the single server before) it was too late to change directions. You might want to avoid such decisions.

4) If you can rely on open source tools. On average (notice: if you look at a specific product you need to evaluate it specifically, not on some market average which may or may not apply in the specific case) they are usually better maintained than commercial software and are less prone to falling victim to "strategic market decisions" - forcing customers to do the manufacturers bidding, no matter what. OSS development directions are (again: in general) also not driven by the same rationale as commercial software. Commercial software is built to earn money for the manufacturer, the more the better. Things like usability, fitness for a certain purpose and code quality are just means to this end, not goals themselves. With OSS software, which is in most cases written by volunteers for the sheer fun of it, this is different.

OK, so far. I might add more points after thinking this over.

I hope this helps.

bakunin

Hi.

See also Comparison of open-source configuration management software - Wikipedia, the free encyclopedia

Best wishes ... cheers, drl

Guys, thanks to all for the reply. I will think and yes it requires to think alot before implement in production.
As soon as I make any decision and implement config manager in production I will let you know how all goes and pros and cons :slight_smile:
Love this forum and thank you guys

Another note regarding uninstalling of components:

When using configuration management you have to take care of all uninstalling yourself, track what you've done and remove the files, do the cleanup - considerable work.

Compared to that it's a basic feature every package manager provides and the package manager does the tracking for you.