1. 25 Feb, 2013 1 commit
  2. 22 Feb, 2013 1 commit
  3. 14 Feb, 2013 1 commit
  4. 08 Feb, 2013 1 commit
  5. 30 Jan, 2013 1 commit
  6. 29 Jan, 2013 1 commit
  7. 28 Jan, 2013 1 commit
  8. 24 Jan, 2013 2 commits
  9. 23 Jan, 2013 1 commit
  10. 22 Jan, 2013 1 commit
  11. 18 Jan, 2013 1 commit
  12. 17 Jan, 2013 2 commits
    • Leigh B Stoller's avatar
      Add long term storage of log files in /usr/testbed/logs/logfiles. · b0cfd986
      Leigh B Stoller authored
      New Store() method will gzip and move the file from current location
      to long term storage, and update the DB row to reflect the change.
      Change spewlogfile to handle these compressed files. Also added a
      "public" flag that says a log file can be requested by an anonymous
      user that knows the logid (md5 of bits). Change spewlogfile to allow
      anonymous requests.
      
      Add logfile_metadata to hold key,value pairs associated with a
      logfile, eventually for search but initially to include when returning
      the contents of a logfile via spewlogfile.
      b0cfd986
    • Leigh B Stoller's avatar
      Changes to ExecQuiet to make sure STDERR is really redirected · 10b3eecc
      Leigh B Stoller authored
      in the pipe. When invoked from the web interface STDERR has
      been redirected to the apache log file, and if we do not reset
      it, error output land there instead of in the pipe we just opened.
      10b3eecc
  13. 14 Jan, 2013 1 commit
  14. 10 Jan, 2013 3 commits
  15. 03 Jan, 2013 1 commit
  16. 02 Jan, 2013 3 commits
  17. 18 Dec, 2012 1 commit
  18. 17 Dec, 2012 1 commit
  19. 03 Dec, 2012 1 commit
  20. 29 Nov, 2012 1 commit
  21. 28 Nov, 2012 2 commits
  22. 27 Nov, 2012 1 commit
    • Leigh B Stoller's avatar
      Start saving the virtual and physical state after each swapin/swapmod · 229d2bcc
      Leigh B Stoller authored
      so that we can do post-mortem debugging. I'm adding this so I can
      track down the current snmpit failures, but might useful later too.
      
      Sadly, mysql dump files have no table metadata so once the schema
      changes, these files will become less useful if we ever want to load
      them into a running DB. It would be nie to dump them in a format that
      allows this, but will be a bunch more work.
      229d2bcc
  23. 14 Nov, 2012 2 commits
  24. 09 Nov, 2012 1 commit
  25. 08 Nov, 2012 1 commit
  26. 06 Nov, 2012 2 commits
  27. 31 Oct, 2012 1 commit
  28. 30 Oct, 2012 2 commits
    • Mike Hibler's avatar
      Doh, forgot to add the fixarpinfo script. · c1a7783a
      Mike Hibler authored
      Also, add verbose mode and log to /var/emulab/logs/fixarpinfo.log so we
      can track what changes.
      c1a7783a
    • Mike Hibler's avatar
      Remaining infrastructure for control network "ARP lockdown". · 4b5e17b0
      Mike Hibler authored
      It works like this. Certain nodes that are on the node control net
      (right now just subbosses, but ops coming soon) can set static ARP entries
      for the nodes they serve. This raises the bar for (but does not eliminate
      the possibility of) nodes spoofing servers. Currently this is only for
      FreeBSD.
      
      When such a server boots, it will early on run /etc/rc.d/arplock.sh
      which will in turn run /usr/local/etc/emulab/fixarpinfo. fixarpinfo
      asks boss via an SSL tmcc call for "arpinfo" (using SSL ensures that the
      info coming back is really from boss). Tmcd on boss returns such arpinfo
      as appropriate for the node (subboss, ops, fs, etc.) along with the type
      of lockdown being done. The script uses this info to update the ARP
      cache on the machine, adding, removing, or making permanent entries
      as appropriate.
      
      fixarpinfo is intended to be called not just at boot, but also whenever
      we might need to update the ARP info on a server. The only other use right
      now is in subboss_dhcpd_makeconf which is called whenever DHCP info may
      need to be changed on a subboss (we hook this because a call to this script
      might also indicate a change in the set of nodes served by the subboss).
      In the future, fixarpinfo might be called from the newnode path (for ops/fs,
      when a node is added to the testbed), the deletenode path, or maybe from
      the watchdog (if we started locking down arp entries on experiment nodes)
      
      The type of the lockdown is controlled by a sitevar on boss,
      general/arplockdown, which can be set to 'none', 'static' or 'staticonly'.
      'none' means do nothing, 'static' means just create static arp entries
      for the given nodes but continue to dynamically arp for others, and
      'staticonly' means use only this set of static arp entries and disable
      dynamic arp on the control net interface. The last implies that the server
      will only be able to talk to the set of nodes for which it got ARP info.
      
      As mentioned, tmcd is responsible for returning the correct set of arp
      info for a given request. The logic currently is:
      
       * Only return ARP info to nodes which are on the CONTROL_NETWORK.
         If the requester is elsewhere (e.g., Utah's boss and ops are currently
         segregated on different IP subnets) then this whole infrastructure
         does not apply and nothing is returned.
      
       * If the requester is a subboss, return info for all other servers that
         are on the node control network as well as for the set of nodes
         which the subboss serves.
      
       * If the requester is an ops or fs node, again return info for all
         other servers and info for all testnodes or virtnodes whose control
         net IP is on the node control net.
      
       * Otherwise, return nothing.
      
      One final note is that the ARP info for servers such as boss/ops/fs or
      the gateway router is not readily available in most Emulab instances
      since those machines are not in the DB nodes or interfaces tables.
      Eventually we will fix that, but for now the info must come from new
      site variables. To help initially populate those variables, I added
      the utils/update_sitevars script which attempts to determine which
      servers are on the node control net and gathers the appropriate IP and
      MAC info from them.
      4b5e17b0
  29. 26 Oct, 2012 1 commit
  30. 25 Oct, 2012 1 commit
    • Kirk Webb's avatar
      Add subnode relationship for blockstores. · 3c06a7c8
      Kirk Webb authored
      Yucky stuff to create parent host objects for blockstores on the
      fly, and to insert these hosts into lans when the blockstore shows up in
      lan member lists.
      
      Add "best effort" symbol ("~") to parser for bandwidth spec.
      
      Also adjust the copyright dates on new files.
      3c06a7c8