| 30 | {{{ |
| 31 | # iRODS personal configuration file. |
| 32 | # |
| 33 | # This file was automatically created during iRODS installation. |
| 34 | # Created Thu Feb 16 14:06:27 2012 |
| 35 | # |
| 36 | # iRODS server host name: |
| 37 | irodsHost 'emmy9.casa.umass.edu' |
| 38 | # iRODS server port number: |
| 39 | irodsPort 1247 |
| 40 | |
| 41 | # Default storage resource name: |
| 42 | irodsDefResource 'iRODSUmass1' |
| 43 | # Home directory in iRODS: |
| 44 | irodsHome '/geniRenci/home/rods' |
| 45 | # Current directory in iRODS: |
| 46 | irodsCwd '/geniRenci/home/rods' |
| 47 | # Account name: |
| 48 | irodsUserName 'gimi01' |
| 49 | # Zone: |
| 50 | irodsZone 'geniRenci' |
| 51 | }}} |
| 52 | * Register with iRODS server by issuing the following command (more details on iRODS will be given shortly): |
| 53 | {{{ |
| 54 | iinit |
| 55 | }}} |
| 56 | * You will be prompted for a password. Please type in the password you were provided with on the paper handout!! |
| 57 | * The image below shows the topology and the interfaces and the routing that has been set up for the measurement: |
| 58 | [[Image(wiki:GIMIv1.0Tutorial:Slide12.png)]] |
| 59 | |
| 60 | == Part 1: OMF/OML on ExoGENI == |
| 61 | The goal of this part of the tutorial is to instrument the topology that has been created by the tutorial participants in the preceding ExoGENI tutorial. Perform Iperf and nmetrics measurement on top of that instrumented topology and analyze data from that measurement. |
| 62 | |
| 63 | |
| 64 | |
| 65 | * Each node uses the same image but runs a slightly post boot script. The post boot scripts (specified in Flukes) are shown below. |
| 66 | * Node A |
| 67 | {{{ |
| 68 | echo nodeA > /etc/hostname |
| 69 | hostname -F /etc/hostname |
| 70 | |
| 71 | echo 192.168.1.10 nodeA-L1 nodeA >> /etc/hosts |
| 72 | echo 192.168.3.10 nodeA-L3 >> /etc/hosts |
| 73 | |
| 74 | echo 192.168.1.11 nodeB-L1 nodeB >> /etc/hosts |
| 75 | echo 192.168.2.11 nodeB-L2 >> /etc/hosts |
| 76 | |
| 77 | echo 192.168.2.12 nodeC-L2 nodeC >> /etc/hosts |
| 78 | echo 192.168.3.12 nodeC-L3 >> /etc/hosts |
| 79 | |
| 80 | route add -net 192.168.2.0 netmask 255.255.255.0 gw 192.168.1.11 |
| 81 | |
| 82 | curl http://emmy8.casa.umass.edu/omf-resctl.yaml -o |
| 83 | /etc/omf-resctl-5.4/omf-resctl.yaml |
| 84 | perl -i.bak -pe "s/\:name\:/\:name\: \'nodeA\' /g" |
| 85 | /etc/omf-resctl-5.4/omf-resctl.yaml |
| 86 | perl -i.bak -pe "s/\:slice\:/\:slice\: dilip-gec14/g" |
| 87 | /etc/omf-resctl-5.4/omf-resctl.yaml |
| 88 | /etc/init.d/omf-resctl-5.4 restart |
| 89 | }}} |
| 90 | * Node B |
| 91 | {{{ |
| 92 | echo nodeB > /etc/hostname |
| 93 | hostname -F /etc/hostname |
| 94 | |
| 95 | |
| 96 | echo 192.168.1.10 nodeA-L1 nodeA >> /etc/hosts |
| 97 | echo 192.168.3.10 nodeA-L3 >> /etc/hosts |
| 98 | |
| 99 | echo 192.168.1.11 nodeB-L1 nodeB >> /etc/hosts |
| 100 | echo 192.168.2.11 nodeB-L2 >> /etc/hosts |
| 101 | |
| 102 | echo 192.168.2.12 nodeC-L2 nodeC >> /etc/hosts |
| 103 | echo 192.168.3.12 nodeC-L3 >> /etc/hosts |
| 104 | |
| 105 | echo 1 > /proc/sys/net/ipv4/ip_forward |
| 106 | |
| 107 | curl http://emmy8.casa.umass.edu/omf-resctl.yaml -o |
| 108 | /etc/omf-resctl-5.4/omf-resctl.yaml |
| 109 | perl -i.bak -pe "s/\:name\:/\:name\: \'nodeB\' /g" |
| 110 | /etc/omf-resctl-5.4/omf-resctl.yaml |
| 111 | perl -i.bak -pe "s/\:slice\:/\:slice\: dilip-gec14/g" |
| 112 | /etc/omf-resctl-5.4/omf-resctl.yaml |
| 113 | /etc/init.d/omf-resctl-5.4 restart |
| 114 | }}} |
| 115 | * Node C |
| 116 | {{{ |
| 117 | echo nodeC > /etc/hostname |
| 118 | hostname -F /etc/hostname |
| 119 | |
| 120 | echo 192.168.1.10 nodeA-L1 nodeA >> /etc/hosts |
| 121 | echo 192.168.3.10 nodeA-L3 >> /etc/hosts |
| 122 | |
| 123 | echo 192.168.1.11 nodeB-L1 nodeB >> /etc/hosts |
| 124 | echo 192.168.2.11 nodeB-L2 >> /etc/hosts |
| 125 | |
| 126 | echo 192.168.2.12 nodeC-L2 nodeC >> /etc/hosts |
| 127 | echo 192.168.3.12 nodeC-L3 >> /etc/hosts |
| 128 | |
| 129 | route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.2.11 |
| 130 | |
| 131 | curl http://emmy8.casa.umass.edu/omf-resctl.yaml -o |
| 132 | /etc/omf-resctl-5.4/omf-resctl.yaml |
| 133 | perl -i.bak -pe "s/\:name\:/\:name\: \'nodeC\' /g" |
| 134 | /etc/omf-resctl-5.4/omf-resctl.yaml |
| 135 | perl -i.bak -pe "s/\:slice\:/\:slice\: dilip-gec14/g" |
| 136 | /etc/omf-resctl-5.4/omf-resctl.yaml |
| 137 | /etc/init.d/omf-resctl-5.4 restart |
| 138 | }}} |
| 139 | |
| 140 | * The images running on the ExoGENI nodes include the following software: |
| 141 | * OMF (AM, RC, EC) |
| 142 | * OML |
| 143 | * OMLified Iperf, nmetrics |
| 144 | * iRODS client |
| 145 | |
| 146 | * For those who would like to use this image as a basis for their own experiment on ExoGENI it can be found here: [http://emmy9.casa.umass.edu/GEC14-GIMI-Tutorial/ http://emmy9.casa.umass.edu/GEC14-GIMI-Tutorial/] |
| 147 | |
| 148 | * '''Note''' |
| 149 | * The OMF experiment controller (EC) that controls the experiment is based on unique host name and experiment name |
| 150 | * After initial boot up ExoGENI nodes host names are always initially set to "debian" |
| 151 | * The node names will be automatically set to the correct names by a post boot script (defined in Flukes). The code snippet below shows the section of the post boot script that performs this step (for the case of node A) : |
| 152 | {{{ |
| 153 | echo nodeA > /etc/hostname |
| 154 | hostname -F /etc/hostname |
| 155 | }}} |
| 156 | * The experiment name has to be set to the unique slice name of your ExoGENI request |
| 157 | |
| 158 | * In the following, we describe the steps to verify the initial topology setup on ExoGENI: |
| 159 | * Change the post boot script option to add ''slice name'' as the ''experiment name''. Therefore change the existing experiment name "gec14-gimi01" in line five to the experiment that includes your account name. E.g., if your account name is "gimi05" the experiment name has to be changed to "gec14-gimi05"!! |
| 160 | {{{ |
| 161 | curl http://emmy8.casa.umass.edu/omf-resctl.yaml -o |
| 162 | /etc/omf-resctl-5.4/omf-resctl.yaml |
| 163 | perl -i.bak -pe "s/\:name\:/\:name\: \'nodeA\' /g" |
| 164 | /etc/omf-resctl-5.4/omf-resctl.yaml |
| 165 | perl -i.bak -pe "s/\:slice\:/\:slice\: gec14-gimi01/g" |
| 166 | /etc/omf-resctl-5.4/omf-resctl.yaml |
| 167 | /etc/init.d/omf-resctl-5.4 restart |
| 168 | }}} |
| 169 | * Request the ExoGENI slice using Flukes |
| 170 | |
| 171 | |
| 172 | == Part 2: iRODS - GIMI's Measurement Repository == |
| 173 | In GIMI, [https://www.irods.org/ iRODS] is used as the repository for measurement data. At the moment our iRODS data system consist of three servers (RENCI, NICTA, and UMass) and a metadata catalog (located at RENCI). |
| 174 | |
| 175 | We will use part 2 of this tutorial to make the participants more familiar with iRODS and how we use it in GIMI. |
| 176 | |
| 177 | * After successful completion of part 1 of the tutorial the measurement data from the experiment has been stored in iRODS. We will now look into two options on how this data can be handled. |
| 178 | |
| 179 | 1. iRODS command line tools in the user work space: |
| 180 | * The GENI [http://groups.geni.net/geni/wiki/GEC14TutorialVMInstructions User Workspace] comes already with the iRODS command line tools installed. |
| 181 | * If you have not done so far use [https://www.irods.org/index.php/iinit iinit] to create a file that contains your iRODS password in a scrambled form. This will then be used automatically by the [https://www.irods.org/index.php/icommands icommands] for authentication with the server. |
| 182 | {{{ |
| 183 | iinit |
| 184 | }}} |
| 185 | * The iRODS client uses a configuration file (~/.irods/.irodsEnv) that sets certain parameter for the icommands. Here is and example: |
52 | | * Register with iRODS server by issuing the following command (more details on iRODS will be given shortly): |
53 | | {{{ |
54 | | iinit |
55 | | }}} |
56 | | * You will be prompted for a password. Please type in the password you were provided with on the paper handout!! |
57 | | * The image below shows the topology and the interfaces and the routing that has been set up for the measurement: |
58 | | [[Image(wiki:GIMIv1.0Tutorial:Slide12.png)]] |
59 | | |
60 | | == Part 1: OMF/OML on ExoGENI == |
61 | | The goal of this part of the tutorial is to instrument the topology that has been created by the tutorial participants in the preceding ExoGENI tutorial. Perform Iperf and nmetrics measurement on top of that instrumented topology and analyze data from that measurement. |
62 | | |
63 | | |
64 | | |
65 | | * Each node uses the same image but runs a slightly post boot script. The post boot scripts (specified in Flukes) are shown below. |
66 | | * Node A |
67 | | {{{ |
68 | | echo nodeA > /etc/hostname |
69 | | hostname -F /etc/hostname |
70 | | |
71 | | echo 192.168.1.10 nodeA-L1 nodeA >> /etc/hosts |
72 | | echo 192.168.3.10 nodeA-L3 >> /etc/hosts |
73 | | |
74 | | echo 192.168.1.11 nodeB-L1 nodeB >> /etc/hosts |
75 | | echo 192.168.2.11 nodeB-L2 >> /etc/hosts |
76 | | |
77 | | echo 192.168.2.12 nodeC-L2 nodeC >> /etc/hosts |
78 | | echo 192.168.3.12 nodeC-L3 >> /etc/hosts |
79 | | |
80 | | route add -net 192.168.2.0 netmask 255.255.255.0 gw 192.168.1.11 |
81 | | |
82 | | curl http://emmy8.casa.umass.edu/omf-resctl.yaml -o |
83 | | /etc/omf-resctl-5.4/omf-resctl.yaml |
84 | | perl -i.bak -pe "s/\:name\:/\:name\: \'nodeA\' /g" |
85 | | /etc/omf-resctl-5.4/omf-resctl.yaml |
86 | | perl -i.bak -pe "s/\:slice\:/\:slice\: dilip-gec14/g" |
87 | | /etc/omf-resctl-5.4/omf-resctl.yaml |
88 | | /etc/init.d/omf-resctl-5.4 restart |
89 | | }}} |
90 | | * Node B |
91 | | {{{ |
92 | | echo nodeB > /etc/hostname |
93 | | hostname -F /etc/hostname |
94 | | |
95 | | |
96 | | echo 192.168.1.10 nodeA-L1 nodeA >> /etc/hosts |
97 | | echo 192.168.3.10 nodeA-L3 >> /etc/hosts |
98 | | |
99 | | echo 192.168.1.11 nodeB-L1 nodeB >> /etc/hosts |
100 | | echo 192.168.2.11 nodeB-L2 >> /etc/hosts |
101 | | |
102 | | echo 192.168.2.12 nodeC-L2 nodeC >> /etc/hosts |
103 | | echo 192.168.3.12 nodeC-L3 >> /etc/hosts |
104 | | |
105 | | echo 1 > /proc/sys/net/ipv4/ip_forward |
106 | | |
107 | | curl http://emmy8.casa.umass.edu/omf-resctl.yaml -o |
108 | | /etc/omf-resctl-5.4/omf-resctl.yaml |
109 | | perl -i.bak -pe "s/\:name\:/\:name\: \'nodeB\' /g" |
110 | | /etc/omf-resctl-5.4/omf-resctl.yaml |
111 | | perl -i.bak -pe "s/\:slice\:/\:slice\: dilip-gec14/g" |
112 | | /etc/omf-resctl-5.4/omf-resctl.yaml |
113 | | /etc/init.d/omf-resctl-5.4 restart |
114 | | }}} |
115 | | * Node C |
116 | | {{{ |
117 | | echo nodeC > /etc/hostname |
118 | | hostname -F /etc/hostname |
119 | | |
120 | | echo 192.168.1.10 nodeA-L1 nodeA >> /etc/hosts |
121 | | echo 192.168.3.10 nodeA-L3 >> /etc/hosts |
122 | | |
123 | | echo 192.168.1.11 nodeB-L1 nodeB >> /etc/hosts |
124 | | echo 192.168.2.11 nodeB-L2 >> /etc/hosts |
125 | | |
126 | | echo 192.168.2.12 nodeC-L2 nodeC >> /etc/hosts |
127 | | echo 192.168.3.12 nodeC-L3 >> /etc/hosts |
128 | | |
129 | | route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.2.11 |
130 | | |
131 | | curl http://emmy8.casa.umass.edu/omf-resctl.yaml -o |
132 | | /etc/omf-resctl-5.4/omf-resctl.yaml |
133 | | perl -i.bak -pe "s/\:name\:/\:name\: \'nodeC\' /g" |
134 | | /etc/omf-resctl-5.4/omf-resctl.yaml |
135 | | perl -i.bak -pe "s/\:slice\:/\:slice\: dilip-gec14/g" |
136 | | /etc/omf-resctl-5.4/omf-resctl.yaml |
137 | | /etc/init.d/omf-resctl-5.4 restart |
138 | | }}} |
139 | | |
140 | | * The images running on the ExoGENI nodes include the following software: |
141 | | * OMF (AM, RC, EC) |
142 | | * OML |
143 | | * OMLified Iperf, nmetrics |
144 | | * iRODS client |
145 | | |
146 | | * For those who would like to use this image as a basis for their own experiment on ExoGENI it can be found here: [http://emmy9.casa.umass.edu/GEC14-GIMI-Tutorial/ http://emmy9.casa.umass.edu/GEC14-GIMI-Tutorial/] |
147 | | |
148 | | * '''Note''' |
149 | | * The OMF experiment controller (EC) that controls the experiment is based on unique host name and experiment name |
150 | | * After initial boot up ExoGENI nodes host names are always initially set to "debian" |
151 | | * The node names will be automatically set to the correct names by a post boot script (defined in Flukes). The code snippet below shows the section of the post boot script that performs this step (for the case of node A) : |
152 | | {{{ |
153 | | echo nodeA > /etc/hostname |
154 | | hostname -F /etc/hostname |
155 | | }}} |
156 | | * The experiment name has to be set to the unique slice name of your ExoGENI request |
157 | | |
158 | | * In the following, we describe the steps to verify the initial topology setup on ExoGENI: |
159 | | * Change the post boot script option to add ''slice name'' as the ''experiment name''. Therefore change the existing experiment name "gec14-gimi01" in line five to the experiment that includes your account name. E.g., if your account name is "gimi05" the experiment name has to be changed to "gec14-gimi05"!! |
160 | | {{{ |
161 | | curl http://emmy8.casa.umass.edu/omf-resctl.yaml -o |
162 | | /etc/omf-resctl-5.4/omf-resctl.yaml |
163 | | perl -i.bak -pe "s/\:name\:/\:name\: \'nodeA\' /g" |
164 | | /etc/omf-resctl-5.4/omf-resctl.yaml |
165 | | perl -i.bak -pe "s/\:slice\:/\:slice\: gec14-gimi01/g" |
166 | | /etc/omf-resctl-5.4/omf-resctl.yaml |
167 | | /etc/init.d/omf-resctl-5.4 restart |
168 | | }}} |
169 | | * Request the ExoGENI slice using Flukes |
170 | | |
171 | | |
172 | | == Part 2: iRODS - GIMI's Measurement Repository == |
173 | | In GIMI, [https://www.irods.org/ iRODS] is used as the repository for measurement data. At the moment our iRODS data system consist of three servers (RENCI, NICTA, and UMass) and a metadata catalog (located at RENCI). |
174 | | |
175 | | We will use part 2 of this tutorial to make the participants more familiar with iRODS and how we use it in GIMI. |
176 | | |
177 | | * After successful completion of part 1 of the tutorial the measurement data from the experiment has been stored in iRODS. We will now look into two options on how this data can be handled. |
178 | | |
179 | | 1. iRODS command line tools in the user work space: |
180 | | * The GENI [http://groups.geni.net/geni/wiki/GEC14TutorialVMInstructions User Workspace] comes already with the iRODS command line tools installed. |
181 | | * If you have not done so far use [https://www.irods.org/index.php/iinit iinit] to create a file that contains your iRODS password in a scrambled form. This will then be used automatically by the [https://www.irods.org/index.php/icommands icommands] for authentication with the server. |
182 | | {{{ |
183 | | iinit |
184 | | }}} |
185 | | * The iRODS client uses a configuration file (~/.irods/.irodsEnv) that sets certain parameter for the icommands. Here is and example: |
186 | | {{{ |
187 | | # iRODS personal configuration file. |
188 | | # |
189 | | # This file was automatically created during iRODS installation. |
190 | | # Created Thu Feb 16 14:06:27 2012 |
191 | | # |
192 | | # iRODS server host name: |
193 | | irodsHost 'emmy8.casa.umass.edu' |
194 | | # iRODS server port number: |
195 | | irodsPort 1247 |
196 | | |
197 | | # Default storage resource name: |
198 | | irodsDefResource 'iRODSUmass' |
199 | | # Home directory in iRODS: |
200 | | irodsHome '/geniRenci/home/rods' |
201 | | # Current directory in iRODS: |
202 | | irodsCwd '/geniRenci/home/rods' |
203 | | # Account name: |
204 | | irodsUserName 'gimi01' |
205 | | # Zone: |
206 | | irodsZone 'geniRenci' |
207 | | }}} |