[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
cfengine with multiple configurations
From: |
Abiad Chris-Y18180 |
Subject: |
cfengine with multiple configurations |
Date: |
Thu, 29 Jul 2004 12:06:28 -0400 |
I work in a heterogeneous test lab (Windows NT and Linux) where we evaluate
wireless data solutions (hardware and software). We don't maintain equivalent
configurations on multiple machines very often, which seems to be cfengine's
bread and butter (as I understand it); instead, our lab has a variety of
servers each offering a different component of the system.
We've discovered that a significant portion of our time is spent manually
changing the configuration of these multiple pieces before we run tests that
require a given configuration. On top of this, the lab is shared by many team
members, so it can be a challenge to determine the previous state of the lab
before attempting to reconfigure it. The changes that we typically do on the
platforms that cfengine supports mainly revolve editing text files, running
scripts (e.g. that send configurations to network devices), and (unfortunately)
GUI-based configuration.
I have only recently discovered cfengine, but I really dig the ability to
specify configurations in terms of desired ending state instead of scripts that
define what should be done, as well as the ability (with cron) to know when/how
a configuration has changed (and even to change it back automatically). What I
believe that the cfengine class structure doesn't accommodate is:
1. The ability to change between multiple configurations (likely named ones)
for a single host
2. The ability to query the collection of servers and determine the current
state (whether it's one of the named configs or a temporary/customized config)
We've decided to undertake a development activity towards this goal. My
current vision sees cfengine playing a major part as the workhorse in
configuring and re-configuring the systems. We would develop a wrapper to push
out a new set of cfengine configurations to the hosts and then re-invoke
cfengine to make the changes.
I had a few questions about this:
1. Is there an existing/recommended way already for making this work? (even,
perhaps, if it doesn't involve cfengine?)
2. Does cfengine have any facilities that we should specifically know about for
adding such a wrapper?
3. Would this project be one that others out there find useful?
Thanks for your feedback,
chris
Christopher Abiad, BASc
Toronto Design Centre, Motorola Canada
- cfengine with multiple configurations,
Abiad Chris-Y18180 <=