The script scripts/recovery.py
can be used to run recoveries for testing. Diego wrote the script and is most expert on it, but here are some simple instructions:
#!/bin/sh # # This script sets up ssh master mode for all of the machines # in the RAMCloud cluster. if [ $(hostname) == "rcmaster.scs.stanford.edu" ]; then for host in rc{01..36}; do if [ -z "$(pgrep -u $USER -fx "ssh -fMN $host true")" ]; then ssh -fMN $host true 2>/dev/null & fi done fi |
scripts/recovery.py
.recovery.py
to change the arguments to the recover
method. For example, if you replace the last line of the script (which is currently pprint.pprint(recover()
with the following:
args = {} args['numBackups'] = 12 args['numPartitions'] = 2 args['objectSize'] = 1024 args['disk'] = 1 args['numObjects'] = 626012 * 600 // 640 args['oldMasterArgs'] = '-m %d' % (800 * args['numPartitions']) args['newMasterArgs'] = '-m 16000' args['replicas'] = 3 pprint.pprint(recover(**args)) |
recovery/latest
. If you run more recoveries, recovery/latest
always refers to the most recent recovery, but log files from old recoveries are kept in other subdirectories of recovery
.scripts/metrics.py
, which will examine the logs in recovery/latest
and produce summary information describing the recovery.