emulab-devel:fabd07a79fef99a683a32be932545a80e799a914 commitshttps://gitlab.flux.utah.edu/emulab/emulab-devel/commits/fabd07a79fef99a683a32be932545a80e799a9142018-12-11T14:39:49Zhttps://gitlab.flux.utah.edu/emulab/emulab-devel/commit/fabd07a79fef99a683a32be932545a80e799a914Changes for building/installing capture/console on control nodes:2018-12-11T14:39:49ZLeigh B Stollerstoller@flux.utah.edu
* Makefile changes to build and install nossl versions of capture and
console on a rack control node (or more generally, a physical node
hosting boss/ops VMs that are not built on our XEN49 image).
* Add -I (insecure) option to capture, that listens on localhost only.
* Add systemd startup files for capture on ops and boss, I tested these
on Ubuntu18.
Basic instructions:
* Clone the emulab-devel repo to the control node.
git clone <a href="https://gitlab.flux.utah.edu/emulab/emulab-devel.git">https://gitlab.flux.utah.edu/emulab/emulab-devel.git</a>
* On the control node, install the libssl devel code:
sudo apt-get update
sudo apt-get install libssl-dev
* configure and build capture. Note that the obj-clientside directory might
already exist, you can just rm -rf the directory.
control&gt; cd ~elabman
control&gt; mkdir obj-clientside
control&gt; cd obj-clientside
control&gt; /path/to/emulab-devel/clientside/configure
control&gt; make rack-control
control&gt; sudo make rack-control-install
control&gt; (cd os/capture; sudo make rack-control-startup-install)
* start capture.
control&gt; sudo systemctl daemon-reload
control&gt; sudo systemctl start capture-boss
control&gt; sudo systemctl start capture-opshttps://gitlab.flux.utah.edu/emulab/emulab-devel/commit/cdcbedc7311c08f7ccfc012ee83d8ab0d1a72769Various fixes for ualloc switches:2018-12-06T23:47:28ZLeigh B Stollerstoller@flux.utah.edu
* Stop using the ALWAYSUP state machine for switches, this causes ISUP
to always get sent, which in certain cases, results in stated
rebooting the switch!
Added new ONIE state machine, which handles the way switches actually
boot into ONIE first and then does the bootinfo/grub dance, or does a
reload or does admin mode.
* Do not send PXEBOOTING from ONIE; this was a mistake, it throws us
into the PXEKERNEL state machine, which sometimes results is stated
rebooting the switch!
We still use PXEWAIT (it is sent by bootinfod), since that is the
"waiting" state that is wired into a lot of Emulab, it just happens to
now be a state in the ONIE state machine, so its legal.
* Fix a bug in libossetup, that was fooling libossetup_switch into
thinking the wrong thing.
* Add some timeouts to the libosload_mlnx code, sshd sometime refuses to
answer after a failed login. Strange.
* Fix a fork() problem in the switch reload code; gotta call exit, not
return! This was wreaking subtle (okay not so subtle) havoc in
libossetup.https://gitlab.flux.utah.edu/emulab/emulab-devel/commit/18a98f7e9d0285b195a384b56f80e818ab85d867Final tweaks before install. Make sure unfinished stuff doesn't appear for us...2018-12-06T21:25:14ZJonathon Duerigduerig@flux.utah.eduhttps://gitlab.flux.utah.edu/emulab/emulab-devel/commit/13e27a1877881b0659f00c3b4aa32f36ff8d5a12Load jacksmod (image picker, etc.) statically via PHP2018-12-06T21:25:14ZJonathon Duerigduerig@flux.utah.eduhttps://gitlab.flux.utah.edu/emulab/emulab-devel/commit/cc5fe80794051d597bb2a64a296e48b3d5b320cbTesting new rejection breakdown for constraints system2018-12-06T21:25:14ZJonathon Duerigduerig@flux.utah.eduhttps://gitlab.flux.utah.edu/emulab/emulab-devel/commit/0ed7bce0c41294efefcb5f6a442fab6c89f99da7Pull new thumbnail generator code in. Optimize constraints system. Checkpoint.2018-12-06T21:25:14ZJonathon Duerigduerig@flux.utah.eduhttps://gitlab.flux.utah.edu/emulab/emulab-devel/commit/5e305c142025dbff955644820dcf57fb8dcd216cMinor fixes to AccessCheck() code.2018-12-06T20:59:04ZLeigh B Stollerstoller@flux.utah.eduhttps://gitlab.flux.utah.edu/emulab/emulab-devel/commit/2b54c8e1e729cc9928009a357de236622485f4a3Fix shell check when there are multiple execute services.2018-12-06T20:59:04ZLeigh B Stollerstoller@flux.utah.eduhttps://gitlab.flux.utah.edu/emulab/emulab-devel/commit/91d7fc892f29632882f9ee4fa6e725aeb7d80763Check the WCE bit should be inside the case statment not outside where it wil...2018-12-05T19:05:05ZDan Readingdreading@flux.utah.eduhttps://gitlab.flux.utah.edu/emulab/emulab-devel/commit/972eac7f8516e0cb62c7fd67a66c35928a8ae5d1Do not mess with ualloc switches that look to be in an odd state, they2018-12-03T23:15:03ZLeigh B Stollerstoller@flux.utah.eduare odd all the time. This was one cause of transient failures to reload
or reboot, checknodes was sucking them up and power cycling them.https://gitlab.flux.utah.edu/emulab/emulab-devel/commit/b6c5f701b16526a4d86b2b14ab29e1350919c1f8Updated versions of our local boss/ops patches.2018-12-03T17:10:57ZMike Hiblerhibler@cs.utah.eduhttps://gitlab.flux.utah.edu/emulab/emulab-devel/commit/943f9ad6f879ae61db9ffbd9018b8f4410c60f94Add an option to the manage profile page that allows the creator (and2018-11-30T21:15:53ZLeigh B Stollerstoller@flux.utah.eduproject leader) to give write (editing) permission to everyone else in
the project.https://gitlab.flux.utah.edu/emulab/emulab-devel/commit/bddf6dc49b19f72b4e93d7276823fa3c80fe54daFix bug that caused a paniced experiment to be expired. Ick.2018-11-30T16:31:47ZLeigh B Stollerstoller@flux.utah.eduhttps://gitlab.flux.utah.edu/emulab/emulab-devel/commit/1013e9d448b80c4394e2c1d6482282f4f4ccab44Finally have spanning tree working, thanks Kirk! The main point is that2018-11-29T23:55:31ZLeigh B Stollerstoller@flux.utah.eduloop guard has to be enabled on switch to switch links only, not on
switch to pc.https://gitlab.flux.utah.edu/emulab/emulab-devel/commit/a9aee5eddfb5cc6fc4b6851a1b5edd2405f4e4a8Add XEN49 to the list of all parents.2018-11-29T23:52:45ZLeigh B Stollerstoller@flux.utah.eduhttps://gitlab.flux.utah.edu/emulab/emulab-devel/commit/195b0999498f281fc2d3dde4e62b945878606846Minor makefile fixes to previous revision.2018-11-29T13:38:42ZLeigh B Stollerstoller@flux.utah.eduhttps://gitlab.flux.utah.edu/emulab/emulab-devel/commit/78170fb16f04816181235e35c9620e5d89fa09b6Remove debugging code.2018-11-28T20:37:02ZLeigh B Stollerstoller@flux.utah.eduhttps://gitlab.flux.utah.edu/emulab/emulab-devel/commit/7cc9fe25b49b43ca600a46c6f2601a678b114643Merge branch 'mymaster'2018-11-28T18:39:13ZLeigh B Stollerstoller@flux.utah.eduhttps://gitlab.flux.utah.edu/emulab/emulab-devel/commit/aeae6e66850fd46969581efb870e4fa434bc9960Remove spanning tree stuff, does not work, need help. Add no-autoneg2018-11-28T18:37:15ZLeigh B Stollerstoller@flux.utah.eduto port config as per NetScout support; disables something that happens
when two mellanox switches are connected to each other, that confused
the netscout.https://gitlab.flux.utah.edu/emulab/emulab-devel/commit/568563f5b429a9f947b29380eff0f1710133804fMake sure emulab-boss has a proper dependency on autoconf.2018-11-28T18:19:09ZMike Hiblerhibler@cs.utah.eduhttps://gitlab.flux.utah.edu/emulab/emulab-devel/commit/13c85de68f85db28ede51c3b91349f2ff6031437Powder license support. Just project level, easy to add user level2018-11-28T18:16:48ZLeigh B Stollerstoller@flux.utah.edulicensing later.https://gitlab.flux.utah.edu/emulab/emulab-devel/commit/33b207d328644b9822aa799d682e11af30840ff2Part of issue #472; move tip and client part of xmlrpc, into the2018-11-28T18:16:48ZLeigh B Stollerstoller@flux.utah.educlientside subdir so they can be installed on nodes.https://gitlab.flux.utah.edu/emulab/emulab-devel/commit/7bd23fb1a2043c800cb667c340a53ce891ea27e0Various Linux local blockstore changes:2018-11-28T17:50:04ZMike Hiblerhibler@cs.utah.edu
Most important: if a &lt;2TB blockstore has an ext4 filesystem, make sure we
create it without the 64bit and huge_file features. The former will make
it impossible (currently) to take a snapshot since imagezip does not handle
64-bit blocknumbers (working on it...)
Don't stripe an LVM LV over more than 8 devices. Some of the Clemson nodes
have 20+ disks and we won't buy much (and it might even be counterproductive)
to try to stripe writes over all devices all the time.
Still trying to get lvcreate to not prompt when one of the devices has an
old metadata prompt. -Zy is supposed to prevent that, but it doesn't. Try
adding -y as well.
Not related: in the BEGIN block, don't cat $ETCDIR/genvmtype unless it
actually exists. Not everything is a docker container ya know...https://gitlab.flux.utah.edu/emulab/emulab-devel/commit/c587ef68193a725b548fd5fb44bce261e7676c51Minor bug fix.2018-11-27T14:43:48ZLeigh B Stollerstoller@flux.utah.eduhttps://gitlab.flux.utah.edu/emulab/emulab-devel/commit/54177df69162a2670bc9f276d6ded218e3395bbeDo not power cycle IPMI-controlled nodes that are off when in hwdown.2018-11-26T17:39:49ZMike Hiblerhibler@cs.utah.edu
For nodes that have the 'cyclewhenoff' attribute set.
NOTE that you still need to set 'cyclewhenoff' on all IPMI-controlled
node types (or nodes) for which you want "power cycle" to turn them on.
The default behavior is still to NOT allow power cycling when off.https://gitlab.flux.utah.edu/emulab/emulab-devel/commit/f2dd68efa1959a60463d3943739078f99d7cadb0When returning from "admin mode", reload the node startupcmd from virt_nodes.2018-11-16T21:30:44ZMike Hiblerhibler@cs.utah.edu
Entering admin mode clears nodes.startupcmd so we need to restore it
afterward. This applies when either returning from taking an image or
doing "node_admin off".https://gitlab.flux.utah.edu/emulab/emulab-devel/commit/194c0b94cb74d3584ca62ac92eb2c55512953473Minor tweaks resulting from run on Mothership.2018-11-15T12:57:49ZLeigh B Stollerstoller@flux.utah.eduhttps://gitlab.flux.utah.edu/emulab/emulab-devel/commit/18ce6827a026e1aa9163563ea468da4c9a46c9c5Fix minor bug that Mike noticed.2018-11-14T18:22:12ZLeigh B Stollerstoller@flux.utah.eduhttps://gitlab.flux.utah.edu/emulab/emulab-devel/commit/982f3f599f01d9be36a63cc61f23e33686a0227bUse sunlink flag to prevent users from removing critical directories in2018-11-14T17:54:27ZLeigh B Stollerstoller@flux.utah.edu/proj. Applied to top level only for now, since that was reasonably easy
to do, since projects and group stuff is all done on ops already (where
the chflags has to run). We could apply this to experiment and image
directories too, but we all know the better approach is to stop mounting
/proj on experimental nodes, right?
Also a new script mkprojdirs to create/recreate missing project
directories and do the chflags (calls over to ops and uses the
existing proxy script).https://gitlab.flux.utah.edu/emulab/emulab-devel/commit/cec5c2668b5a969f8e69503767dbf91c1ef1f13fAdd a state for Singapore so that signup page works.2018-11-14T17:54:27ZLeigh B Stollerstoller@flux.utah.eduhttps://gitlab.flux.utah.edu/emulab/emulab-devel/commit/c2a0cde54be96b5c294b8e4b4d1d45082441ff49Fix nightly DB error that occurs cause of no locking on the table.2018-11-14T17:54:27ZLeigh B Stollerstoller@flux.utah.eduhttps://gitlab.flux.utah.edu/emulab/emulab-devel/commit/de87c8a4df48ce10c3edfa3839da2f46416c948aStart generating 2048 bit keys to make Nick happy (or maybe just2018-11-14T17:45:42ZLeigh B Stollerstoller@flux.utah.edua bit less unhappy).https://gitlab.flux.utah.edu/emulab/emulab-devel/commit/d6973c9c0c3357037eb5c4360f34bc02d6bea9d0Add another controller that needs to use the newer OID for control.2018-11-10T17:35:25ZMike Hiblerhibler@cs.utah.eduhttps://gitlab.flux.utah.edu/emulab/emulab-devel/commit/638c36f8a154db5a0bb8b0b90f56e5947322e4d1Alright, alright, I will report temps in Celsius (-c).2018-11-08T20:38:39ZMike Hiblerhibler@cs.utah.eduhttps://gitlab.flux.utah.edu/emulab/emulab-devel/commit/d13277d5d9152014fbba92493b4b7dd6fe1a627eAdd temperature querying to the power_powduino module.2018-11-08T20:17:23ZMike Hiblerhibler@cs.utah.edu
So powermon can get it. Also added -r to powermon to get raw output
from status command (no timestamped, syslog-style output).https://gitlab.flux.utah.edu/emulab/emulab-devel/commit/d2f2485996229d7497d3e3ebf709e51a4ec91c5cImplement a project disable, this has come up a few times where we want2018-11-08T18:22:27ZLeigh B Stollerstoller@flux.utah.eduto disallow login (and immediately log out) everyone in a project. See
the Admin tab on the Show Project page.https://gitlab.flux.utah.edu/emulab/emulab-devel/commit/6bdbebfb40f630c437f202713616748bdf7826b4bad bash syntax, bug only hit under FBSD and WCE bit not set.2018-11-08T17:55:38ZDan Readingdreading@flux.utah.eduhttps://gitlab.flux.utah.edu/emulab/emulab-devel/commit/15b80375cae3328214dac3ab6e6f97d5b28f0cddFix mysql error in login path.2018-11-08T13:25:43ZLeigh B Stollerstoller@flux.utah.eduhttps://gitlab.flux.utah.edu/emulab/emulab-devel/commit/48e879a4428efdd3387ea4ca8b0ed8aee305340dFix "size too small" error so that it does not email tbops, it is2018-11-08T13:19:36ZLeigh B Stollerstoller@flux.utah.edua user error.https://gitlab.flux.utah.edu/emulab/emulab-devel/commit/ee5f241d0dcaede24fbfe0fcd324111ba28bb711Implement OS list optimization described in issue #415. Lets try it on2018-11-07T21:05:05ZLeigh B Stollerstoller@flux.utah.eduthe Mothership for a while and see what breaks