* Disclosure I work for Opscode, the company behind Chef I just read through this thread and wanted to put in my 2 cents about what modern config management software does and does not do from your list of requirements. I should also mention I don't really have any first hand experience with CFEngine so I could be mistaken on it's capabilities, that being said here's my thoughts. Config management is usually not for orchestration Rundeck/MCollective are usually used with Chef/Puppet, the config management is used to define an idempotent system or infrastructure and the orchestration tool for running one off scripts on demand across multiple machines. What you described seems to incorporate both so I would suggest you considering using 2 tools.
I think it's also important to note that both of the new popular config management tools (Puppet and Chef) aren't just written in Ruby but require at least some Ruby knowledge to even use. They both use erb templates, Chef allows pure ruby across the board, and Puppet resources would be written in Ruby, so if you're heading in that direction you're best off just embracing Ruby from the start. Also for what it's worth, I really like the Rundeck/Chef combination, especially for the list of requirements you have. On Mon, Mar 19, 2012 at 6:28 PM, Miles Fidelman <[email protected]> wrote: > Hi Folks, > > New list member here, seems like this might be the place to pose this > question: > > I'm getting ready to rebuild a small cluster - mostly used for development, > but likely to move into a production role, and thinking about being prepared > if we need to scale. As a result, I'm looking at way to move from a rather > ad hoc management approach - configuration notes and task checklists in word > documents, spreadsheet of IP addresses and DNS records, bunches of shell > scripts and cron jobs - to something a bit more organized and scaleable. > > My first thought is to start with a simple database for config. info, and > moving scripts under configuration control; maybe adding an orchestration > tool like rundeck (though call me old fashioned enough to think about > writing some wrapper code in tcl). > > Anyway, when I asked for tool suggestions on one of the devops lists, where > I kind of figured was the place to ask about tools, about all I got were > religious pontifications about puppet or chef being the "one true way" - > which seems a bit out of line with my experience of real-world operations, > both in the small, and in the large (been around both, though more as an > architect for large systems than as an operator). > > Which leads me to pose two questions: > > 1. What is the state of the practice right now? How much is sys > administration a world of traditional approaches, vs. how much have the new > generation of devops tools caught on outside the core of folks who've drunk > the koolaid? (I'm really trying to get calibrated in reality here.) > > 2. My more specific question re. what are people using to manage > accumulated scripts and semi-manual procedures? > > I'm looking for something along the following lines - an orchestration tool > that would: > > - provide for editing/managing/versioning scripts (script = anything > that can be invoked at the command line) > - a library of control functions for use within scripts > - invoking scripts, combinations of scripts, pipelines of scripts (in > the Unix sense of pipes) - locally, remotely, across multiple machines > - remote script execution via ssh, rather than some kind of agent > - providing a simple database for keeping track of variables used by > scripts (e.g., IP addresses, DNS records for use by a provisioning > script) - that can be accessed from scripts > - accessing the above via cli, RESTful API, GUI > - cross-platform > - (nice-to-have) minimal environmental requirements (i.e., a step above > the unix shell, say the gnu buildtool suite rather than the JVM + a mass > of libraries, or the ruby ecosystem -- a self-configuring basic > environment would be nice, like perl+cpan) > > I'm sure we've each cobbled something together along these lines - be it > through manual processes, standard installs, or something fancier. I'm > kind of wondering what different people have done, what pieces fit > together better than others, what's available that's more integrated but > that doesn't create a monolithic environment. > > Rundeck seems to do most (all?) of this, running on Java. It looks > nice, but it's also really new. > > tcl/tk provides a lot of this - but without the organizing functions > (tcl/tk + git, or maybe a tcl/tk IDE perhaps?) > > What have people found that works? > > Thanks very much, > > Miles Fidelman > > -- > In theory, there is no difference between theory and practice. > In practice, there is. .... Yogi Berra > > > _______________________________________________ > Tech mailing list > [email protected] > https://lists.lopsa.org/cgi-bin/mailman/listinfo/tech > This list provided by the League of Professional System Administrators > http://lopsa.org/ _______________________________________________ Tech mailing list [email protected] https://lists.lopsa.org/cgi-bin/mailman/listinfo/tech This list provided by the League of Professional System Administrators http://lopsa.org/
