1. 30 Oct, 2001 1 commit
  2. 29 Oct, 2001 1 commit
    • Leigh B. Stoller's avatar
      A bunch of lastlogin changes! The user and experiment information · 4658545e
      Leigh B. Stoller authored
      pages now show the lastlogin info that is gathered from sshd syslog
      reporting to users. That info is parsed by security/genlastlog.c, and
      entered into the DB in the nodeuidlastlogin and uidnodelastlogin
      tables. If not obvious from the names, for each user we want the last time
      they logged in anyplace, and for each node we want the last time anyone
      logged into it. The latter is obviously more useful for scheduling
      purposes. All of the various images have new /etc/syslog.conf files,
      and the 6.2 got new sshd_configs (all cvsup'ed with kill -HUP). There
      is an entry in boss:/etc/crontab and users:/etc/syslog.conf. All of
      this is decribed in greater detail in security/genlastlog.c.
      4658545e
  3. 25 Oct, 2001 1 commit
  4. 24 Oct, 2001 1 commit
    • Leigh B. Stoller's avatar
      Largish rework of nfree. Started out that I just wanted to map the · 895a44f6
      Leigh B. Stoller authored
      default OSID from the node_types table, to a specific OSID from the
      partition table on the actual node. This is to avoid setting the boot
      OSID to RHL_STD when the node is released, which causes a boot
      failure. Okay, so I added a library routine to do this (yanked out of
      os_setup where I did the code originally). This would solve most of
      the problems, except where there was no OS loaded that would satisfy
      the mapping, in which case the user must have done an os_load, and now
      that auto schedules a reload. Anyway, seemed like this should work.
      Ha! Mysql locking is downright dumb; all tables used within a lock
      region must be locked. nfree was already locking 9 tables, and in
      order to call out to library routines (which might use anything) I
      would have to lock the world, which is not actually possible anyway.
      Why all this locking in nfree in the first place? The idea is that
      there is a race between releasing the node from reserved, and cleaning
      up all those tables (interfaces, delays, nodes, etc). We don't want to
      free a node, and have it get allocated to another experiment before
      the cleanup is done, since that would mess up the state of the node.
      The solution (albiet a crufty one) was to lock just the reserved table
      (which guards against multiple people trying to nfree the same node at
      the same time) and switch the reservation out of the pid,eid and into
      a holding reservation. This effectively removes the node from the
      users control, but keeps it reserved. Then I unlock the reserved
      table. With that done, I can clean up all those tables without any
      locking, since the node is still reserved. After cleanup, I can either
      delete the reservation, or move it to the next reserve or reload
      reservation if those were pending. No locking is needed at this point
      since single table changes are atomic (and nalloc locks reserved
      anyway). Okay, so now we sit back and see if this was a good idea.
      895a44f6
  5. 22 Oct, 2001 1 commit
    • Leigh B. Stoller's avatar
      Add -e pid,eid option to sched_reload to make it easier to schedule · 6adf504b
      Leigh B. Stoller authored
      reloads for nodes in an experiment.
      Change os_load to schedule a default image reload whenever a mereuser
      loads an image that is not the default image for that node type.
      Add some support stuff in libdb (TBSetSchedReload) and some constant
      definitions for sched_reload and for nodelog.
      6adf504b
  6. 20 Oct, 2001 1 commit
  7. 17 Oct, 2001 1 commit
    • Leigh B. Stoller's avatar
      Rework of the batch experiment code. Unified it with the immediate · 4d420b21
      Leigh B. Stoller authored
      experiment code. No longer uses another table. Rather, the experiment
      record contains a couple of extra fields for the batch system. Also
      combined some of the backend code (no longer a killbatch script).
      Also added scriptable experiments; the batchexp program in the bin
      directory can start an experiment from the command line, and in fact
      is used from the web page for both batch experiments and immediate
      experiments (-i option). All of the DB code that was in the web
      interfaces was moved to batchexp.
      4d420b21
  8. 16 Oct, 2001 1 commit
  9. 11 Oct, 2001 1 commit
  10. 28 Sep, 2001 1 commit
    • Leigh B. Stoller's avatar
      Interface change: · f870a7e9
      Leigh B. Stoller authored
      	Usage: os_load [-s | -w] [-r] [-i <imageid>] <node> [node ...]
              Usage: sched_reload [-f | -p] [-r] [-i <imageid>] <node> [node ...]
      
      The imageid is now an optional argument. After continually forgetting
      what imageid to use, or just plain forgetting the argument, and having
      it try to load imageid pc53 on pcXX, I decided this interface was
      bogus. With now imageid, select the default imageid for each node
      provided. This is actually convenient since you can load multiple
      types of nodes in one shot.
      f870a7e9
  11. 26 Sep, 2001 1 commit
  12. 19 Sep, 2001 1 commit
  13. 17 Sep, 2001 2 commits
  14. 11 Sep, 2001 1 commit
  15. 29 Aug, 2001 1 commit
  16. 28 Aug, 2001 1 commit
    • Leigh B. Stoller's avatar
      Cleanup of the Chris' TB scripts. Cosmetic in principle, but reworked · c874636d
      Leigh B. Stoller authored
      to use the DB library access routines, which also changed in response
      to what the tb scripts needed. Added some functions and mor constants.
      Removed the -nologfile option from all the scripts (startexp and
      endexp too), since there is no reason for these scripts to worry about
      log files. Thats handled in the wrappers. Tested with the testsuite
      and live in my own tree.
      c874636d
  17. 22 Aug, 2001 1 commit
  18. 14 Aug, 2001 1 commit
  19. 01 Aug, 2001 1 commit
    • Leigh B. Stoller's avatar
      An attempt at making image creation an easy/automatic operation. HA! · 27f26d99
      Leigh B. Stoller authored
      This uses the pxe booted freebsd kernel and MFS. In addition, I use
      the standard testbed mechanism of specifying a startup command to
      run, which will do the imagezip to NFS mounted /proj/<pid>/.... The
      controlling script on paper sets up the database, reboots the node,
      and then waits for the startstatus to change. Then it resets the DB
      and reboots the node so that it returns back to its normal OS. The
      format of operation is:
      
      	create_image <node> <imageid> <filename>
      
      Node must be under the user's control of course. The filename must
      reside in the node's project (/proj/<pid>/whatever) since thats the
      directory that is mounted by the testbed config software when the
      machine boots. The imageid already exists in the DB, and is used to
      determine what part of the disk to zip up (say, using the slice option
      to the zipper). Since this operation is rather time consuming, it does
      the usual trick of going to background and sending email status later.
      27f26d99
  20. 25 Jul, 2001 1 commit
  21. 23 Jul, 2001 1 commit
  22. 17 Jul, 2001 1 commit
    • Leigh B. Stoller's avatar
      Some minor changes, plus endless hours of PERL confusion. Anyway, add · d1c90991
      Leigh B. Stoller authored
      a bootstatus field to the nodes table. os_setup sets this to one of
      okay, failed, unknown. This is to be used with the still to be defined
      method of specifying certain nodes that can fail reboot on experiment
      creation. Right now sharks are wired to this, and this information is
      presented in the web page. Its also essential for the batch system,
      which needs to consider nodes that failed to reboot, or else batch
      experiments would never end. Might still need a way for an experiment
      to tell the batch system its done though.
      d1c90991
  23. 13 Jul, 2001 1 commit
  24. 05 Jun, 2001 1 commit
  25. 31 May, 2001 1 commit
  26. 29 May, 2001 1 commit
  27. 25 May, 2001 1 commit
    • Leigh B. Stoller's avatar
      New libdb module. A library of some useful routines that will · 7e4ad150
      Leigh B. Stoller authored
      hopefully get bigger and reduce the amount of typing that we all
      do. I hacked up sched_reload and os_load to use it. Pretty simple to
      start with.
      
      I'm not planning to go much further on this until we sync up with the
      dbtoir branch since it will just create needless branch merge errors.
      7e4ad150