- 17 Nov, 2017 1 commit
-
-
David Johnson authored
-
- 16 Nov, 2017 1 commit
-
-
David Johnson authored
This is pretty minimal "support", but it is working. I have some uncommitted fixes for event/linktest/iperf, however, as mentioned in issue #351.
-
- 15 Nov, 2017 2 commits
-
-
Elijah Grubb authored
The organization of the code follows the guidelines set by the ubuntu version extremely closely. Big differences to notice are some of the package name changes switching from apt-get to apk, the requirement of the --disable-ssl flag when running the configure command for pubsub and the methodology required to build a custom apk package to use our custom runit. Apk has lots of issues and argues against building a new .apk package as root, so runit-artifacts.sh creates a new user, gives them super user permissions, adds them to the abuild group and runs the runit-packager.sh script as this new user. Design of this solution was focused on doing as much as possible while remaining in root. Enjoy!
-
Mike Hibler authored
Replaced by 40-emulab.
-
- 14 Nov, 2017 1 commit
-
-
Mike Hibler authored
With it, iSCSI blockstores on Ubuntu16 and CentOS would not work.
-
- 10 Nov, 2017 1 commit
-
-
Mike Hibler authored
Also, add a print statement in the unmount code that Hussam added so that we can see how often this (still?) happens.
-
- 09 Nov, 2017 1 commit
-
-
Hussamuddin Nasir authored
Many LV segments fail on "dmsetup remove" because they are still mounted. Need to unmount them before the remove operation.
-
- 08 Nov, 2017 1 commit
-
-
Mike Hibler authored
Make sure the FS create actually fails before you cleanup and remove the new volume...
-
- 07 Nov, 2017 1 commit
-
-
Mike Hibler authored
We want it processed before the default file so that we can stop Emulab (local5) messages from going into "syslog".
-
- 06 Nov, 2017 1 commit
-
-
Mike Hibler authored
-
- 02 Nov, 2017 1 commit
-
-
Mike Hibler authored
We were setting up ipod and then calling "tmcc fullconfig" which re-fetched the ipod info causing a reset of the one-time secret. Thus the kernel had the wrong secret.
-
- 27 Oct, 2017 4 commits
-
-
David Johnson authored
I'm not sure if all containers will want stdin opened or attached on console (i.e. for the master process), but for now we'll just turn it on.
-
David Johnson authored
-
David Johnson authored
-
David Johnson authored
-
- 26 Oct, 2017 4 commits
-
-
Mike Hibler authored
-
David Johnson authored
This means that users can still use our ssh urls to reach containers that don't run sshd. We run a private sshd that has Ports to listen on, and Match blocks containing ForceCommand directives, which run docker exec $vnode_id <shell>. User can configure which shell.
-
Mike Hibler authored
Turns out the Linux raid tool (mdadm) will pick up fragmentary RAID metadata and complain mightily.
-
David Johnson authored
-
- 24 Oct, 2017 1 commit
-
-
David Johnson authored
We do this similarly to Xen. There's a new script (container2pty.py) that attaches to the Docker container, via the docker daemon, and exports its stdio as a pty. Then we run capture on a symlink to that pty. New options to capture tell it to keep retrying to open the pty maxretries times (we invoke with infinitely many retries); and to not prepend /dev to the device string.
-
- 20 Oct, 2017 1 commit
-
-
Mike Hibler authored
-
- 11 Oct, 2017 1 commit
-
-
Mike Hibler authored
Not sure why I singled out grub1 to not add that argument, it is documented to work and does. By not setting it, old CentOS images that used grub1 would hang at boot time for > 5 minutes causing a stated timeout and reboot. Once stated had tried that 3 times, it would stop doing the reboot and eventually the node would come up. I have no idea why it was hanging unless the console output was going to the real serial port (com1) and that was either generating garbage input causing grub to go interactive or causing output to block.
-
- 10 Oct, 2017 1 commit
-
-
Mike Hibler authored
This was the case where we would make a copy of the dom0 root FS to create the vnode's FS.
-
- 05 Oct, 2017 6 commits
-
-
David Johnson authored
-
David Johnson authored
-
David Johnson authored
-
David Johnson authored
-
David Johnson authored
(This might be a bandaid for another problem with docker's attach; I seem to get some garbage from some container stdout/stderr, especially in this case. Probably encoding that I'm not handling yet; but this papers over that.)
-
David Johnson authored
(Of course, there is no standard perl Docker Engine API, so I wrote my own thin perl library, basically error handling and JSON marshalling goo. But had to deal with LWP/http over UNIX socket to Docker, which is whacky; fortunately, there was a module, but I can confirm that LWP is a pain when you get off the beaten track. Anyway, I added a little client that is useful for debugging.) Also, I refactored things a bit so there is now an emulabize-image script that can be run to test emulabization of docker images separately from vnode creation. Also, add a specific Docker version of the prepare script. This actually gets run in image commit as an ONBUILD instruction. Also, always copy the image's master passwd files into /etc/emulab instead of using those installed by client-install. Those just don't apply at all here since we have no idea what the base image is; the uids/gids in the clientside dirs could be a complete mismatch for the image.
-
- 24 Sep, 2017 1 commit
-
-
David Johnson authored
-
- 23 Sep, 2017 1 commit
-
-
David Johnson authored
-
- 30 Aug, 2017 1 commit
-
-
Leigh B Stoller authored
node:card.port format, not node:card. Be that as it may, snmpit needs to change at some point to print node:iface instead.
-
- 29 Aug, 2017 5 commits
-
-
Mike Hibler authored
-
Mike Hibler authored
Just don't build it for now. Will have to fix iperf at some point.
-
Mike Hibler authored
-
Mike Hibler authored
No more hacky python proxy to the old django interface! No longer needed, as the REST API now covers everything we do. Even if we wanted to keep around the old API stub, it would need work as FreeNAS has switched to python 3 and many of the old API python modules are gone or renamed.
-
Mike Hibler authored
If one blockstore name was a subset of another (e.g., "foo" vs. "foo2") then the check code could get confused and not mount some iSCSI blockstores.
-
- 26 Aug, 2017 2 commits
-
-
Mike Hibler authored
-
Mike Hibler authored
-
- 18 Aug, 2017 1 commit
-
-
Mike Hibler authored
We were not returning the correct number of values.
-