Marc Fiuczynski [Wed, 15 Apr 2009 18:22:35 +0000 (18:22 +0000)]
set to 'failboot' when there are no recognized ethernet interfaces for the production kernel
Marc Fiuczynski [Wed, 15 Apr 2009 18:16:27 +0000 (18:16 +0000)]
only look at /etc/modprobe.d/{blacklist,blacklist-compat,blacklist-firewire}
Stephen Soltesz [Mon, 13 Apr 2009 19:13:51 +0000 (19:13 +0000)]
Tagging module BootManager - BootManager-3.2-18
looks like some modprobe fixes
added nuke_lvm functions
use 'sort' instead of 'sorted' for backward compatibility.
Marc Fiuczynski [Fri, 13 Mar 2009 21:53:57 +0000 (21:53 +0000)]
Needed to fix the case when there is lvm partition information on a
disk that we want to use a raw disk, which causes confusion in later
LVM operations and prevents the machine from being successfully
reinstalled.
Stephen Soltesz [Fri, 13 Mar 2009 15:56:41 +0000 (15:56 +0000)]
remove use of 'sorted' which is not supported by older versions of python.
Marc Fiuczynski [Fri, 27 Feb 2009 21:53:33 +0000 (21:53 +0000)]
Make sure to take the blacklisted drivers into account when writing out aliases for disk/nic drivers.
Thierry Parmentelat [Thu, 26 Feb 2009 18:35:33 +0000 (18:35 +0000)]
svn:keywords
Thierry Parmentelat [Thu, 26 Feb 2009 17:41:00 +0000 (17:41 +0000)]
Tagging module BootManager - BootManager-3.2-17
from trunk : upload logs on myplc
from trunk : early sshd start
tweaked fstab for remount after kexec
modprobe write: uses new module from pyplnet
Thierry Parmentelat [Thu, 26 Feb 2009 17:36:51 +0000 (17:36 +0000)]
merge from trunk : upload log & early sshd start
the rest of it unintentionally made it into changeset 12257
Thierry Parmentelat [Thu, 26 Feb 2009 17:25:53 +0000 (17:25 +0000)]
undo this one for building rc26
Stephen Soltesz [Thu, 26 Feb 2009 16:05:04 +0000 (16:05 +0000)]
address a continuing issue on production machines where a node will fsck,
mount during BM, but after kexec, the fs will be corrupted again and hang.
changing these values will ensure that the production system runs fsck again.
not at all sure where the source of the problem is coming from.
Marc Fiuczynski [Tue, 24 Feb 2009 21:40:57 +0000 (21:40 +0000)]
Updated to use modprobe module to update an existing /etc/modprobe.conf file rather than blowing it away.
Marc Fiuczynski [Tue, 24 Feb 2009 04:20:26 +0000 (04:20 +0000)]
Make sure dm_mod is loaded when running on a kernel where this has been built as a module
Stephen Soltesz [Fri, 20 Feb 2009 21:36:34 +0000 (21:36 +0000)]
Tagging module BootManager - BootManager-3.2-16
removed 'sorted' so older versions of python could continue to run code
fixed WriteNetworkConfig so that it returns the result of calls to the API
added e2fsck prior to mounting any filesystem.
Stephen Soltesz [Wed, 4 Feb 2009 16:04:37 +0000 (16:04 +0000)]
the 'sorted' function does not exist in earlier versions of python. reverted
code to use 'sort' to work on older bootcds.
Daniel Hokka Zakrisson [Mon, 19 Jan 2009 21:22:17 +0000 (21:22 +0000)]
Return the value from the API.
Stephen Soltesz [Sat, 10 Jan 2009 01:12:47 +0000 (01:12 +0000)]
run fsck prior to mount. should address hanging-mount failures on
/dev/planetlab/vservers
Marc Fiuczynski [Tue, 30 Dec 2008 22:52:21 +0000 (22:52 +0000)]
Added in Daniel's support to only create a small /vserver and leave
remaining disks alone so that their partitions can be used as raw
disk extents by slices
Tagging module BootManager - BootManager-3.2-15
Marc Fiuczynski [Tue, 30 Dec 2008 22:49:01 +0000 (22:49 +0000)]
revert so I can use module-tag to upgrade the taglevel
Marc Fiuczynski [Tue, 30 Dec 2008 22:20:39 +0000 (22:20 +0000)]
Added in Daniel's support to only create a small /vserver and leave
remaining disks alone so that their partitions can be used as raw wdisk
extents by slices.
Marc Fiuczynski [Wed, 24 Dec 2008 15:02:50 +0000 (15:02 +0000)]
applied Daniel's patch to bring rawdisk support to the branch
Daniel Hokka Zakrisson [Mon, 15 Dec 2008 22:11:57 +0000 (22:11 +0000)]
Tagging module BootManager - BootManager-3.2-14
Use pyplnet.
Order devices by PCI slot number.
Module debugging code.
Daniel Hokka Zakrisson [Mon, 15 Dec 2008 20:55:36 +0000 (20:55 +0000)]
Use pyplnet to build the network configuration.
Include it in the tarball for older BootCDs.
Daniel Hokka Zakrisson [Thu, 20 Nov 2008 20:47:23 +0000 (20:47 +0000)]
Use the PCI slot to order the interfaces.
Marc Fiuczynski [Tue, 18 Nov 2008 22:57:54 +0000 (22:57 +0000)]
Minor cleanup:
- added a modules.close()
- print the kexec command for the bm.log to both screen and log
Added functionality:
- Printing the set of modules that have not been unloaded yet.
- Can list a set of modules that should be explicitly unloaded. Right
now this has to be done by manually editing this python module. I
suppose in the future this should be something that can be obtained
from a node attribute of some sort
Stephen Soltesz [Tue, 30 Sep 2008 21:51:37 +0000 (21:51 +0000)]
merge from trunk 10727:10728
Stephen Soltesz [Tue, 30 Sep 2008 21:32:18 +0000 (21:32 +0000)]
Merged changes from trunk
Stephen Soltesz [Fri, 26 Sep 2008 19:16:18 +0000 (19:16 +0000)]
Tagging module BootManager - BootManager-3.2-13
include latest module tweaks in current production bootmanager.
Stephen Soltesz [Fri, 26 Sep 2008 19:14:51 +0000 (19:14 +0000)]
include in branch for current production nodes.
addresses boot hangs for dc7800 nodes and other machines at princeton.
Stephen Soltesz [Tue, 8 Jul 2008 19:38:48 +0000 (19:38 +0000)]
Tagging module BootManager - BootManager-3.2-12
correctly convert port number to int before creating HTTPSConnection() object,
plus other changes to file to accomodate this.
Stephen Soltesz [Thu, 3 Jul 2008 22:23:14 +0000 (22:23 +0000)]
convert port to an int before passing it to httplib.HTTPSConnection(). It
fails otherwise.
Also, rename a local variable from 'int' to 'inter' to make available the
conversion function for the above.
Daniel Hokka Zakrisson [Thu, 3 Jul 2008 01:16:14 +0000 (01:16 +0000)]
-ldl is required.
Daniel Hokka Zakrisson [Wed, 2 Jul 2008 22:42:29 +0000 (22:42 +0000)]
Tagging module BootManager - BootManager-3.2-11
More hacks.
Daniel Hokka Zakrisson [Wed, 2 Jul 2008 22:39:09 +0000 (22:39 +0000)]
This seems to catch everything.
Daniel Hokka Zakrisson [Tue, 1 Jul 2008 20:57:30 +0000 (20:57 +0000)]
Tagging module BootManager - BootManager-3.2-10
Make the hack work.
Daniel Hokka Zakrisson [Tue, 1 Jul 2008 20:54:53 +0000 (20:54 +0000)]
Fix typos and stuff.
Daniel Hokka Zakrisson [Tue, 1 Jul 2008 19:50:05 +0000 (19:50 +0000)]
Copy the library once per boot, in case it gets updated.
Daniel Hokka Zakrisson [Tue, 1 Jul 2008 19:40:41 +0000 (19:40 +0000)]
As it turns out, glob is also an offender...
Daniel Hokka Zakrisson [Tue, 1 Jul 2008 16:21:13 +0000 (16:21 +0000)]
Tagging module BootManager - BootManager-3.2-9
Ugly hack stuff.
Daniel Hokka Zakrisson [Tue, 1 Jul 2008 16:17:42 +0000 (16:17 +0000)]
Add ugly hack to workaround O_CLOEXEC vs. O_ATOMICLOOKUP.
Faiyaz Ahmed [Fri, 27 Jun 2008 20:33:34 +0000 (20:33 +0000)]
Tagging module BootManager - BootManager-3.2-8
move the UpdateNodeConfiguration step after the NodeUpdate step in ChainBoot
Faiyaz Ahmed [Fri, 27 Jun 2008 20:24:12 +0000 (20:24 +0000)]
move the UpdateNodeConfiguration step after the NodeUpdate step in ChainBoot
Thierry Parmentelat [Mon, 26 May 2008 13:07:08 +0000 (13:07 +0000)]
Branch 5.0 for module BootManager created from tag BootManager-3.2-7
Thierry Parmentelat [Sat, 24 May 2008 16:19:50 +0000 (16:19 +0000)]
Tagging module BootManager - BootManager-3.2-7
dont unload cpqphp
Thierry Parmentelat [Sat, 24 May 2008 16:18:31 +0000 (16:18 +0000)]
dont unload cpqphp
Thierry Parmentelat [Thu, 24 Apr 2008 17:01:27 +0000 (17:01 +0000)]
Tagging module BootManager - BootManager-3.2-6
changes in the state automaton logic
root+swap = 7G
usb-key threshhold increased to 17 G
bootstrafs selection logic altered - uses /etc/planetlab/nodefamily instead of GetPlcRelease
Thierry Parmentelat [Thu, 24 Apr 2008 07:47:51 +0000 (07:47 +0000)]
simpler heuristic, same as for creating bootcd - less code, fewer bugs
Thierry Parmentelat [Wed, 23 Apr 2008 15:35:06 +0000 (15:35 +0000)]
review how to figure nodefamily:
* use /etc/planetlab/nodefamily from the bootcd if present
* no more hard-coded list ok known pldistros; has i386 and x86_64 hard-coded
* change semantics of nodegroup names:
** may be an arch, like 'x86_64'
** or a nodefamily as-is, e.g. 'onelab-x86_64'
Stephen Soltesz [Mon, 21 Apr 2008 18:34:24 +0000 (18:34 +0000)]
BM now recognizes two distinct forms of 'debug' mode.
1) 'dbg' comes from failing to reach 'boot' state.
2) 'diag' comes from an admin explicitly setting the node to
'diagnostic'/'debug' mode.
Previously there was no way to tell the diff. And, users trying to
reconfigure their machines, would reboot the node, but not reset the boot
state through the gui. The result would be that the machine would pull the
current boot state from PLC (which happened to be debug from previous
failures) and the node would appear to the user to still be broken. THis adds
unnecessary time to the support@ list in mis-understanding what's going on for the
user, when everything is actually in place on the node; it's just in the wrong
boot state.
Thus, having BM automatically try to perform the 'bootRun()' when in 'dbg'
state will prevent a correct configuration from stalling the node from coming
online. In this way, we have moved the requirement for setting the boot state
through the GUI by the user to BM.
I think this is preferrable.
Stephen Soltesz [Mon, 21 Apr 2008 16:31:38 +0000 (16:31 +0000)]
Add additional size to ROOT_SIZE to allow netflow data to be collected without
running out of room. Our initial trials on the public pl with 3GB root
partitions resulted in out of space errors, and lost netflow logs.
A preferable solution might be to have an independent partition, or to have a
reserved space in the /vserver partition, but adding a new parition is too
large a change too soon prior to relase of 4.2. And, putting non-slice data
into /vserver seems inappropriate design.
Stephen Soltesz [Fri, 11 Apr 2008 21:18:01 +0000 (21:18 +0000)]
Got complaints via RT that users are using usb sticks with 8GB of flash. This
causes BM to try to add the usb stick as part of the LVM volume. This fix
just increases the size of the flash device to avoid being included.
preferably, BM should avoid adding the device's bootmedia to the LVM. :-)
Thierry Parmentelat [Wed, 26 Mar 2008 09:34:01 +0000 (09:34 +0000)]
Tagging module BootManager - BootManager-3.2-5
renamed step InstallBootstrapRPM into InstallBootstrapFS
reviewed selection of bootstrapfs, based on nodegroups, for multi-arch deployment
import pypcimap rather than pypciscan
initial downlaoding of plc_config made more robust
root and /vservers file systems mounted ext3
calls to BootGetNodeDetails replaced with GetNodes/GetNodeNetworks
also seems to be using session-based authentication rather than former hmac-based one
Stephen Soltesz [Mon, 24 Mar 2008 16:33:36 +0000 (16:33 +0000)]
display the source file path in the log messages to determine specifically
which 'bootstrapfs' was downloaded, since we're using different directories to
differentiate nodegroup images.
Faiyaz Ahmed [Tue, 18 Mar 2008 20:13:43 +0000 (20:13 +0000)]
bump config version
Faiyaz Ahmed [Tue, 18 Mar 2008 19:48:44 +0000 (19:48 +0000)]
wrong api server.
Faiyaz Ahmed [Tue, 18 Mar 2008 15:57:22 +0000 (15:57 +0000)]
Key error. fixed. Sorry for the delay, Thierry.
Faiyaz Ahmed [Mon, 17 Mar 2008 19:22:58 +0000 (19:22 +0000)]
wrong key. Fixed.
Faiyaz Ahmed [Mon, 17 Mar 2008 15:44:36 +0000 (15:44 +0000)]
remove debug line.
Faiyaz Ahmed [Fri, 14 Mar 2008 20:53:12 +0000 (20:53 +0000)]
Keep session around instead of calling the API for a new one every time a call is made.
Faiyaz Ahmed [Fri, 14 Mar 2008 19:16:15 +0000 (19:16 +0000)]
BootNotifyOwners now accepts session auth.
Faiyaz Ahmed [Fri, 14 Mar 2008 03:08:43 +0000 (03:08 +0000)]
use Notify API function
Faiyaz Ahmed [Fri, 14 Mar 2008 02:07:09 +0000 (02:07 +0000)]
syntax error.
Faiyaz Ahmed [Fri, 14 Mar 2008 02:02:11 +0000 (02:02 +0000)]
get site_id
Faiyaz Ahmed [Fri, 14 Mar 2008 00:51:28 +0000 (00:51 +0000)]
Unclear why this was needed. Removed Boot API calls.
Faiyaz Ahmed [Thu, 13 Mar 2008 23:31:57 +0000 (23:31 +0000)]
dont know how this got in there, but reverting to original copy
Faiyaz Ahmed [Thu, 13 Mar 2008 23:27:10 +0000 (23:27 +0000)]
hmac auth seems to not work in some cases. switching to session auth.
Stephen Soltesz [Thu, 13 Mar 2008 19:04:20 +0000 (19:04 +0000)]
Took out the get_devices code and moved it to pypcilib. Changed import
statement.
Stephen Soltesz [Wed, 12 Mar 2008 18:18:36 +0000 (18:18 +0000)]
No longer needed. fixed the right way.
Stephen Soltesz [Wed, 12 Mar 2008 18:18:20 +0000 (18:18 +0000)]
No longer needed. Fixed the right way.
Stephen Soltesz [Wed, 12 Mar 2008 18:17:46 +0000 (18:17 +0000)]
Added a replacement code for get_devices() in case this runs on older boot cds
that cannot load the pciscan.so library.
Thierry Parmentelat [Sun, 9 Mar 2008 20:23:41 +0000 (20:23 +0000)]
fixed 2 glitches
Thierry Parmentelat [Sun, 9 Mar 2008 17:18:53 +0000 (17:18 +0000)]
cross-module change for multi-arch myplc
* name of the bootstrap tarball changed into
bootstrapfs-<id>-<arch>.tar.bz2
with id=<planetlab-distro> for the main tarball
and id=<extension> for the extensions tarballs
* bootmanager to use node's nodegroups to figure the tarball to use
* the noderepo rpm allows to install /var/www/html/install-rpms/<repo>
==
status
* checkpoint version to verify that mono-arch mono-distro still works
* build phase tested
* but some parts are still missing for complete multi-arch behaviour:
* bootstrapfs's rpm name should sontain pldistro and arch (as it is a noarch rpm)
* yum.php.conf also needs tunings
Thierry Parmentelat [Sun, 9 Mar 2008 16:57:02 +0000 (16:57 +0000)]
renaming bootmanager step InstallBootstrapRPM into InstallBootstrapFS
Faiyaz Ahmed [Wed, 5 Mar 2008 22:26:13 +0000 (22:26 +0000)]
Get plc_config via PlanetLabConf
Stephen Soltesz [Wed, 20 Feb 2008 18:22:51 +0000 (18:22 +0000)]
Adds backward compatibility to the BootManager for older bootcds. Rather than
failing to load the new pciscan library, it will succeed with the old
behavior. In particular some devices will fail to be detected using the old
bootcd. But, this shouldn't be that much of a problem.
Daniel has proposed that the pypciscan.so library simply be re-written in
python by parsing /proc/bus/pci/devices to create a structure like:
pypciscan.get_devices()
returns {'<domain>:<bus>:<dev>.<func>' :
(<vendor id>, <device id>, <subvendor id>, <subdevice id>, <device class << 8 | progif>)}
for all PCI devices.
I agree that this would be a better approach. Would have to check that the
older bootcd kernel exports all of this information, then rewrite the module.
Marc Fiuczynski [Fri, 15 Feb 2008 22:49:34 +0000 (22:49 +0000)]
mount explicitly with -t ext3; be more verbose with log info
Marc Fiuczynski [Fri, 15 Feb 2008 22:20:06 +0000 (22:20 +0000)]
This fix to the MakeRequest() method gets rid of the hiddeous
exception message that shows up when a node goes into debug mode. For
example, in the past one would see this type of message on the
console:
Exception exceptions.OSError: (2, 'No such file or directory', '/tmp/tmpBjmo14') in <bound method _TemporaryFileWrapper.__del__ of <closed file '<fdopen>', mode 'w+b' at 0xb7b108d8>> ignored
This is no longer the case.
Thierry Parmentelat [Fri, 8 Feb 2008 09:24:16 +0000 (09:24 +0000)]
Tagging module BootManager -- from bootmanager-3.2-3 to bootmanager-3.2-4
usage of wireless attributes fixed and tested
breakpoints cleaned up (no change for production)
less alarming message when floppy does not get unloaded
Marc Fiuczynski [Tue, 5 Feb 2008 16:09:59 +0000 (16:09 +0000)]
- not printing ominous warning message: "Unknown effect on other platforms"
- moved 4 second sleep after e1000 unload into module != "" branch
Thierry Parmentelat [Tue, 5 Feb 2008 07:28:06 +0000 (07:28 +0000)]
cleanup of breakpoints - no functional change
Thierry Parmentelat [Tue, 5 Feb 2008 07:26:39 +0000 (07:26 +0000)]
fixes for wireless interfaces
Thierry Parmentelat [Thu, 31 Jan 2008 14:16:57 +0000 (14:16 +0000)]
Tagging module BootManager -- from bootmanager-3.2-2 to bootmanager-3.2-3
network config : support the full set of settings from ifup-wireless - see also http://svn.planet-lab.org/svn/MyPLC/tags/myplc-4.2-1/db-config
removes legacy calls to PlanetLabConf.py
refrains from unloading floppy
first draft of the dual-method for implementing extensions (bootstrapfs-like images or yum install)
Stephen Soltesz [Mon, 28 Jan 2008 15:32:57 +0000 (15:32 +0000)]
A patch to avoid unloading the floppy module before chain booting the node
into the production kernel. This prevents the HP dc7800 from hanging during boot
up. Unknown cause, since the machine has no floppy drive.
Thierry Parmentelat [Wed, 23 Jan 2008 11:34:53 +0000 (11:34 +0000)]
yum-based extensions :
- fetches yum.conf
- mounts /proc
first draft, apparently works, needs more tests though
Thierry Parmentelat [Thu, 17 Jan 2008 14:09:14 +0000 (14:09 +0000)]
yum's return code is not reliable - ignore it
Thierry Parmentelat [Mon, 14 Jan 2008 14:59:48 +0000 (14:59 +0000)]
--editor-cmd=emacs
Thierry Parmentelat [Fri, 11 Jan 2008 17:11:34 +0000 (17:11 +0000)]
First draft of a dual method for installing extensions
- core tarball always installed through the tarball
- extensions (nodegroups) are then attempted by the same method
i.e. by fetching PlanetLab-Bootstrap-%s.tar.bz2
- if that fails, then we try via
yum groupinstall extension<nodegroup>
NOTE.
due to a bug with GetNodes that causes the nodegroups fetching part to fail
I could not have the tests completed yet
However nodes should correctly install the core software
Faiyaz Ahmed [Wed, 9 Jan 2008 20:33:41 +0000 (20:33 +0000)]
PlanetLabConf.py no longer exists.
Thierry Parmentelat [Tue, 8 Jan 2008 11:49:43 +0000 (11:49 +0000)]
ready for tagging
reviewed URLs and %{plrelease}
Stephen Soltesz [Tue, 18 Dec 2007 18:54:48 +0000 (18:54 +0000)]
Cross module commit for 'diag' and 'disabled' node states.
Thierry Parmentelat [Wed, 12 Dec 2007 14:01:51 +0000 (14:01 +0000)]
restoring operations default settings for breakpoint mode
Thierry Parmentelat [Wed, 12 Dec 2007 12:12:20 +0000 (12:12 +0000)]
cosmetic
Thierry Parmentelat [Wed, 12 Dec 2007 12:05:43 +0000 (12:05 +0000)]
fixed so as to use correct default value when prompt is on
Daniel Hokka Zakrisson [Fri, 7 Dec 2007 23:35:14 +0000 (23:35 +0000)]
Fix indentation.
Daniel Hokka Zakrisson [Fri, 7 Dec 2007 23:30:00 +0000 (23:30 +0000)]
Support multihoming on a single interface.
Daniel Hokka Zakrisson [Thu, 6 Dec 2007 17:12:18 +0000 (17:12 +0000)]
Add all matching modules.
Let the pcimap decide which modules to load.
Daniel Hokka Zakrisson [Thu, 6 Dec 2007 03:29:32 +0000 (03:29 +0000)]
Deal with values containing = rather than bailing out on them.
Daniel Hokka Zakrisson [Wed, 5 Dec 2007 21:27:03 +0000 (21:27 +0000)]
Use tagxid.
Daniel Hokka Zakrisson [Wed, 5 Dec 2007 19:37:37 +0000 (19:37 +0000)]
Don't need the ESSID or IWCONFIG in BootManager.
Write the MODE as well.
Marc Fiuczynski [Wed, 5 Dec 2007 19:05:18 +0000 (19:05 +0000)]
no longer 'pushd BootManager' due to wacky build environment