Skip to content
Snippets Groups Projects
  1. Nov 05, 2004
  2. Nov 01, 2004
  3. Oct 25, 2004
    • Timothy Stack's avatar
      d439b3a1
    • Timothy Stack's avatar
      · 636aaa2b
      Timothy Stack authored
      Changes to the "auto nice daemon" so it can work better in Emulab.
      
        * sensors/and/GNUmakefile.in: Emulab-specific make file.  Updated to
          work with a build tree separate from the source and gave it a new
          version number. Files are installed under "/usr/testbed/" on ops.
      
        * sensors/and/Makefile: Add a warning that this is not the real
          makefile for us.
      
        * sensors/and/and-OpenBSD.c: Update to work with FreeBSD and add
          support for reporting process start time.
      
        * sensors/and/and-emulab.conf.in: Emulab-specific configuration,
          similar to the standard one, except it sends mail to tbops when it
          does something.
      
        * sensors/and/and-emulab.priorities: Emulab-specific priorities
          database. It excludes daemon pseudo users and the event-scheduler,
          otherwise, niceness levels apply to everyone.
      
        * sensors/and/and.8.man: Add the pid file to the 'FILES' section.
      
        * sensors/and/and.c: Added support for running a command when a
          niceness level change occurs.  Also writes out the pid file when
          not running in test mode.
      
        * sensors/and/and.conf.5.man: Add docs for the level commands.
      
        * sensors/and/and.h: Add start time and child CPU time to the
          and_procent struct.
      
        * sensors/and/and.startup: Changed to use "test" instead of bash
          syntax and the pid file is now used instead of killall.  Also
          added a "reconfig" option that HUPs the daemon.
      636aaa2b
    • Timothy Stack's avatar
      8f1a8857
  4. Oct 08, 2004
  5. Oct 05, 2004
  6. Sep 01, 2004
  7. Jul 27, 2004
    • Timothy Stack's avatar
      Many tweaks to the feedback stuff and more comments. Update · ead90a69
      Timothy Stack authored
      webfeedback to talk to the newer version of canaryd.  Add feedback
      "estimate" stuff so that if we have no data (because of an overloaded
      node) to work with, we can make some sort of "reasonable" guesstimate
      on every iteration.
      ead90a69
    • Timothy Stack's avatar
      Updated canaryd, ended up starting fresh and pulling things in, rather · 62b5e3a8
      Timothy Stack authored
      than jamming more stuff into the old one.  Most of the code came from
      the previous version of canaryd, the cpu broker (process accounting),
      and the janosvm (network interface accounting).  Its missing some
      features of the old one, but those can be incorporated without too
      much trouble.
      
      Changes:
      
        Designed to permanently run on the pnodes:  it waits for START events
          before it begins recording.  However, I haven't done the work
          necessary to have it always startup on the pnodes.
      
        No more exec'ing: process stuff is taken from "/proc", and network
          interface stats are pulled from getifaddrs(3).
      
        Fixed some minor bugs: A typo caused the real-time priority to not
          be set, use setitimer instead of sleep to get more accurate
          spacing between samples.
      62b5e3a8
  8. Jul 15, 2004
    • Kirk Webb's avatar
      · 35d31c2f
      Kirk Webb authored
      Removed a couple of unneeded lines.
      35d31c2f
    • Kirk Webb's avatar
      · dd7d003d
      Kirk Webb authored
      Updated the sensors directory Makefile to use the very nice infrastructure
      for subdirs that Eric pointed me to.  Also, canaryd will no longer
      be built if the arch isn't FreeBSD.
      dd7d003d
  9. Jul 14, 2004
    • Mike Hibler's avatar
      b6690372
    • Kirk Webb's avatar
      · c0ecee80
      Kirk Webb authored
      Split off the feedback metric gathering, alerting, and reporting code from
      slothd and slammed it into a new daemon: canaryd.  There is currently quite
      a bit of code duplication between slothd and canaryd.  Sometime in the future
      I need to go back and extract the common portions into a module.
      c0ecee80
  10. Jul 12, 2004
  11. Jul 01, 2004
  12. Jun 24, 2004
    • Mike Hibler's avatar
      Improve the client-side install. With these changes, it should now be · 976133e4
      Mike Hibler authored
      possible to:
      
      	gmake client
      	sudo gmake client-install
      
      on a FBSD4, FBSD5, RHL7.3, and RHL9.0 client node.
      
      There are still some dependencies that are not explicit and which would
      prevent a build/install from working on a "clean" OS.  Two that I know of are:
      you must install our version of the elvin libraries and you must install boost.
      976133e4
    • Mike Hibler's avatar
      Minor lint for GCC 3.3 · a36ccc7b
      Mike Hibler authored
      (early stages of getting Emulab software to build under FreeBSD 5)
      a36ccc7b
  13. May 10, 2004
  14. Apr 26, 2004
    • Mike Hibler's avatar
      Cleanup Makefiles: · 297019fb
      Mike Hibler authored
      1. "make clean" will just remove stuff built in the process of a regular build
      2. "make distclean" will also clean out configure generated files.
      
      This is how it was always supposed to be, there was just some bitrot.
      297019fb
  15. Apr 20, 2004
    • Mike Hibler's avatar
      Improve the client-install. You can now do a "make client-install" from · 361ee691
      Mike Hibler authored
      the top level.  This will build all the necessary binaries and then install
      them.  This works on FBSD4 and RHL7.3.  It still doesn't work on FBSD5
      (newer compiler that no longer supports a style of use of _FUNCTION_ in the
      event lib) or RHL9 (event lib needs SSL lib which has a bad dependency
      on Kerberos).  Notes:
      
      - requires that elvin libraries be installed on nodes (they are) to build
        event agents, requires linuxthreads be installed on FBSD (it is now) to
        build imagezip (which is installed, but is not strictly necessary)
      
      - installed event-agents and other binaries are stripped
      
      - added a few missing files to the source tree for bsd (healthd.conf)
        and linux (healthd.conf, rc.local)
      
      - the only thing that doesn't get rebuilt in /usr/local/etc/emulab is
        healthd, I couldn't quickly find how it gets built
      
      - uses a scaled down version of libtb with no DB functions (since mysql
        isn't installed on nodes).  N.B. DO NOT DO A CLIENT INSTALL FROM YOUR
        REGULAR OBJ TREE OR ELSE YOU MAY WIND UP WITH A NEUTERED VERSION OF
        libtb.a!
      
      The build-as-well-as-install semantics are counter to the regular install
      targets, but this is what we gotta do for now.  Once the TB source builds
      under Linux and newer BSDs, we could undo this and just require that people
      do a regular "make" followed by "make client-install"  OTOH, there should
      be no reason to require installation of mysql and other server-side packages
      just to build clients (or make them sit through the compilation of assign),
      so maybe we will keep the client build special.
      361ee691
  16. Dec 23, 2003
  17. Oct 15, 2003
    • Mike Hibler's avatar
      Uniform syslog'ing. Change everything I could find to use a syslog facility · cc6d6fa7
      Mike Hibler authored
      as defined in the defs-* file (e.g. "TBLOGFACIL=local2").  The default is
      "local5" which is what we are setup to use so you shouldn't need to mess
      with your defs- file!
      
      perl scripts just get this value configured in when configure is run.
      C programs get the value in two ways.  For programs that are intimate with
      the testbed infrastructure, and include "config.h", they just get it from
      that file.  For programs that we sometimes use outside the Emulab build
      environment (e.g., frisbee, capture) and that don't include config.h,
      the value is set via a "-DLOG_TESTBED=..." in the GNUmakefile build line.
      If the value isn't set, it defaults to what it used to be (usually LOG_USER).
      
      Still to do: healthd, hmcd (whose build doesn't seem to be completely
      integrated) and plabdaemon.in (since its icky python :-)
      cc6d6fa7
  18. Aug 22, 2003
  19. Jul 31, 2003
    • Kirk Webb's avatar
      Minor changes: · 073c9473
      Kirk Webb authored
      1) Use libtb's reporting funcs rather than my own (the former are better)
      2) Produce more informational "malformed interface record" errors.
      073c9473
  20. Apr 28, 2003
  21. Apr 04, 2003
  22. Mar 21, 2003
    • Kirk Webb's avatar
      Well, here it is: The new slothd and sdcollectd stuff. · a337f7b9
      Kirk Webb authored
      Several things have changed; here is an outline:
      
       - "Thresholds" added to slothd
      	These are checked at each iteration against current idle data
              to determine whether or not to set bits in the "active" vector.
      	- LAST_TTY_ACT (now) > LAST_TTY_ACT (previous)
              - LOAD > <provided value>
              - EXPER_PKT_COUNT(now) - EXPER_PKT_COUNT(prev) > <provided value>
      	- CNTRL_PKT_COUNT(now) - CNTRL_PKT_COUNT(prev) > <provided value>
      	- Values passed in via command line: do ./slothd -h for help
       - "Aggressive" mode added to slothd
      	When a regular interval's worth of time has passed, and no activity
              has been noted, slothd goes into "aggressive" mode.  In this mode,
      	slothd changes its sleep interval, checking for activity much more
      	frequently (still reporting every <reg_interval>) until activity
      	is noted.  This is based on the threshold logic above.  When activity
      	is seen, slothd sends a report, and goes back to "regular" reporting.
      	- params passed via command line for regular, and aggressive intervals.
       - sdcollectd updates data in new "node_activity" table
      	- Updates timestamps based on activity bits in received slothd packets
      	- No new rows are added.
       - Option added to sdcollectd to insert into "old" node_idlestats and
      	iface_counters tables
         	- This is not the default (-o)
       - New sdcollectd still accepts old client reports
      	- but does not update the node_activity table with them.
       - Misc.
      	- Code cleanup
      	- Scan "active terminals only" option & code removed from slothd
      	- Always send report immediately on startup (no more option)
      	- Randomize time of second report to mitigate synchronization
      	- Send report on shutdown (receipt of INT, TERM, or QUIT)
      a337f7b9
  23. Dec 18, 2002
  24. Oct 07, 2002
  25. Jul 12, 2002
    • Mac Newbold's avatar
      Fix flags passed to slothd. Before, -f meant send an immediate update (which... · 3a643160
      Mac Newbold authored
      Fix flags passed to slothd. Before, -f meant send an immediate update (which wasn't the default behavior). The latest slothd updates (several weeks ago at least) changed the polarity of the flag. It still does the non-default thing, but now that makes it wait an hour before sending an update. So we remove -f so it does the right thing.
      3a643160
  26. Jul 10, 2002
  27. Jul 09, 2002
  28. Jun 24, 2002
  29. Jun 19, 2002
  30. Jun 18, 2002
  31. Jun 11, 2002
  32. Jun 05, 2002
    • Leigh B. Stoller's avatar
      Changes to sshtb. Remove sshremote, and convert sshtb into a perl · 231fc2b1
      Leigh B. Stoller authored
      script that checks the database to see if local or remote. The problem
      with this is that the ssh syntax makes it hard to determine the host
      name by inspection. Would need to parse all the ssh args (bad idea),
      ot work backwards and try to figure out the difference between the
      command (which is not a string but a sequence of args) and the host
      and the preceeding ssh args. Hell with that! Changed sshtb to require
      a specific -host argument. Read the args and look for it. Error out of
      not found, to catch improper usage.
      
      The moral of this update: "sshtb [ssh args] -host <host> [more args ...]
      231fc2b1
Loading