sam-datamoverd - Oracle HSM datamover daemon
∕opt∕SUNWsamfs∕sbin∕sam-datamoverd
SUNWsamfs
The sam-datamoverd
daemon executes on shared QFS clients that
have the defaults.conf
(4) parameter distio = on
. It performs
tape IO for the SAM archiver and stager on QFS clients in order to help
distribute load across multiple hosts by transferring data directly between
the shared file system and configured tape drives.
sam-datamoverd
is started by sam-fsd
, and it cannot
be directly executed from a command line. It executes in the directory
∕var∕opt∕SUNWsamfs∕datamover∕
fsname.
This is the datamover's working directory and each sam-datamoverd
daemon executes in a subdirectory named for the target file system.
Distributed IO can only be enabled on hosts running Solaris 11.
The MDS server must be configured to use distributed tape IO by enabling the
distio = on
parameter in the defaults.conf
(4) file. Device
types can be enabled or disabled in defaults.conf
(4) to participate
in distributed IO. If a device type is enabled for distributed IO then all
devices of that type must be connected and configured on all QFS clients
that are configured to act as datamovers.
Distributed IO can be can be enabled or disabled for individual archive sets
by setting the -distio
archive set parameter in archiver.cmd
(4). By
default all archive sets have distributed IO enabled.
Distributed IO can be disabled for staging by setting distio = off
in
stager.cmd
(4). By default distributed IO is enabled for staging.
Each QFS client that will participate as a datamover must be connected to all tape drives configured for distributed IO on the MDS. The client mcf file must contain entries for all tape drives participating in distributed IO, and the equipment numbers must exactly match with the MDS mcf file. The family set of the tape drives can either be '-', or the family set of the tape library if it is configured on the client.
Care must be taken as ∕dev∕rmt entries
are likely not consistent across hosts. See devlinks
(1M) and the
Solaris Fibre Channel and Storage Multipathing Adminstration Guide,
Chapter 8: Persistent Binding for Tape Devices for how
to create persistent binds for tape devices across hosts.
Once tape devices are configured on the client the only configuration needed
is to ensure that the parameter distio = on
is set in
defaults.conf
(4). This will ensure that a sam-datamoverd
daemon
is started for each mounted QFS shared file system.
All files written by sam-datamoverd are byte-for-byte compatible with files
written by sam-arcopy
(1m) and are written in tar
format. The
operation of both the SAM archiver and stager proceed as usual, including
all tape library operations such as loading and positioning media, up until
when actual IO begins.
At this point a datamover session is initiated with one of the participating QFS clients and control of the selected tape drive is delegated to the datamover. Requests are sent for each file in the archive request or stage stream and the datamover executing on the chosen client then processes these requests by performing the required IO.
The datamover sends the request results and control of the tape drive is given back to the MDS host. All error processing and filesystem state updates are handled on the MDS host. If any files were not able to be processed by the datamover, then the operation is retried locally on the MDS as a failsafe.
If DIV is enabled in defaults.conf
(4) on the MDS for a device, then
the datamover will perform IO with DIV checksums and the appropriate error
checks.
The samu
(1m) archiver (a
), stager (n
), and device (s
)
status screens will update periodically with datamover progress. In order
to reduce network traffic this update will not be as frequent as when
all operations are performed locally.
The datamover outputs trace messages to ∕var∕opt∕SUNWsamfs∕trace∕sam-datamoverd.
The trace verbosity is controlled by trace parameters in defaults.conf
(4).