History | View | Annotate | Download (64 kB)
Initial implementation of drbd8 template type
This is a partially working drbd8 template type. It does: - add/remove - startup/failover/shutdown
Not working is replace disks, which needs custom code for this template.
Reviewed-by: imsnah
Allow DRBD8 to sync after sb1-pri with no changes
Currently the way we shutdown or startup disks seems to make DRBD8unhappy. Until we rewrite the sequence of (de)activation, allow DRBD toconnect after a sb1-pri condition with no changes to the data.
Add DRBD8 class for handling drbd version 8.x
This duplicates some code from the DRBDev class, but not very much, andit will be expanded with the new functionality available for the 8.xversion. Currently the code is not accessible outside the module.
This patch introduces a dependency on the pyparsing module....
Move/rename _IsValidMeta to base drbd class
The DRBDev._IsValidMeta only checks for the metadata device size. Sincethis is a useful check (but not complete) for DRBD8, move it to the baseclass and name it _CheckMetaSize.
More abstractions from DRBD7 to base class
This moves the _SetFromMinor and _MassageProcData to the base class.
Improve out-of-minors handling
Currently, the out-of-minors handling is not very good: though both MDand DRBD functions for finding an unused minor can return None, only theDRBD code checks for this case.
This patch improves this by making the functions _FindUnusedMinor raise...
Move some methods from DRBDev to BaseDRBD
Since some of the methods and constants are valid for both 0.7 and 8.xversions, we move them to the base class.
Split some DRBD functionality based on versions
This is a small split of some functionality from the DRBDev class into abase drbd class that holds just a few things, in order to make migrationto drbd 8.x easier.
Abstract more strings values into constants
Currently, the disk types are defined using constants in the code.Convert those into constants so that we can easily find them and checktheir usage.
Note that we don't rename the values of the constants as they are used...
Remove the shebang from modules
Since modules are not directly executables, remove the shebang fromthem. This helps with lintian warnings.
Also make the autogenerated _autoconf.py contain two comment lines atthe beginning, like the other modules.
Reviewed-by: ultrotter
Fix mdadm -D output compatibility issues.
Also add some debugging output.
Fix compatibility problems with mdadm-2.5.6
This fixes a compatibility problem with recent mdadm (2.x?) byreimplementing the zero-ing of the superblocks in ganeti itself.
Style changes for pep-8 and python-3000 compliance.
This changes the raising of exceptions from: raise Exception, valueto raise Exception(value)
as the first form will be removed in python-3000 and the second form ispreferred now.
The changes also involve a few cases of changing from raising standard...
Add instance name to LVM volume as a tag.
Reviewed-by: iustinp
Comment formatting updates.
Do the secondary check and subsequently allocate the drive on all availablelogival volumes. This lets you use more than one when none of them can supportyour full drive size.
Reviewed-By: iustinp
Initial commit.