|
|
Arusha Project terminology
[For a good general system-configuration glossary,
please see the GridWeaver
`technologies' report.]
NB: 'team' and 'package' are crucial terms!
- ARK:
- (1) The Arusha airport
code. (2) An abbreviation for the Arusha Project as a
whole. (3) The name of the Arusha Project "base team", which
provides the essential infrastructure for other Arusha teams
to build on.
- Arusha:
- The town in northern Tanzania after which this
project is named. (Why?)
- assertion:
- Every proto-thing (or thing)
can have a set of machine-checkable checks associated with it,
checks that are `true' if an object is such a thing, and
`false' otherwise. We call these checks a thing's
assertions (following programmer-speak...).
- CM:
- See `configuration management'.
- configuration management:
- We eschew the sysadmin-world definition of
`configuration management' (keeping track of hosts, cables,
networky things, ...); instead we throw our lot with the
world of software configuration management, one
definition of which is:
Configuration Management is the process of identifying and
defining the items in the system, controlling the change of
these items throughout their lifecycle, recording and
reporting the status of items and change requests, and
verifying the completeness and correctness of items.
-- IEEE-Std-729-1983
There are many
other definitions you can choose from!
- deploy:
- A package is
deployed on an individual host by making the bits
needed to use that package available, by putting a copy of
the bits on the individual host, or by symlinking to a
common global copy, or by adding a suitable automount-table
entry, or.... See also revealing...
- dchunk ("disk chunk"):
- (Pronounced `dah-choonk!) An independently-managed
chunk of information that sits in one place on one (virtual) disk;
see this doc...
- ILR:
- See Immovable Local Realities.
- Immovable Local Realities:
- Immovable Local Realities (ILRs) are the main thing that
make the sysadmin task distinct from everyday software
development. ILRs are the "facts on the ground" of any
site... "the only color printer is in the locked cupboard
and students can't use it", "Susie won't use a Sun", "tool Z
only runs on machine Q", "the license server is tied to host
R", and on and on. When you write code to stitch a site
together into a seamless whole, you bump into ILRs all the
time -- and there's not a thing you can do to make them go
away.
- ISA:
- Instruction Set Architecture: the published specification
of the instructions that a particular CPU implements.
It is an important simplifying concept to distinguish
between "architecture" (ISA) and "implementation" of a
CPU. There are few of the former, many of the latter,
and "few" is easier to keep track of. See Brooks and Blauuw
for a full treatment of this subject.
- package:
- A bundled-up piece of sysadmin "added value". Nearly
everything in the ARK world comes in a package. Each
team does some combination of providing and using
packages.
- proto-host:
- A "prototype host"; a "prototype thing" (proto-thing) specialized to hosts.
- proto-thing:
- A "prototype thing". Each "thing" in our sysadmin world
(hosts [proto-host], users [proto-user],
vendors, etc.) is built up by "inheriting" attributes from
other "things" -- those things are prototypes.
When we name a proto-thing (rather than a "real" thing), we are
referring to all the "real" things that inherit from that
proto-thing.
- reveal:
- A package is
revealed on an individual host by causing its
executables to appear in some location likely to be in a
user's PATH. See also deploying...
- site:
- A team that is really just a collection of
machines.
- team:
- A collection of people and machines who participate
in the Arusha Project. If the team is mostly just a
collection of machines, then we call it a `site'.
An example of a team that is just a collection of people
(no machines) would be one where diverse people around
the world collaborate on one or more packages, but have
no common machines.
- value inheritance:
- ToDo (hint: the kind we care about)
|