Note: Multiple processes will become threads when the multi-threaded dt is ready.
Also Note: Multiple devices on the command line is a short term solution, since the
next major dt release will support a target input file to define many devices each
with their own test options. But that said, the CLI method has been successful for
50+ devices on Windows (CLI length varies per host OS).
So why add this support after all these years?
well, for folks initiating their IO tools from NATE control servers, you'll realize
the following benefits:
So, what's different?
Please Note: To assure unique data per device, please consider adding the prefix= option. A standard prefix that has worked well is: prefix="%d@%h", where '%d' expands to the device name amd '%h' expands to the host name. This prefix is written at the start of each block, and has been instrumental in helping triage data corruptions.
Log File Format Keywords: %dsf = The device name. %device = The device path. %iodir = The I/O direction. %iotype = The I/O type. %host = The host name. %pid = The process ID. %user = The user name. Example: log=dt_%host_%dsf-%iodir_%iotype-%pid.logSo for each device, the device name/path is substituted into the log file name, to generate a unique log for each device. Note: Path delimiters: '/' or '\\', are converted to an understore '_'. For "%dsf", the device directory: '/dev/' or '\\.\' are stripped. See examples below.
Please Note: Use of dt's log file option requires write access to the testbed directory, if you include a log path directory to this. On Windows, your testbed share must be mapped. On *nix, the auto-mounter takes care of this (of course), if client is properly configured.
Trigger Types: zapipanic = Panic controllers via ZAPI.At the present time, sending ZAPI commands is accomplished using this external tool:
Later, ZAPI support may be integrated directly into dt (planned as part of threaded dt).
NetApp Specific Options: ontap_cserver=string The cluster server name. ontap_nodes=string The cluster node name(s). ontap_username=string The user name (optional). ontap_password=string The password (optional). ontapi_path=string The 'ontapi' path (optional)
ssan-rhel5u4-21# cd /var/tmp ssan-rhel5u4-21# mkdir dtlogs ssan-rhel5u4-21# dt.last version --> Date: June 20th, 2012, Version: 17.66, Author: Robin T. Miller <-- ssan-rhel5u4-21# dt.last if=/dev/sdb,/dev/sdc,/dev/sdd,/dev/sde count=1 log=dtlogs/dt-%host-%dsf.log disable=compare,stats ssan-rhel5u4-21# ls dtlogs dt-ssan-rhel5u4-21-multi-dsfs.log dt-ssan-rhel5u4-21-sdc.log-16709 dt-ssan-rhel5u4-21-sde.log-16711 dt-ssan-rhel5u4-21-sdb.log-16708 dt-ssan-rhel5u4-21-sdd.log-16710 ssan-rhel5u4-21# ssan-rhel5u4-21# rm dtlogs/*log* ssan-rhel5u4-21# dt of=/var/tmp/dt.data1,/var/tmp/dt.data2 count=1 log=dtlogs/dt-%host-%device.log disable=stats enable=pdebug ssan-rhel5u4-21# ls dtlogs dt-ssan-rhel5u4-21-multi-devices.log dt-ssan-rhel5u4-21-_var_tmp_dt_data2.log-22914 dt-ssan-rhel5u4-21-_var_tmp_dt_data1.log-22913 ssan-rhel5u4-21#Windows Example:
X:\bin>x:\bin\dt.last if=\\.\PhysicalDrive1,\\.\PhysicalDrive2 log=c:\temp\dt-%host-%dsf.log count=1 disable=compare,stats X:\bin>dir c:\temp\dt*log* Volume in drive C has no label. Volume Serial Number is 54F3-DB6A Directory of c:\temp 06/22/2012 10:11 AM 224 dt-rtmiller1-lxp-multi-dsfs.log 06/22/2012 10:11 AM 218 dt-rtmiller1-lxp-PhysicalDrive1.log 06/22/2012 10:11 AM 218 dt-rtmiller1-lxp-PhysicalDrive2.log 3 File(s) 660 bytes 0 Dir(s) 57,474,859,008 bytes free X:\bin>ZAPI Panic Examples:
This first example is forcing a panic of all nodes via the cluster server (cserver).
Force an error condition that forces the trigger to be executed:
robin-ptc% ./dt if=/var/tmp/dt.data bs=512 count=1 position=0 \ pattern=0xdeadface flags=direct \ trigger=zapipanic ontap_cserver=rtmiller-vsim3-d2.sim.rtp.netapp.comThen verify all nodes of the cluster have rebooted with dump enabled (panic).
This second example forces a panic on specified cluster nodes:
robin-ptc% ./dt if=/var/tmp/dt.data bs=512 count=1 position=0 \ pattern=0xdeadface flags=direct trigger=zapipanic \ ontap_nodes=rtmiller-vsim3.sim.rtp.netapp.com,rtmiller-vsim4.sim.rtp.netapp.comSee BURT 592918 for more details.
Last Modified: June 20th, 2012