1. 12 May, 2010 1 commit
  2. 10 May, 2010 1 commit
  3. 13 Apr, 2010 1 commit
  4. 25 Mar, 2010 1 commit
  5. 23 Feb, 2010 1 commit
  6. 23 Dec, 2009 1 commit
  7. 22 Dec, 2009 5 commits
  8. 21 Dec, 2009 1 commit
    • Leigh B. Stoller's avatar
      New approach to dealing with nodes that fail to boot is os_setup, and · 5cf6aad2
      Leigh B. Stoller authored
      land in hwdown.
      
      Currently, if a node fails to boot in os_setup and the node is running
      a system image, it is moved into hwdown. 99% of the time this is
      wasted work; the node did not fail for hardware reasons, but for some
      other reason that is transient.
      
      The new approach is to move the node into another holding experiment,
      emulab-ops/hwcheckup. The daemon watches that experiment, and nodes
      that land in it are freshly reloaded with the default image and
      rebooted. If the node reboots okay after reload, it is released back
      into the free pool. If it fails any part of the reload/reboot, it is
      officially moved into hwdown.
      
      Another possible use; if you have a suspect node, you go wiggle some
      hardware, and instead of releasing it into the free pool, you move it
      into hwcheckup, to see if it reloads/reboots. If not, it lands in
      hwdown again. Then you break out the hammer.
      
      Most of the changes in Node.pm, libdb.pm, and os_setup are
      organizational changes to make the code cleaner.
      5cf6aad2
  9. 12 Oct, 2009 1 commit
    • David Johnson's avatar
      Add the ability to load images on virtnodes. For now, we just overload · c6c57bc9
      David Johnson authored
      the tb-set-node-os command with a second optional argument; if that is
      present, the first arg is the child OS and the second is the parent OS.
      We add some new features in ptopgen (OS-parentOSname-childOSname) based
      off a new table that maps which child OSes can run on which parents, and
      the right desires get added to match.  We setup the reloads in os_setup
      along with the parents.  Also needed a new opmode, RELOAD-PCVM, to handle
      all this.
      
      For now, users only have to specify that their images can run on pcvms, a
      special hack for which type the images can run on.  This makes sense in
      general since there is no point conditionalizing childOS loading on
      hardware type at the moment, but rather on parentOS.  Hopefully this stuff
      wiill mostly work on shared nodes too, although we'll have to be more
      aggressive on the client side garbage collecting old frisbee'd images for
      long-lived shared hosts.
      
      I only made these changes in libvtop, so assign_wrapper folks are left in
      the dark.
      
      Currently, the client side supports frisbee.  Only in openvz for now, and
      this probably breaks libvnode_xen.pm.  Also in here are some openvz
      improvements, like ability to sniff out which network is the public
      control net, and which is the fake virtual control net.
      c6c57bc9
  10. 24 Sep, 2009 1 commit
  11. 23 Jul, 2009 1 commit
  12. 15 Jul, 2009 1 commit
    • Leigh B. Stoller's avatar
      Add MaxShareCount() method to get the pcvm share count. · af2d65cb
      Leigh B. Stoller authored
      Add checks in CreateVnodes() to make sure that when creating
      a vnode on a node, it is either reserved to the experiment or
      is a shared experiment. This check is after the table lock to
      avoid races with the shared pool expanding and contracting.
      af2d65cb
  13. 09 Jul, 2009 1 commit
  14. 23 Jun, 2009 1 commit
  15. 11 Jun, 2009 1 commit
    • Leigh B. Stoller's avatar
      Add method to flush and reload the reservation info from the node · 39a76b80
      Leigh B. Stoller authored
      object.
      
      Method to find out if a physical node has any virtual nodes allocated
      to it.
      
      Method to release the bandwidth that a vnode on a shared host is
      using. This uses the vinterfaces table to find out what link is using,
      and then increments the remaining_bandwidth of the interface_state
      table. Tables are locked of course.
      
      Add method to allocate an rtabid, since like ssh ports on remote
      nodes, the rtabid is now a shared counter on a sharedhost.
      
      Hmm, a change to the TipServer() method that was for using console on
      boss.
      39a76b80
  16. 15 May, 2009 1 commit
  17. 01 May, 2009 1 commit
    • Leigh B. Stoller's avatar
      Add sharing_mode() method. · 8ca449ef
      Leigh B. Stoller authored
      Move the important part of os_select into this library as a method so
      that we can just do it from the mapper wrapper without having to call
      a shell script for each node in the topo (which on a 2000 node
      experiment, takes 45 minutes).
      8ca449ef
  18. 21 Apr, 2009 1 commit
  19. 17 Apr, 2009 1 commit
  20. 18 Mar, 2009 1 commit
  21. 06 Mar, 2009 1 commit
  22. 27 Feb, 2009 1 commit
  23. 19 Feb, 2009 1 commit
  24. 13 Feb, 2009 1 commit
  25. 12 Feb, 2009 1 commit
  26. 29 Jan, 2009 1 commit
  27. 10 Sep, 2008 1 commit
  28. 03 Sep, 2008 1 commit
  29. 10 Jul, 2008 2 commits
  30. 09 Jul, 2008 1 commit
  31. 03 Jun, 2008 1 commit
  32. 20 May, 2008 1 commit
  33. 19 May, 2008 1 commit
  34. 16 Apr, 2008 1 commit
    • Leigh B. Stoller's avatar
      A set of changes to implement dynamic root passwords on local nodes · bac0172e
      Leigh B. Stoller authored
      (and vnodes). Each time a node is allocated to an experiment it gets a
      new root password (using the node_attributes table). The watchdog has
      a new section that resets the root password (defaults to hourly).  We
      still using a common password in the image to avoid totally bricking
      ourselves, but once a node boots into an experiment it gets a new root
      password.
      
      This prevents hundreds of nodes with the same password, and all of the
      problems associated with that.
      bac0172e
  35. 14 Mar, 2008 1 commit