Idea for FreeBSD
Matthew Seaman
m.seaman at infracaninophile.co.uk
Thu Aug 7 10:30:05 UTC 2008
Jeremy Chadwick wrote:
> On Wed, Aug 06, 2008 at 07:14:51PM -0400, wbentley at futurecis.com wrote:
>> To who it may concern,
>>
>> I am A FreeBSD administrator as well as a Solaris Administrator. I use
>> BSD at home but Solaris at work. I love both OS's but I would like to
>> increase the administrative capability of FreeBSD.
>>
>> In Solaris 10 the Services Management Facility (SMF) was introduced.
>> Basically what it does, is take all the rc.d scripts and puts them into
>> a database to manage. Everything is converted to XML and two basic
>> commands (svcs and svcadm) are used to manage everything.
>
> I highly recommend you and anyone advocating the use of XML for such
> things read the following whitepaper/study, in full:
>
> http://www.cs.kent.ac.uk/pubs/2004/2102/content.pdf
>
Heh. Loved all the little asides to Nancy... Amazing it hasn't been
fixed in 4 years.
Anyhow, yes: ASN.1 is smaller, and hence faster than XML for networked
applications. Which is fine, but as far as I can see doesn't address the
question at hand.
There are two connected questions here:
* What technology should be used to implement the FreeBSD rc.subr
system?
* What functionality could or should be added to the FreeBSD rc.subr
system?
Where the answer to the first question clearly constrains the results
of the second. So what are the requirements for the rc system? Off
the top of my head -- and I've probably missed some vital considerations
here -- in order of priority:
1 reliability. The system has to boot up.
2 repeatability. The system has to boot up in a consistent state
3 fault tolerance. The system cannot fail to boot up unless the
problems really are terminal.
4 configurability. The system has to boot up correctly for all
conceivable combinations of hardware and software.
5 portability. Should run on anything from the smallest of
embedded devices to the most enormous high power super computers
to the most transient of virtualized hosts.
6 manageability. Must be comprehensible by ordinary mortals.
7 efficiency. Must bring the system up as fast as is practicable and
without excessive use of system resources
What does XML-based technology bring to this? As the OP states the primary
benefit is in manageability. I would contend that the advantage claimed
here is rather less significant than indicated. We already have a central
database of configuration information -- /etc/rc.conf -- and while we don't
have one single application to control starting and stopping services we
have the next best thing: a consistent user interface for calling the
individual rc-scripts. Indeed, as other posters have shown elsewhere in
this thread, adding that sort of functionality is only a Small Matter of
Programming using the existing tools.
What's wrong wwith using XML? XML adds significantly to the complexity of
an rc system -- it's suddenly necessary to have another shlib or two and
several compiled applications available early in the boot process. XML
itself is too general-purpose: it has too much baggage designed for its
primary function of facilitating interoperation between diverse systems in
different zones of control, none of which is particularly applicable to
system startup.
I can see the attraction of writing a nice pointy-clicky database-backed
GUI management interface to encourage the uninitiated administrator, but
that can only be an adjunct to the current setup, not a replacement. If
you can't fix a broken system via a text only serial console accessed
across whatever sort of low-bandwidth emergency connectivity you could
imagine, then I suspect quite strongly it's not going to receive
wholehearted community approval.
Cheers,
Matthew
--
Dr Matthew J Seaman MA, D.Phil. 7 Priory Courtyard
Flat 3
PGP: http://www.infracaninophile.co.uk/pgpkey Ramsgate
Kent, CT11 9PW
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 258 bytes
Desc: OpenPGP digital signature
Url : http://lists.freebsd.org/pipermail/freebsd-hackers/attachments/20080807/d532fd22/signature.pgp
More information about the freebsd-hackers
mailing list