README
1 #
2 # Copyright (c) 1999 Network Appliance, Inc. All Rights Reserved.
3 #
4
5 #
6 # Copyright 2009 Sun Microsystems, Inc. All rights reserved.
7 # Use is subject to license terms.
8 #
9
10 # Permission is hereby granted, free of charge, to any person obtaining
11 # a copy of this software and associated documentation files (the
12 # "Software"), to deal in the Software without restriction, including
13 # without limitation the rights to use, copy, modify, merge, publish,
14 # distribute, sublicense, and/or sell copies of the Software, and to
15 # permit persons to whom the Software is furnished to do so, subject to
16 # the following conditions:
17 #
18 # The above copyright notice and this permission notice shall be included
19 # in all copies or substantial portions of the Software.
20 #
21 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
22 # OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
23 # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
24 # THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
25 # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
26 # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
27 # DEALINGS IN THE SOFTWARE.
28 #
29
30 DESCRIPTION
31 ===========
32 Ndmpcopy transfers data between filers using the Network Data
33 Management Protocol (NDMP) version 4. When you use rsh to
34 perform this transfer, the data flows from the source machine
35 to the rsh host and then again from the rsh host to the
36 destination machine. This can put a double load on the network
37 and unneccessary load on the rsh host. With ndmpcopy, data is
38 transferred directly from the source machine to the destination
39 machine, and the NDMP host and network are not burdoned with
40 the extra load.
41
42 When you run ndmpcopy it will contact the NDMP server processes on
43 the source and destination machines and authenticate the connection.
44 It will then initiate a backup on the source machine and a restore
45 on the destination machine. The transfer will happen between the
46 two machines directly, only burdoning the NDMP host with status
47 messages instead of all of the backup data. Initial tests have
48 demonstrated double the performance when using ndmpcopy instead
49 of rsh.
50
51 TEST SUITE INSTALLATION
52 =======================
53
54 To install ndmpcopy, download the ndmpcopy package "SUNWstc-ndmpcopy"
55 from <GATE_PATH>/packages/`uname -p`
56 Install the package using pkgadd.
57
58 TEST SUITE CONFIGURATION
59 ========================
60 1. Create a destination directory on the destination Network Attached Storage
61 (NAS), with size equal to or greater than the source directory/file system
62 to be copied.
63 2. Create a ndmp user on Solaris Nevada or Opensolaris or Sun Unified Storage 7000 Series. The default encryption mechanism should be md5.
64 A ndmp user can be created on Solaris Nevada as below :
65 # ndmpadm enable -a cram-md5 -u admin
66
67 TEST SUITE EXECUTION
68 ====================
69
70 ndmpcopy binary is created in ndmpcopy/bin directory.
71 Usage: ndmpcopy src_filer:/src/dir dest_filer:/dest/dir
72 [-sa none | user:password] [-da none | user:password]
73 [-sport ndmp_src_port] [-dport ndmp_dest_port]
74 [-dhost ndmp_dest_ip_addr] [-level ndmp_dump_level]
75 [-v] [-q] [-dpass] [-h]
76
77 Defaults:
78 src_auth_type = text
79 src_auth_user = root
80 src_auth_password =
81 dest_auth_type = text
82 dest_auth_user = root
83 dest_auth_password =
84 ndmp_src_port = 0 (0 means NDMP default, usually 10000)
85 ndmp_dest_port = 0 (0 means NDMP default, usually 10000)
86 ndmp_dump_level = 0 (valid range: 0 - 9)
87 ndmp_dest_ip_addr = (no default: user needs to override dest_filer value)
88 verbosity = noisy
89 different_passwords = no
90
91
92 BUILDING THE ndmpcopy TOOLS (OPTIONAL)
93 ======================================
94 Pre-requisites
95 --------------
96 1. Sun Solaris 10 and above Operating System is required.
97 2. Sun Studio 11 or higher to be installed
98 4. /usr/ccs/bin/make should be used for making
99
100 Executing tests using precompiled packages is the method we strongly
101 recommend. However, if, for some reason, you need to build ndmpcopy
102 binaries from source, simply do the following:
103
104 a. Install SUNWstc-tetlite
105
106 Install the precompiled SUNWstc-tetlite package. Detailed instructions
107 for this can be found elsewhere in this document.
108
109 b. Obtain and the Test Suite Source
110 Obtain the test suite source using appropriate source code management
111 (SCM) commands or install the source from a tarball, etc into an STC
112 workspace. The method used to obtain the source code is not important
113 to the build process; the path of ndmpcopy source code is: the source
114 code must be placed under the path "usr/src/tools/ndmpcopy"
115
116 c. Build the source
117
118 It is not required to execute the build process as 'root'
119
120 user$ export TET_ROOT=/opt/SUNWstc-tetlite
121 user$ export CTI_ROOT=$TET_ROOT/contrib/ctitools
122 user$ export TET_SUITE_ROOT=/export/STC/usr/src/tools (example)
123 user$ cd $TET_SUITE_ROOT/ndmpcopy
124 user$ /usr/ccs/bin/make
125
126 The build can also install into a 'proto' directory below the workspace
127 root directory. The workspace root is the directory under which the
128 'usr/src/tools' directory resides (in the example above, the workspace
129 root is "/export/STC"). To install binaries into the proto directory,
130 do:
131 user$ /usr/ccs/bin/make install
132
133 Following this, ndmpcopy binary packages can be constructed using the
134 contents of the proto directory. To build the package, do:
135
136 user$ /usr/ccs/bin/make package
137
138 This can be done in addition to, or instead of, 'make install'. The
139 packages thus constructed will be stored in the 'packages' directory
140 under the workspace root.
141
142 COMPATIBILITY
143 ============
144 This version of ndmpcopy has been tested on Solaris 10, Solaris Nevada build 103 and OpenSolaris.
145
146