1. 13 May, 2005 5 commits
    • Robert Ricci's avatar
      174776a7
    • Robert Ricci's avatar
      Add some notes about IOS commands. · 204c7c10
      Robert Ricci authored
      204c7c10
    • Leigh Stoller's avatar
      Automate initial user/project setup from setup-db.txt. Rather then · dd1b57bc
      Leigh Stoller authored
      have the user go through a set of hard to explain steps, just push
      them through it using the web interface.
      
      * New sitevars to control a little state machine used by the web
        interface.
      
      * When first setting up a testbed, the sitevar value will force the
        web interface to present the user with a single menu option "Create
        New Project" and the "Home" link will take the user to that page.
        The user is instructed to login is as elabman.
      
      * The user fills in the form as directed in setup-ops.txt. Even though
        he is logged in as elabman, the newproject form has been altered to
        operate as if no one is logged in. I also default a bunch more of
        the fields in this case.
      
      * The user submits the form. Rather then pend the new project, just
        jump straight into approveproject. That grinds along as usual, and
        when it is done, the elabman account is frozen and the user logged
        out. The user gets a link inviting him to log back in as the user
        just created.
      
      * Side effects of this new process:
      
      	* The user is made an admin user (admin=1) automatically.
      	* The user is added to the emulab-ops project as group_root.
      	* The user verification process is skipped.
      	* The user is added to the unixgroups wheel and tbadmin.
      
      * I reworked this entire section of setup-db.txt ...
      
      * The user still needs to give himself a real shell and password on
        boss, but I left that for the user to do explicitly. I also drop in
        a pointer to the shellonboss.txt. I might automate this part too at
        some point. Not sure yet.
      dd1b57bc
    • Mike Hibler's avatar
      Yarg! Botched a DESTDIR related variable. · 99f18ce3
      Mike Hibler authored
      Will not have affected anyone but me...
      99f18ce3
    • Mike Hibler's avatar
      New config variables: · 7d2bb50d
      Mike Hibler authored
           $emulabconfig{"JAILIPBASE"} = "172.16.0.0";
           $emulabconfig{"JAILIPMASK"} = "255.240.0.0";
      
      These are used to establish a route on boss and ops so they can talk to
      inner vnodes.
      
           $emulabconfig{"MFSTARBALL"} = "tftpboot-elabinelab.tar.gz";
           $emulabconfig{"MFSVERSION"} = "53";
           $emulabconfig{"MFSCONSOLE"} = "sio";
      
      Allow for customization of the MFSes.  The first is the most useful,
      it provides some backend support for something Leigh suggested: the ability
      to select in the NS file whether the inner-elab should use a "release"
      set of files (MFSes, images, emulab source) or the current elabinelab version.
      The last two might not be as useful.
      
      Currently none of these new variables are actually passed in via tmcd,
      they just get the default values shown above.
      7d2bb50d
  2. 12 May, 2005 9 commits
    • Leigh Stoller's avatar
      Minot change to last revision; let anyone swapmod a swapped firewalled · 1adb2069
      Leigh Stoller authored
      or elabinelab experiment, but continue to allow only admins to do it
      if the experiment is active. Just while I continue to debug.
      1adb2069
    • Leigh Stoller's avatar
      Checkpoint the rest of my changes to support swapmod of both ElabInElab and · 6eff9de6
      Leigh Stoller authored
      Firewalled experiments (see tbsetup/elabinelab.in for the other stuff).
      
      * To support firewalled experiments, needed to add a new virt_firewalls
        table to split the existing firewalls table up, which included both
        virtual and physical stuff. There are the usual frontend changes and a
        few other things scattered around, including tmcd.c.
      
      * The firewall code in tbswap got some beefing up to support adding and
        deleting nodes from the its special control net vlan. Note that I have
        not made any progress on containment of deleted nodes, just as we do not
        do anything now for teardown (unless its paniced, in which case the
        experiment cannot be modified anyway).
      
      * ptopgen and assign_wrapper got some interesting modifications: Unlike
        regular swapmod, we cannot just tear down all the vlans since that would
        interrupt everything inside the inner elab. Instead, leave the vlans as
        is. The problem is that when assign runs, it can just as easily pick
        different interfaces on the same nodes, which would be a royal pain in
        the ass to deal with! So, ptopgen got a new option (-u) that assign
        wrapper uses to tell ptopgen that it should prune out unused interfaces
        from nodes that are already allocated to the experiment. This is, at
        best, as pathetically gross hack, but it makes sure that all the
        interfaces stay the same across swapmods.
      
      * The unrelated revision of elabinelab has a bunch of new code for adding
        and deleting nodes from the inner elab. Mostly it deals with dhcpd (inner
        and outer, waiting for nodes to reboot, etc). It also deals with updating
        the vlans table in the DB, pruning out any nodes (ports) that are deleted
        but for which there are still interfaces in existing vlans. Said ports
        are them moved back to the default vlan with calls to snmpit. Also under
        another revision a a couple of weeks ago are the web interface changes to
        support the newnode MFS inside an inner Emulab.
      
      * swapexp and endexp got some more checks for firewalled and paniced
        experiments, which were missing.
      6eff9de6
    • Leigh Stoller's avatar
      Hmm, a questionable change that I needed cause of ElabInElab and swapmod. · b031d1a7
      Leigh Stoller authored
      When doing a swapmod, nodes already reserved to the experiment are "moved"
      (via update) to a holding reservation. Fine.  After assign runs, the old
      nodes are moved back, but this time by an insert into the table, which
      causes them to lose some fields that I do not want them to lose! This might
      really mean that these fields do not belong in the reserved table, but I do
      not want to ponder this right now. Instead I do another update bringing
      them back into the original experiment.
      
      I left comment indicating that this is under review (and why this commit is
      seperate from the rest of the swapmod changes).
      b031d1a7
    • Leigh Stoller's avatar
      Stuff I added for ElabInElab and swapmod. · 08f0e7f7
      Leigh Stoller authored
      * -f option to force deletion. Only works inside ElabInElab.
      
      * -q option to keep the silly thing from spitting out so much noise.
      
      * Add a -HUP of stated to reload it tables.
      08f0e7f7
    • Leigh Stoller's avatar
      Fix bonehead typo in update query. · 321b4d5d
      Leigh Stoller authored
      321b4d5d
    • Leigh Stoller's avatar
      Add scalebar bassed on provided pixels_per_meter argument to applet. · 73e86a6e
      Leigh Stoller authored
      Also remove some more defunct double buffering code.
      73e86a6e
    • Leigh Stoller's avatar
      Do not set the OSID on inner elab experimental nodes; let them get · 2a138424
      Leigh Stoller authored
      their default. It can still be overridden though in your NS file with:
      
      	namespace eval TBCOMPAT {
      	    set elabinelab_nodeos(mypc1) FBSD-STD
      	}
      2a138424
    • Leigh Stoller's avatar
      Stick in *extremely* primitive scale bar. It goes into the title area, · dd1ffac2
      Leigh Stoller authored
      in the upper right hand side.
      
      Ideally, we should put in full bars on both the X and Y axis, but that
      was way too hard. Maybe Russ can work on that if we think its needed.
      dd1ffac2
    • Leigh Stoller's avatar
      Part of my changes to support swapmod of ElabInElab experiments. I needed · 283e27fd
      Leigh Stoller authored
      to get this change in cause it also includes some DHCPD conf changes and
      Mike and I were messing each other up.
      
      * The DHCPD change is that instead of using reserved.inner_elab_role
        as the flag to indicate a node should boot inside or outside, I
        added inner_elab_boot, which is a boolean that I set when its
        actually time to do this. This avoids two ElabInElab swapins at the
        same time from messing each other up! Basically avoids the obvious
        race.
      
      * The rest of the changes are for swapmod itself, which are incomplete
        but should be harmless until the rest of the stuff is ready.
      283e27fd
  3. 11 May, 2005 12 commits
  4. 10 May, 2005 14 commits