oneSIS allows you to have diskless nodes, diskfull nodes, or any
combination in-between. Simple setups require hardly any configuration at all,
but with oneSIS even complex environments become easy to manage.
Running a system with 'diskless' nodes eliminates at least one
single point of failure
and tends to make system administration significantly easier.
On diskless nodes, the root filesystem is mounted read-only over NFS
and local disks (if any) can be used for swap, temporary storage, or
persistent local storage. 'Diskfull' nodes (nodes that boot directly
from a local disk) use exactly the same root filesystem as diskless nodes and
therefore behave exactly the same way. However, there is some added overhead
to make sure that the root filesystem on a diskfull node remains synchronized
with the master image. oneSIS was designed primary to simplify administration
of diskless machines,
but it can handle environments running any mix of diskless and diskfull nodes,
and can deploy either with ease.
oneSIS is unique in the way it is able to tailor the behavior of
individual nodes. Most nodes behave in exactly the same way; they use the
same configuration files in the master image. However, any node or
class of nodes can be configured
to load different configuration files, run different services, or otherwise
use an altered filesystem in any way. The differences in the master image are
centrally configured from a single configuration file. Any node or
nodes can be configured to behave in any way you want. oneSIS provides
fine-grained control of node behavior without sacrificing clarity or
oneSIS is a system for enabling a single root filesystem (ie: '/' on your
Linux machine) to be shared my many (even functionally different) machines.
Since many nodes share a single filesystem, the primary mode of operation
is to run each node with a read-only root filesystem. However, in the course
running it is common for start scripts and applications to need to write to
the root filesystem
for many reasons. To overcome this, oneSIS enables you to configure
any file or directory to reside either in a RAM disk, on a local disk,
or on any NFS (or similar) mount point. Note: The only files that
oneSIS manages are those that need to be writable and those that should be
different between nodes.
A strong objective in the development of oneSIS was to make a system that
could essentially be a cluster 'building block' of sorts. To achieve this goal
a very simple constraint was devised: The root filesystem of every node
should always be EXACTLY identical. Every node is an exact mirror of
the root image. This property has many desirable benefits in terms of
system manageability and scalability.
A single oneSIS image can contain the configuration of many functionally
different machines at the same time. In fact, much of what oneSIS does is
explicitly define all the differences that exist between nodes. To be precise,
oneSIS is capable of performing the following functions:
|Configuring a linux distribution to use a read-only root filesystem|
|Configuring any file or directory in the image to be writeable|
|in RAM (for non-persistant data)|
|on a local disk|
|on a mounted network filesystem|
|Declaring class-specific or node-specific versions of any file or directory|
|Deploying the image to a local disk|
|synchronizing an image deployed on a local disk|
In addition, oneSIS supplies several utilities that may help simplify
managing your system. These utilities can be used for the
As mentioned above, a single oneSIS image can contain the configuration of
many functionally different nodes at once. It does this by configuring a
'linkback' for any file or directory that should be different between nodes.
This allows any file or directory to be changed for any
class of nodes or any individual node.
Here's how it works:
|Generating an initial ramdisk (initrd) to boot NFSroot nodes|
|Handling power management|
|Consolidating different power utilities into a single command|
|Handling console management|
|Consolidating different console utilities into a single command|
|Making per-node PXE configurations easier to handle|
|and more ...|
If a linkback is defined for a particular file (/etc/fstab in this example), the file becomes a link into a RAM disk created by oneSIS. At
boot time, each node determines its role and uses the version of the file that
corresponds to that node's class (role). If a
class-specific version doesn't exist, the default is
used. This technique can be used to achieve any desired behavior for any node.
When combined with class inheritance, the behavior
of an entire complex system can be expressed with surprisingly little
A rudimentary glance
at the configuration file can give any administrator a very good impression
into how the entire system is configured to operate. Changing the behavior of
each type of node is very easy to do, and with diskless nodes all changes
are seen instantaneously on all clients. Also, any node can change its
configuration (or its role) on the fly
by making a simple change to the configuration file and issuing a command.
oneSIS opens up an entirely new realm of possibilities for managing
diskless nodes. At least one useful side-effect is that linux cluster
administration has never been so easy.
oneSIS currently supports several different flavors of Linux.
Don't be too upset if your target distribution is not in the list: it can
take less than 5 minutes to port to a new distribution.
|RedHat Enterprise Linux|