- Mar 18, 2005
-
-
Mike Hibler authored
Put iface arg first so that remaining arguments can be multiple mac addrs. Send one packet per mac addr.
-
Mike Hibler authored
-
Mike Hibler authored
-
Mike Hibler authored
To enable WhOL, you need to add outlets table entries for nodes which are whol-enabled. The power_id encodes the interface on boss to use: +---------+-----------+--------+----------------+ | node_id | power_id | outlet | last_power | +---------+-----------+--------+----------------+ | pcwf6 | whol-fxp0 | 0 | 20050318152119 | +---------+-----------+--------+----------------+ You then need interfaces and wires table entries for that interface on boss, so that snmpit works with syntax like "boss:1". This is probably not really needed once the VLAN has been setup. You need a magic VLAN called "WhOL", I used VLAN 999. Add it to all the switches and trunks. Put boss's port in it. It will remain there, enabled, forever. In the interfaces table entry for every interface that supports WhOL, you need to set the 'whol' field to 1.
-
Mike Hibler authored
Used in the power_whol module.
-
Russ Fish authored
-
Russ Fish authored
-
David Johnson authored
-
- Mar 17, 2005
-
-
Mike Hibler authored
Untested, but compiles!
-
Mike Hibler authored
Put back the changes I removed in my last commit. You would think I would know how to read diff output by now...
-
Mike Hibler authored
I did the "back half" support. If the 'mustwipe' field is non-zero in the reserved table entry for a node then its disk must be zeroed. How the zeroing is done, depends on the value of the mustwipe field. Right now, '1' means pass the '-z' option to frisbee to have it zero all non-allocated blocks. The value '2' is reserved for enabling a "full wipe" pass of the disk before running frisbee, which Keith Sklower (DETER) wanted to be able to do. Note that 1 and 2 are effectively the same, if we are loading a full-disk image; i.e. all non-allocated blocks from the new image are zeroed. But if the disk were being loaded with a single-partition image, then "frisbee -z" would only wipe unused blocks in that partition. The reload_daemon has been modified to extract the mustwipe info and invoke os_load accordingly. os_load now takes a "-z <type>" option to enable the zeroing by setting a value in the current_reloads table. tmcd will read and return that info to its caller in the "loadinfo" command. Finally, the rc.frisbee script that runs in the frisbee MFS extracts the loadinfo info and crafts the frisbee startup command. What still needs to be done is the "front end," how the user specifies the value and how it winds up in the DB reserved table. This will probably involve addition of state to the experiments table as this will likely be a per-experiment setting.
-
- Mar 16, 2005
-
-
Timothy Stack authored
-
Mike Hibler authored
Unified the 'dot' handling (status printing) of frisbee and imagezip. They now both report the number of chunks remaining along with the dots. Also put out a periodic splat for every GB of uncompressed data we write. This is useful when you are zero-filling, since otherwise it appears that frisbee has hung when it is really just zeroing the last unused 100GB of your disk.
-
- Mar 15, 2005
-
-
Mike Hibler authored
-
Mike Hibler authored
-
Mike Hibler authored
vs. not on the control net.
-
Mike Hibler authored
vs. not on the control net. The "media" command wasn't implemented in the Linux dhclient-script anyway.
-
Mike Hibler authored
Read characters from the device one at a time. GaTech has one of these hooked to the built-in PC serial port, and when reading 1024 chars at a time, it will not read complete lines. This would confuse our primitive expect-like logic.
-
- Mar 14, 2005
-
-
Mike Hibler authored
any partition or slice.
-
Mike Hibler authored
-
- Mar 11, 2005
-
-
Robert Ricci authored
Sends wake-on-lan packets to a speicifc MAC address in order to trigger our custom whack-on-lan hardware.
-
Leigh B. Stoller authored
display it (and a link).
-
Leigh B. Stoller authored
hopefully understand as First and Last name!
-
- Mar 10, 2005
-
-
Robert Ricci authored
The new -b option gives you a string with the current status of a port (ie. if it's enabled, and which VLAN it's in). After getting this string, you can then modify the port (change its VLAN, enable it, whatever). Then, when you're done, you can pass the string -b gave you back into snmpit with -B, and it should restore the original status of the port. Make sure to put the status string in single quotes when you pass it on the command line. It contains some stuff that the shell won't like, such as semicolons.
-
- Mar 09, 2005
-
-
Timothy Stack authored
out.
-
Timothy Stack authored
-
Timothy Stack authored
event.
-
Timothy Stack authored
to digest-slothd
-
Timothy Stack authored
-
Timothy Stack authored
-
- Mar 08, 2005
-
-
Leigh B. Stoller authored
released. Not sure if the other keys need to be done, but does not appear to matter.
-
Mike Hibler authored
-
Mike Hibler authored
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
This is a local hack for now.
-
Timothy Stack authored
Fix a couple of things I missed in my last checkin. * event/program-agent/program-agent.c: Setup of the user environment variables wasn't ordered correctly. * event/sched/event-sched.c, event/sched/rpc.h, event/sched/rpc.cc: Setup the expected user environment variables, just like in program-agent. * event/sched/simulator-agent.cc: Rename the old feedback data so we don't lose it in case the vnode remapping modify fails. * xmlrpc/emulabserver.py.in: Add virt_user_environment table data to the result of the experiment.metadata method, so the event-scheduler can get it.
-
Leigh B. Stoller authored
-
Timothy Stack authored
-
Timothy Stack authored
again...
-
- Mar 07, 2005
-
-
Timothy Stack authored
Checkin some changes related to experiment automation and vnode feedback: * configure, configure.in: Add sensors/canaryd/feedbacklogs template. * db/libdb.pm.in, db/xmlconvert.in: Add "virt_user_environment" table that holds environment variable names and values. * event/lib/event.c: Allocate memory of the right size for event_notifications. * event/program-agent/GNUmakefile.in: Add version.c file and add install targets for the man page. * event/program-agent/program-agent.8: Man page describing the program-agent daemon. * event/program-agent/program-agent.c: Add a bunch of convenience features: let the user specify the working directory for commands; save output to separate files on every invocation of an agent; let the user specify a timeout for a command; make the set of environment variables sane and add vars given in the NS file in the opt array; a "status" file containing process information is written out when children are collected. Internal changes: child processes are collected immediately, instead of waiting for the next START event, so we can send back COMPLETE events; the daemon now runs with a real-time priority, to increase the chances of receiving events. * event/proxy/evproxy.c: Made it bidirectional so the program-agent's COMPLETE events make it back to the scheduler. * event/sched/error-record.c: Change the default log directory. * event/sched/event-sched.h, event/sched/event-sched.c: Setup an environment similar to a program-agent to run the user's log digester. * event/sched/node-agent.cc: Add a handler for the SNAPSHOT event that runs create_image for the node. * event/sched/simulator-agent.h, event/sched/simulator-agent.cc: Let the user specify a "DIGESTER" script that digests the log files into a summary of the results. Add event handler for remapping a vnode experiment. * event/sched/timeline-agent.c: Accept the RUN event as well as the START event. * os/GNUmakefile.in: Install the install-tarfile.1 man page. * os/install-tarfile: Automatically chown/chgrp any files that do not have valid user or group IDs, the new owner will be the user that swapped in the experiment. Include the install directory in the DB file. Add a "list" mode that just dumps what files have been installed and where. Add a "force" option so the user can forcefully install the file, even though the DB says its already there. * os/install-tarfile.1: Man page describing the install-tarfile tool. * os/syncd/GNUmakefile.in: Install man pages on ops. * sensors/canaryd/GNUmakefile.in: Link canaryd statically and install "feedbacklogs" tool. * sensors/canaryd/canaryd.c: Dump dummynet pipe data. * sensors/canaryd/canarydEvents.c: Log errors. * sensors/canaryd/feedbacklogs.in: Tool used to generate feedback data from canaryd log files. * sensors/slothd/GNUmakefile.in: Install digest-slothd on ops. * sensors/slothd/digest-slothd: Fix some bugs and write out an "alert" file with all the nodes/links that were overloaded. * tbsetup/os_load.in, tbsetup/libosload.pm.in: Add "waitmode" argument that lets you specify that you want to wait for the disk to finish loading and/or wait for the node to come back up in the new OS. * tbsetup/power.in: Remove debugging printf. * tbsetup/ns2ir/node.tcl, tbsetup/ns2ir/program.tcl, tbsetup/ns2ir/sequence.tcl, tbsetup/ns2ir/sim.tcl.in: Fix some quoting problems with event-sequences. Add -expected-exit-code and -tag options to the "$program run" event. Add -digester to the "$ns report" event that lets the user specify a program to run to digest the log files. * tbsetup/ns2ir/tb_compat.tcl.in: Change the initial scaling factor for feedback nodes to 1%, instead of 100%. * tmcd/tmcd.c, tmcd/common/libtmcc.pm: Add "userenv" command that returns the values in "virt_user_environment". Return new program agent fields: dir, timeout, and expected_exit_code. * tmcd/common/GNUmakefile.in: Install rc.canaryd. * tmcd/common/bootvnodes: Add hack to boost the program-agents to a real-time priority, they can't do it from inside the jail. * tmcd/common/rc.canaryd: Rc script for canaryd. * tmcd/common/watchdog: Don't fail outright if there is a bad line in the battery.log * tmcd/common/rc.progagent: Append "userenv" data to the program-agent config file. * utils/GNUmakefile.in: Install loghole and its man page on ops. * utils/loghole.1: Document "clean" command and the change in loghole directories. * utils/loghole.in: Add "clean" command and parallelization. * xmlrpc/emulabserver.py.in: Add "virt_user_environment" table. Order the eventlist by "idx" and time, needed for sequences. And removed unnecessary nologin checks.
-