To mount a pipelinefs
filesystem, the
pipelinefs program may be used as follows:
pipelinefs
[mountpoint
]
Standard FUSE filesystem options are also available in the pipelinefs command, but default values for some of these options are automatically set. Be aware that the filesystem depends on a few of the FUSE options to work properly, but you may of course experiment with alternative values.
A mounted pipelinefs
filesystem will
appear in the /proc/mounts
file, but
will not appear in the output of the df
command.
A pipelinefs
filesystem may be unmounted by using the
fusermount system command as
fusermount
-u [mountpoint
]
To create a compute node pipeline instance under a
pipelinefs
filesystem , or to “connect” a running
compute node pipeline instance to the filesystem, simply
write a “host:port” address value to a new
file in the top-level directory of the pipelinefs
filesystem.
Upon creating such a “file” in the
filesystem, a trial WCBE_NAME_MSG message
is first sent to the given address in an attempt to
contact a running compute node pipeline instance on the
given node listening on the given port. If no response to
the trial message is received, a new compute node pipeline
is spawned on the given host by logging in to that host,
and running the wcbe
application. After spawning a new compute node pipeline
instance, a sequence of WCBE_NAME_MSG
messages are sent to verify that the instance started up
correctly. The following shell command example creates
and/or connects to a compute node pipeline instance on the
host compute0
with a control socket on port 9000, and creates the
instance's filesystem entries under the name
node0
in the pipelinefs
filesystem
mounted at pipelines
.
echo compute0:9000 > pipelines/node0
To shut down a compute node pipeline instance that is under
a pipelinefs
filesystem, simply remove the instance's directory from the
filesystem. Note that the directory need not be empty for
the remove operation to succeed. The following shell command
example would shut down the compute node pipeline instance
started in the previous example.
rmdir pipelines/node0
A list of connected compute node pipeline instances is
created in the pipelinefs
mount point
directory when the filesystem is unmounted in order to
facilitate the compute node connection process upon
remounting the pipelinefs
filesystem.
Every compute node instance with an entry in the
pipelinefs
filesystem just before it is unmounted is written to the
.state
file in the mount point
directory. When the pipelinefs
filesystem is
remounted on the same directory, the
.state
file in that directory is
read, and an attempt is made to reconnect to each of the
compute node pipeline instances listed in the file. For
example, after the following sequence of commands
pipelinefs pipelines echo compute0:9000 > pipelines/node0 fusermount -u pipelines pipelinefs pipelines
the directory node0
should be present under the pipelines
directory. If the
pipelinefs
filesystem is once more unmounted, one will find the file
.state
under the pipelines
directory with the
content
compute0:9000 node0
The .state
file is merely a
convenience, and is not essential to the proper
functioning of the pipelinefs
filesystem.
Configurations are created by copying the contents of a
local configuration file to a new file name under the
configurations
directory of a compute
node pipeline instance. In the following example, we create
a new configuration named config0
using
the file testconf.xml
.
cat testconf.xml > pipelines/node0/configurations/config0
A configuration is destroyed by removing the configuration's
directory from the pipelinefs
filesystem. Note
that the configuration directory need not be empty for the
“destroy” action to succeed. For example, to
destroy the configuration created in the previous example,
the following command is sufficient.
rmdir pipelines/node0/configurations/config0
Be aware that a destroyed configuration may not immediately
disappear from the pipelinefs
filesystem, which
will occur if the targeted configuration is active when it
is destroyed. This behavior is a consequence of the manner
in which configuration destruction is handled by the compute
node pipelines. A sign that an active configuration has
received the “destroy” command and will be
removed from the filesystem after its deactivation is that
the contents of the configuration's
status
file is
“active-retired”.