Changes between Version 1 and Version 2 of PlasticSlices/Tools
- Timestamp:
- 08/02/11 16:16:32 (13 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
PlasticSlices/Tools
v1 v2 5 5 Many of the things we did here were to simplify the task of running ten slices simultaneously, but many of them are useful even if you're only running one slice. 6 6 7 ''FIXME: Much of this page is still under construction.''8 9 7 = rspecs = 10 8 11 For each slice, we kept a directory of rspecs for the slice in a Subversion repository. The MyPLC rspecs were the same for each slice, so we actually stored them in a 'misc' directory and then created symlinks pointing to them in the per-slice directories. The OpenFlow rspecs were different for each slice -- very similar to each other, but e.g. the IP subnet, the URL of the controller, etc, were different.12 13 A copy of the plastic-101 and plastic-102 directories are here. (''FIXME: Figure out the best way to put them here. GENI wiki SVN? Need to strip out passwords, so we can't have them actually live here, this is just a snapshot. Sub-pages?'')9 For each slice, we kept a directory of rspecs for the slice in a Subversion repository. The MyPLC rspecs were the same for each slice, so we actually stored them in a 'misc' directory and then created symlinks pointing to them in the per-slice directories. The !OpenFlow rspecs were different for each slice -- very similar to each other, but e.g. the IP subnet, the URL of the controller, etc, were different. 10 11 A copy of the rspec directories (not the original repo, which was internal to BBN) is [source:trunk/wikifiles/plastic-slices/rspecs here]. 14 12 15 13 We could then use these directories as input to omni commands to operate on "all the slivers in a slice", conceptually, e.g. with … … 77 75 Once we had our slivers, it was handy to have a way to run commands on all of the compute resources in parallel, or copy files to or from all of them. We did that by creating a file for each slice with the logins for the slivers in that slice, which we'd then feed as input to rsync or shmux. 78 76 77 A copy of the directory of the logins files is [source:trunk/wikifiles/plastic-slices/logins here]. 78 79 79 == Specify which logins to use == 80 80 … … 165 165 }}} 166 166 167 (A copy of the directory of the dotfiles we used is [source:trunk/wikifiles/plastic-slices/dotfiles here].) 168 167 169 We also used this to copy files back from each login, such as to pull down the screen log from each login: 168 170 … … 173 175 = Running experiments = 174 176 175 As of Baseline 5, we used two layers of 'screen' processes to run the experiments. First, we ran screen on a local machine for each slice, with a virtual terminal for each login . We had a .screenrc file for each slice to automate this. (''FIXME: Include or link to these here.'')177 As of Baseline 5, we used two layers of 'screen' processes to run the experiments. First, we ran screen on a local machine for each slice, with a virtual terminal for each login; we used a .screenrc file for each slice to automate this. (A copy of the directory of the screenrc files is [source:trunk/wikifiles/plastic-slices/screenrc here].) 176 178 177 179 Then, on each login, we ran 'screen' with a single virtual terminal, so that (a) if the connection from the local system to the remote login got disconnected, we could log back in and reconnect to the screen process; (b) we could use screen's logging functionality to capture all the output from the experiment (and retrieve it later).