[WINOF] optionally sign drivers only for a specific OS & processor architecture.
[mirror/winof/.git] / docs / install.txt
1 This document describes installation steps for developers and is\r
2 not end users.  The process described here is for developers running\r
3 on a homogeneous Windows HPC cluster.\r
4 \r
5 Installation is divided into several phases in order to allow for\r
6 quick replacement of specific drivers and/or libraries.  Before\r
7 starting, the developer should note the following:\r
8 \r
9 - OS version running on the cluster (2003, 2008)\r
10 - Processor architecture of the cluster (x86, x64, ia64)\r
11 - Whether they want to install checked or free versions of\r
12   drivers and libraries.\r
13 \r
14 \r
15 1. Build the sources.\r
16 \r
17 Refer to docs\built.txt and bldwo.bat for details on building the\r
18 source code.  As an example, this will build the sources to install\r
19 on a 2008 HPC cluster running on 64-bit processors.\r
20 \r
21         bldwo chk x32 2008\r
22         bldwo fre x32 2008\r
23         bldwo chk x64 2008\r
24         bldwo fre x64 2008\r
25 \r
26 You must build both the checked and free versions of the source to\r
27 use this installation process, and include 32-bit binaries when\r
28 installing on a 64-bit system.  This is because the inf files\r
29 reference 32-bit checked and free and 64-bit checked and free\r
30 versions of the libraries in the install process.\r
31 The correct version (checked or free) of the drivers and executables\r
32 will be installed.\r
33 \r
34 Note: during development, you only need to rebuild the actual\r
35 version undergoing testing, as long as the other files are\r
36 available.  You may also build from a specific directory in\r
37 the source tree to only rebuild those files undergoing active\r
38 development.\r
39 \r
40 \r
41 2. Create packages.\r
42 \r
43 Use etc\pkgwo.bat to sort the compiled source code into their\r
44 respective packages.  The separation of the source code into\r
45 packages allows quick rebuilding and replacement of selected\r
46 modules.  For example, the following creates packages for a\r
47 2008 HPC cluster.\r
48 \r
49         pkgwo fre x64 2008 all\r
50 \r
51 This creates packages for all the various drivers under\r
52 install\2008\x64\fre (ibbus, ipoib, mlx4_bus, winverbs, etc.)\r
53 \r
54 \r
55 3. Deploy the packages to the head node.\r
56 \r
57 Use etc\depwo.bat to copy the packaged files to the HPC cluster\r
58 head node for installation across the cluster.  The files are\r
59 copied into \winof\install on the head node.  For example, the\r
60 following deploys the packages to a head node named 'hpc-head'.\r
61 \r
62         depwo fre x64 2008 hpc-head\r
63 \r
64 \r
65 4. Add a test certificate.\r
66 \r
67 NOTE: This step only needs to be done once.\r
68 \r
69 As part of the package deployment, batch files were copied to the\r
70 head node.  Run \winof\install\addcert.bat on the head node to create\r
71 a test certificate (WinOFCert.cer) that can be used to test sign the\r
72 drivers.\r
73 \r
74         cd \winof\install\r
75         addcert\r
76 \r
77 To support test signed drivers, you may need to execute the following\r
78 command across the cluster.\r
79 \r
80         clusrun bcdedit -set testsigning on\r
81         clusrun shutdown /r\r
82 \r
83 \r
84 5. Sign the drivers.\r
85 \r
86 Run \winof\install\signall to create driver catalog files and sign\r
87 all drivers, libraries, and executables that were deployed to the\r
88 head node.\r
89 \r
90         cd \winof\install\r
91         signall\r
92 \r
93 You can limit signing to a specific package by changing into that\r
94 package's directory and running signwo.bat.\r
95 \r
96 \r
97 6. Install the packages.\r
98 \r
99 You can install the packages by running dpinst in each package.  Packages\r
100 should be installed in the following order, depending on your HCA type:\r
101 \r
102         mlx4_bus -> mlx4_hca -> ipoib\r
103         mthca -> ipoib\r
104 \r
105 Note: The HCA drivers automatically install the ibbus, winverbs, and\r
106 winmad packages.  Separate installations of those packages are not\r
107 necessary.  The following provides an installation example:\r
108 \r
109         clusrun \\hpc-head\c$\winof\install\mlx4_bus\dpinst -f -q -c\r
110         clusrun \\hpc-head\c$\winof\install\mlx4_hca\dpinst -f -q -c\r
111         clusrun \\hpc-head\c$\winof\install\ipoib\dpinst -f -q -c\r