Revision:

Revisions

# Date Author Comment
7a215c45 05/29/2014 06:31 pm Dimitris Aragiorgis

Check drbd helper only in VM capable nodes

Upon change of enabled disk templates Ganeti checks for a valid drbd
helper among all nodes. Let those nodes be only the VM capable ones.

Signed-off-by: Dimitris Aragiorgis <>

f3d59dc2 05/29/2014 02:08 pm Dimitris Aragiorgis

Disable CheckFileStoragePathNotWritable test

..because it fails when runs as root.

Signed-off-by: Dimitris Aragiorgis <>

6e7d075c 05/29/2014 02:08 pm Dimitris Aragiorgis

(grnet) Remove deprecated physical_id if found

In 2.8 disks have been added to runtime files for hotplug support.
Back then physical_id slot existed. Remove this slot in the early
stage of Disk.FromDict() otherwise an exception will be raised.

Signed-off-by: Dimitris Aragiorgis <>

6ebbfc37 05/29/2014 02:08 pm Dimitris Aragiorgis

(grnet) Upgrade runtime files

Each disk entry should include (disk dict, link name, disk uri).

When hotplug was backported in 2.8 access uri was not supported.
Thus the relevant entry for each disk entry might be missing from
the runtime files. Add an empty string in this case....

08879a9d 05/29/2014 02:08 pm Dimitris Aragiorgis

ifdown: Use new methods to unconfigure NICs

We unconfigure a NIC (invoke ifdown script) during:

  • instance cleanup
  • finalizing successful migration on source node
  • hot-unplugging a NIC

In case of migration we do only a local cleanup.

Signed-off-by: Dimitris Aragiorgis <>

1fda39c4 05/29/2014 02:08 pm Dimitris Aragiorgis

ifdown: Use new methods to create NIC files

NIC files containing corresponding tap name are created during:

  • instance startup
  • NIC hot-add

For compatibility we continue creating indexed based NIC files along
with uuid based ones.

Signed-off-by: Dimitris Aragiorgis <>

3889f749 05/29/2014 02:08 pm Dimitris Aragiorgis

ifdown: Introduce _UnconfigureNIC() helper method

This method takes a NIC object, creates the proper invironment
and invokes ifdown script.

It takes an extra boolean argument only_local which is passed
to ifdown script as the second positional argument. It states...

79f3e9e9 05/29/2014 02:08 pm Dimitris Aragiorgis

ifdown: Make Read/LoadKVMRuntime classmethods

.. and make LoadKVMRuntime() take instance_name rather than the
whole instance object as first argument. This will be needed during
instance cleanup where we the instance object is not available.

We are going to retrieve current NIC configuration from the runtime...

0d2863a2 05/29/2014 02:08 pm Dimitris Aragiorgis

ifdown: Extract env creation from ConfigureNic()

Introduce new helper method that creates the environment passed
to ifup/ifdown scripts. Instance tags and NIC index will be passed
only during ifup script since only then are available and
valid. Both can change until a NIC gets removed and thus will not...

aec254f5 05/29/2014 02:08 pm Dimitris Aragiorgis

ifdown: Introduce helper methods

Until now Ganeti upon TAP creation, a NIC file was created
under $RUNDIR/kvm-hypervisor/nic/<instance_name>/<nic_index>

Since NICs have obtained a UUID, we are going to create another
file named after its UUID. This will be needed during ifdown...

18f16482 05/29/2014 02:08 pm Dimitris Aragiorgis

ifdown: Change kvm-if* scripts

  • Rename kvm-vif-bridge to kvm-ifup-custom
  • Search if /etc/ganeti/kvm-if*-custom is available
    and execute it instead
  • Pass positional argument to custom script

Signed-off-by: Dimitris Aragiorgis <>

36774e23 05/29/2014 02:08 pm Dimitris Aragiorgis

ifdown: Add example kvm-ifdown script

This script currently does nothing more that calling user the
user provided one if it exists.

User provided script should be placed under /etc/ganeti/
and named `ganeti-kvm-ifdown`.

Signed-off-by: Dimitris Aragiorgis <>

d43a4dd9 05/29/2014 02:08 pm Dimitris Aragiorgis

(ipfix) Allow NICs with mode=routed and ip=none

This allows us to define an IPv6 only network (currently with a
dummy IPv4 network) with connectivity mode 'routed' and let
the NICs inside this network have only IPv6 address (auto-generated
from their MAC and the network's prefix)....

f665d9de 05/29/2014 02:08 pm Dimitris Aragiorgis

(ext) Do not remove disks if --keep-disks and DT_EXT

Signed-off-by: Dimitris Aragiorgis <>

1a1af037 05/29/2014 02:08 pm Dimitris Aragiorgis

(ext) Override disk_cache hvp with disk param in ext

This is a hack that brings disk_cache hypervisor param
at disk level. This is supported only for disks of ext
template that allow arbitrary params. The corresponding
param that should be used is 'cache'....

764fce21 05/29/2014 02:08 pm Dimitris Aragiorgis

(ext) Pass disk geometry in kvm command

Currently we allow this feature only for ext templates that
allow arbitrary params per disk. If both 'heads' and 'secs'
params are given then 'cyls' is calculated from the disk size.

TODO: export these params in IDISK_PARAMS since the can be...

dc80cc40 05/29/2014 02:08 pm Dimitris Aragiorgis

(ext) Export logical_id info to hooks env

DISK_ID as the second part of logical_id

Signed-off-by: Dimitris Aragiorgis <>

587832ed 05/29/2014 02:07 pm Dimitris Aragiorgis

(b64) Use base64 encoding in networks' bitarrays

This is needed for GRNET'S production environment.

Signed-off-by: Dimitris Aragiorgis <>

7d81bb8b 05/29/2014 02:07 pm Dimitris Aragiorgis

(snap) Snapshot support for ExtStorage

Extend existing RPC params with the snapshot name and
add allow snapshot not only for LVM but also for EXT.

Signed-off-by: Dimitris Aragiorgis <>

ab0c6a39 05/29/2014 02:07 pm Dimitris Aragiorgis

(grnet) Move disk options before nic ones in kvm command

Older versions of Ganeti did ensure that during startup
disk devices will be inserted before nic devices in PCI
configuration space. KVM inserts devices to PCI slots
depending on the order of command line options....

8e4aacdc 05/29/2014 02:07 pm Ilias Tsitsimpis

(2.13) Pass the access parameter to ExtStorage template

Add the ExtStorage template to the set of templates that accept the
'access' parameter. The default 'access' of the node-group for
ExtStorage devices will be 'kernelspace'.

Update the man page for gnt-instance to state that ExtStorage templates...

6c6b4df2 05/29/2014 02:07 pm Ilias Tsitsimpis

(2.13) Handle IDISK_ACCESS parameter in ComputeDisks

The IDISK_ACCESS disk parameter was not handled in the 'ComputeDisks'
function, thus the 'access' parameter was ignored during the instance
creation. This patch fixes this and also fixes a typo in
'_VerifyDiskModification'....

13d30fe9 05/29/2014 02:07 pm Ilias Tsitsimpis

(2.13) Implement GetUserspaceAccessUri for ExtStorage

Allow ExtStorage devices to support userspace access.
The 'attach' script of an ExtStorage provider is now allowed to return
more than one line. The first line will contain as always the block
device path. Each one of the extra lines will contain a URI to be used...

87e9bdb7 05/29/2014 02:07 pm Ilias Tsitsimpis

(2.13) Move ExtStorage code out from bdev

Move the ExtStorage related code out from bdev to a new
file called 'extstorage.py'.

Signed-off-by: Ilias Tsitsimpis <>
Signed-off-by: Thomas Thrainer <>
Reviewed-by: Thomas Thrainer <>...

66a8bb56 05/29/2014 02:07 pm Ilias Tsitsimpis

(2.13) Design document for ExtStorage userspace access

This patch extends the 'shared-storage' design document and more
specifically the ExtStorage Interface to support userspace disk access.

Signed-off-by: Ilias Tsitsimpis <>
Signed-off-by: Thomas Thrainer <>...

ffa2756e 05/29/2014 02:07 pm Ilias Tsitsimpis

(2.13) Add 'access' disk option to man pages

Update 'gnt-instance' man page and document the 'access' disk option.
Also fix a typo in 'metavg' disk parameter.

Signed-off-by: Ilias Tsitsimpis <>
Signed-off-by: Klaus Aehlig <>...

4f3bdf5a 05/29/2014 02:07 pm Ilias Tsitsimpis

(2.13) Make 'access' an optional disk parameter

This patch makes 'access' an optional disk parameter just like
spindles, mode, name, vg and metavg. This option can only be set to
'kernelspace' or 'userspace'. When 'userspace' is used, the instance
will access this disk directly without going through a block device....

fc1ca919 05/29/2014 02:07 pm Ilias Tsitsimpis

(2.13) Add DiskParams to Disk object

The 'DiskParams' slot was missing from Haskell's Disk objects.
Since Wconfd is now responsible for writting the config file this was
causing the 'params' slot to not be written in the config file.

Signed-off-by: Ilias Tsitsimpis <>...

7f5289fd 05/29/2014 02:07 pm Ilias Tsitsimpis

(2.13) Rename DiskParams to GroupDiskParams

DiskParams was used for the cluster/group disk parameters type. This
patch renames it to GroupDiskParams and uses the DiskParams type for
the parameters of one single Disk object.

Signed-off-by: Ilias Tsitsimpis <>...

7f29311a 05/29/2014 02:07 pm Klaus Aehlig

(2.11) Add andRestArguments to IDiskParams

In this way, we cann pass through the opaque parameters
required for disk creation and modification in the case of
external storage.

Signed-off-by: Klaus Aehlig <>
Reviewed-by: Petr Pudlak <>...

88dbf231 05/29/2014 02:07 pm Klaus Aehlig

(2.11) Add function providing the canonical andRestArguments

The field catching the remaining fields will always be of the same
shape, so add a function for this to make usage simple.

Signed-off-by: Klaus Aehlig <>
Reviewed-by: Petr Pudlak <>...

c26548b8 05/29/2014 02:07 pm Klaus Aehlig

(2.11) Add genAndRestArguments :: Gen (Map String JSValue)

So that objects using AndRestArguments are available for testing.
As the AndRestArguments are intended for passing through additional
parameters passed on the command line, we restrict them to the...

759288ed 05/29/2014 02:07 pm Klaus Aehlig

(2.11) Add additional constructor AndRestArguments to OptionalType

A field of this type will capture all the remaining fields
of an object as JSValues. Obviously, the intended use is
to have precisely one such field. This mechanism will allow
to pass opaque values trough, as it is, e.g., required for...

9d507046 05/29/2014 02:07 pm Ilias Tsitsimpis

(2.11) Add 'provider' to IDiskParams

IDISK_PROVIDER was included in python's IDISK_PARAMS, so it
should also be included in the Haskell code.

Now that luxid creates and enqueues jobs, without this patch the
ExtStorage interface is broken as the user can not pass the disk...

d4928417 05/29/2014 02:07 pm Klaus Aehlig

(2.11) Make BlockDev subclasses adhere the interface for Create

In commit 702c3270 two new parameters were added to the
Create function of BlockDev. Make subclasses also adhere
this specification.

Signed-off-by: Klaus Aehlig <>
Reviewed-by: Petr Pudlak <>

3317a3e5 05/29/2014 02:07 pm Klaus Aehlig

(2.11) Make BlockDev subclasses adhere to new interface

In commit 702c3270 two new parameters were added to the
constructor of BlockDev. Make the subclassess accept these
additional parameters as well.

Signed-off-by: Klaus Aehlig <>
Reviewed-by: Petr Pudlak <>

9242db4a 05/29/2014 02:07 pm Dimitris Aragiorgis

(2.11) Make disk.name and disk.uuid available in bdev

Until now Disk name and uuid was not available on bdev level.
In case of ExtStorage, this info is useful, and may be for other
templates in the future too.

This patch treats the name and uuid object slots just like the size...

d93e2477 05/29/2014 02:07 pm Dimitris Aragiorgis

(2.13) kvm: Add migration capabilities as an hvparam

Latest QEMU versions support various migration capabilities. Each
can be enabled/disabled with 'migrate_set_capability' monitor
command.

Version 1.7.0 defines x-rdma-pin-all, auto-converge, zero-blocks,...

a2f9ee87 05/29/2014 02:07 pm Dimitris Aragiorgis

(2.8r) Workaround for Issue 621

Upon LUNetworkDisconnect() and LUNetworkConnect() try to acquire
all cluster's instances.

By that _LS_ACQUIRE_ALL acquire mode is set and not
_LS_ACQUIRE_EXACT and thus the deleted lock does cause any problem.

NOTE: This workaround is not merged upstream. They prefer to have...

4922cd73 05/28/2014 06:20 pm Jose A. Lopes

'Raise' called inside 'CheckPrereq' needs the prereq kw

This patch fixes the missing 'prereq' keyword in calls to 'Raise' in
the control flow of 'CheckPrereq', and updates the tests.

Signed-off-by: Jose A. Lopes <>
Reviewed-by: Hrvoje Ribicic <>

b3aa93a2 05/26/2014 06:03 pm Klaus Aehlig

Use more efficient statistics for the standard deviation

Instead of using the full sample as statistics providing
enough information to compute the standard deviation, use
a slightly more elaborate one. It contains the standard
statistics count, sum, and sum of squares, which can also...

c5da4cf1 05/26/2014 06:03 pm Klaus Aehlig

Use statistics updates when allocating on pairs

When considering the various ways of positioning an instance
on a pair of nodes, make use of the fact that the statistics
are extremely similar (only two nodes changed) and obtain the
new statistics by updating the old one, rather than by recomputing...

f66ae90a 05/26/2014 06:03 pm Klaus Aehlig

Factor score computation through abstract statistics

Logically separate the computation of the cluster score into
two steps: the computation of the abstract statistics and its
evaluation. In this way, we obtain an abstract value which we
can update instead of recomputing it when considering different...

6bb77749 05/26/2014 06:03 pm Klaus Aehlig

Verify the update of the standard deviation statistics

Add a test that verifies that the error introduced by updating
a standard-deviation statistics of a sample with at least two
elements is not too large, as compared to the direct computation.

Signed-off-by: Klaus Aehlig <>...

394a5cb9 05/26/2014 06:03 pm Klaus Aehlig

Add data type for abstract statistics

Our cluster score is a weighted sum of certain sums and
standard deviations of node characteristics. When placing
a single instance, the cluster score of a big number of
quite similar clusters are computed: that of the original...

2b296ad4 05/26/2014 06:03 pm Klaus Aehlig

Relax test requirements

Instead of insisting on perfect equality of score
allow for numerical inaccuracies and consider everything
all differences in the cluster score smaller than 1e-12
negligible. Given that, by default, a cluster with a
score of less than 1e-9 is considered perfectly balanced,...

0f63c080 05/23/2014 01:45 pm Dimitris Aragiorgis

Fix gnt-network client wrt instances report

Let the gnt-network client expect a list of instance names and not
UUIDs as returned by QueryNetworks (by both old and new style query
mechanism).

Signed-off-by: Dimitris Aragiorgis <>
Reviewed-by: Helga Velroyen <>

96092119 05/23/2014 01:45 pm Dimitris Aragiorgis

Fix QueryNetworks wrt instances

QueryNetworks tries to find which instances are connected to which
networks. The query mechanism in Haskell was written back when NICs
referred to a network via its name and not its UUID. Fix luxi to
comply with the current implementation (network slot of NIC object...

a37549ea 05/22/2014 12:02 pm Klaus Aehlig

tiered allocation: try canonical search path first

In tiered allocation, instances are put on the cluster, while they
fit---and once no more instances of the given size can be fit, smaller
instances are tried next. There is obviously some heuristics involved...

399aa2ec 05/22/2014 11:44 am Thomas Thrainer

Add QA config flag for all performance tests

Add a config flag similar to "os", "env" or "rapi" which disables all
performance related tests centrally. The individual config flags for
jobqueue and parallel processing focused tests are not touched.

Also, add the flags to qa-sample.json....

d8e19f53 05/22/2014 11:13 am Helga Velroyen

build-bash-completion: reduce branches

The 'build-bash-completion' script has an enormous
function which triggered a 'too many branches' lint
error and was quite easily splittable in logical
sub-functions.

Signed-off-by: Helga Velroyen <>...

876fb142 05/22/2014 11:13 am Helga Velroyen

Convert all the classes to new-style classes

... to make lint shut up.

Signed-off-by: Helga Velroyen <>
Reviewed-by: Jose Lopes <>

c4460a46 05/20/2014 05:22 pm Klaus Aehlig

Merge branch 'stable-2.9' into stable-2.10

  • stable-2.9
    Improve haskell style
    check-man-warnings: use C.UTF-8 and set LC_ALL
    Fix passing of ispecs in cluster init during QA

Conflicts:
src/Ganeti/Monitoring/Server.hs: trivial

Signed-off-by: Klaus Aehlig <>...

8f467ab0 05/20/2014 05:15 pm Klaus Aehlig

Improve haskell style

...by fixing lint warnings found by HLint v1.8.57. In particular,
make sure 'make hlint' passes for this version of hlint.

Signed-off-by: Klaus Aehlig <>
Reviewed-by: Helga Velroyen <>

aa112e9f 05/20/2014 01:59 pm Thomas Thrainer

Add --no-locks option to gnt-debug delay

Add the possibility to don't acquire locks during `gnt-debug delay`.
This allows to run many delay jobs in parallel instead of having
them run sequentially.

Signed-off-by: Thomas Thrainer <>
Reviewed-by: Helga Velroyen <>...

c374ceab 05/19/2014 03:21 pm Thomas Thrainer

Include design-performance-tests.rst in index

Signed-off-by: Thomas Thrainer <>
Reviewed-by: Klaus Aehlig <>

46593037 05/19/2014 01:53 pm Klaus Aehlig

Document the --force-failover option

Extend the gnt-group man page by documenting the --force-failover
option of the evacuation command.

Signed-off-by: Klaus Aehlig <>
Reviewed-by: Thomas Thrainer <>

d0cd1368 05/19/2014 01:53 pm Klaus Aehlig

Support group evacuation by failover

Support evacuating a node group not using migration.
This can be useful if the group evacuated to has different
hardware.

Signed-off-by: Klaus Aehlig <>
Reviewed-by: Thomas Thrainer <>

2039321f 05/19/2014 01:53 pm Klaus Aehlig

Add an option --force-failover

...to be added to gnt-group evacuate forcing evacuation by
means for failovers instead of migrations.

Signed-off-by: Klaus Aehlig <>
Reviewed-by: Thomas Thrainer <>

8ddee5b6 05/19/2014 01:53 pm Klaus Aehlig

Extend OpGroupEvacuate by a ForceFailover paramter

Add a parameter to OpGroupEvacuate to force failovers to be
used instead of migrations. This can be useful, if a group
is evacuated to another with different hardware.

Signed-off-by: Klaus Aehlig <>...

63c875e7 05/19/2014 01:53 pm Thomas Thrainer

Mark performance tests design as implemented

The performance tests are implemented as outlined in the design doc, so
mark the document as implemented.

Signed-off-by: Thomas Thrainer <>
Reviewed-by: Klaus Aehlig <>

4868dfd5 05/19/2014 01:29 pm Apollon Oikonomopoulos

check-man-warnings: use C.UTF-8 and set LC_ALL

check-man-warnings currently partially forces the en_US.UTF-8 locale by
setting LANG. This implicitly assumes that the locale exists, which
might not be the case when building e.g. in chroot environments. If the...

95ec6e95 05/16/2014 12:19 pm Ansgar Jazdzewski

openvswitch fix

  • fix unhandled nic.mode in config.py
    "Unhandled Ganeti error: NIC mode 'openvswitch' not handled" (Issue 804)
  • handle link-changes for the virtual NIC
    a instance will readd the tap interface to the openviswitch so that
    changes of the instance-link (VLAN) will be considered....
f4664f19 05/16/2014 12:18 pm Klaus Aehlig

Document the --sequential option

Document that group evacuation is usually run in parallel, but
can be made sequentially by providing an appropriate option.

Signed-off-by: Klaus Aehlig <>
Reviewed-by: Petr Pudlak <>

c812ab71 05/16/2014 12:18 pm Klaus Aehlig

Support sequential evacuation

Make gnt-group evacuate support the --sequential option,
which causes all evacuation moves to be execuated sequentially.
This can be used to avoid congestion on a possibly slow link
between the node groups.

Signed-off-by: Klaus Aehlig <>...

ed9c2202 05/16/2014 12:18 pm Klaus Aehlig

Add an option --sequential

...which can be used to tell commands like gnt-group evacuate to
sequentially perform their action to keep load away from the cluster.

Signed-off-by: Klaus Aehlig <>
Reviewed-by: Petr Pudlak <>

593fd115 05/16/2014 12:18 pm Klaus Aehlig

Extend OpGroupEvacuate by a sequential paramter

...telling it to run all the evacuation jobs sequentially.
This might be useful to avoid too much load that otherwise
might occur.

Signed-off-by: Klaus Aehlig <>
Reviewed-by: Petr Pudlak <>

f29dde95 05/14/2014 05:23 pm Thomas Thrainer

Fix passing of ispecs in cluster init during QA

The ispecs were previously passed as multiple parameters to gnt-cluster
init, which did not yield the desired result. This patch changes this
behavior and passes the min/std/max values in one parameter.

Signed-off-by: Thomas Thrainer <>...

70000149 05/14/2014 02:28 pm Thomas Thrainer

Merge branch 'stable-2.9' into stable-2.10

  • stable-2.9
    On expanding jobs, extend reason trail

Signed-off-by: Thomas Thrainer <>
Reviewed-by: Klaus Aehlig <>

0511c075 05/14/2014 02:21 pm Klaus Aehlig

On expanding jobs, extend reason trail

Certain op-codes expand to a set of jobs. For
those new jobs, extend their reason trail with
the reasons of the job that expanded to them.
In this way, also for indirectly genreated jobs
a complete trace back to the initiator can be...

ce0bc5e1 05/14/2014 02:20 pm Thomas Thrainer

Merge branch 'stable-2.9' into stable-2.10

  • stable-2.9
    Add LC_ALL=en_US.UTF-8 before running check-man-warnings

Signed-off-by: Thomas Thrainer <>
Reviewed-by: Helga Velroyen <>

ecdf2b93 05/14/2014 01:51 pm Thomas Thrainer

Postpone 2.10.4 release to May 15th

Due to some tests not being completed by today, postpone the 2.10.4
release to tomorrow.

Signed-off-by: Thomas Thrainer <>
Reviewed-by: Hrvoje Ribicic <>

3e15825e 05/14/2014 01:46 pm Thomas Thrainer

Don't fail QA if submitting a job takes too long

Degrade a QA error which was triggered if job sumission take too long to
a warning. This will prevent spurious QA failures.

Signed-off-by: Thomas Thrainer <>
Reviewed-by: Klaus Aehlig <>

805f86d9 05/13/2014 10:03 am Thomas Thrainer

Revision bump for the 2.10.4 release

Signed-off-by: Thomas Thrainer <>
Reviewed-by: Klaus Aehlig <>

a6cbdefa 05/13/2014 10:02 am Thomas Thrainer

Prepare NEWS file for 2.10.4 release

Preparing the NEWS file for the release of 2.10.4 on Wednesday.

Signed-off-by: Thomas Thrainer <>
Reviewed-by: Klaus Aehlig <>

c4ae4fb1 05/12/2014 07:11 pm Yuto KAWAMURA(kawamuray)

Add LC_ALL=en_US.UTF-8 before running check-man-warnings

It will be fail if LC_ALL was set to non-utf8 locale(e.g, 'C') by
following error.

col: Invalid or incomplete multibyte or wide character
man: command exited with status 1: col -b -p -x

Signed-off-by: Yuto KAWAMURA <>...

6383059d 05/12/2014 01:49 pm Thomas Thrainer

Fix passing of ispecs in cluster init during QA

The ispecs were previously passed as multiple parameters to gnt-cluster
init, which did not yield the desired result. This patch changes this
behavior and passes the min/std/max values in one parameter.

Signed-off-by: Thomas Thrainer <>...

03e86e97 05/12/2014 12:25 pm Thomas Thrainer

Move QAThreadGroup to qa_job_utils.py

Move QAThreadGroup to the utils module so it can easily be used with
QAThread.

Signed-off-by: Thomas Thrainer <>
Reviewed-by: Klaus Aehlig <>

3f8e1896 05/12/2014 12:25 pm Thomas Thrainer

Extract GetJobStatuses and use an unified version

Unify two very similar functions which query the ganeti cluster for job
statuses during QA.

Signed-off-by: Thomas Thrainer <>
Reviewed-by: Klaus Aehlig <>

552633e1 05/09/2014 02:55 pm Thomas Thrainer' via ganeti...

Run disk template specific tests only if possible

Only run disk template specific tests if the corresponding disk template
is really enabled. Also, move the (up to now wrong) check out of
qa_performance.py to ganeti-qa.py, so no no-time test runs are reported...

c2a97cee 05/09/2014 10:24 am Thomas Thrainer

Test parallel instance ops and plain instances

Test various instance operations while another instance is created in
parallel.
Also enable a test which creates twice as many plain instances as there
are nodes in the cluster in parallel.

Signed-off-by: Thomas Thrainer <>...

15463dba 05/09/2014 10:24 am Thomas Thrainer

Test parallel creation of DRBD instances

Test the performance of parallel creation (and immediate removal) of DRBD
backed instances. Twice as many instances are created as there are nodes
in the cluster.

This also required some refactoring of the test code in order to reduce...

06c876fe 05/09/2014 10:24 am Thomas Thrainer

Test parallel job submission performance

Submit 200 delay jobs and verify that the submission rate does not drop
as more jobs are added to the queue. Also verify that a `gnt-cluster
info` is not slowed down by a large number of jobs in the queue.

Signed-off-by: Thomas Thrainer <>...

0e594722 05/09/2014 10:24 am Thomas Thrainer

Test parallel instance query operations

For each created instance, a `gnt-instance info` is issued. In addition,
`gnt-instance list` is issued as often as well.

Signed-off-by: Thomas Thrainer <>
Reviewed-by: Hrvoje Ribicic <>

f9e16ba1 05/09/2014 10:24 am Thomas Thrainer

Test parallel instance operations

Test parallel starting, stopping, rebooting and (if supported)
reinstalling instances.

Signed-off-by: Thomas Thrainer <>
Reviewed-by: Hrvoje Ribicic <>

7be00e3e 05/09/2014 10:24 am Thomas Thrainer

Test parallel instance modification

Submit modifications of backend parameters as well as OS parameters in
parallel for the maximum amount of instances available.

Signed-off-by: Thomas Thrainer <>
Reviewed-by: Hrvoje Ribicic <>

a9e326d8 05/09/2014 10:24 am Thomas Thrainer

Test parallel node-count instance creation

Test the parallel creation (and removal) of as many instances as there
are nodes in the cluster.

Signed-off-by: Thomas Thrainer <>
Reviewed-by: Hrvoje Ribicic <>

5bb25194 05/09/2014 10:24 am Thomas Thrainer

Test parallel instance creation and removal

This is the first performance related test. It creates as many instances
as available in the QA config in parallel and removes them (again in
parallel) immediately after the creation succeeded.

In order to ease writing of additional tests, a lot of the logic is kept...

d33d00ba 05/09/2014 09:27 am Thomas Thrainer

Fail in replace-disks if attaching disks fails

Previously, if attaching the new secondary during a replace-disks
operations failed, only a warning was emitted. The subsequent sync-disks
operation cannot finish in such a case, however.

Therefore, this patch changes the warning into an error. This way it's...

703508c0 05/08/2014 06:01 pm Hrvoje Ribicic

Merge branch 'stable-2.9' into stable-2.10

  • stable-2.9
    Add configure option to pass GHC flags
    KVM: set IFF_ONE_QUEUE on created tap interfaces

Conflicts:
configure.ac # Taken both contributions

Signed-off-by: Hrvoje Ribicic <>
Reviewed-by: Klaus Aehlig <>

75c1ac5b 05/08/2014 05:05 pm Klaus Aehlig

Add a basic test for --restricted-migration

Essentially verify that, in the given example, a solution is still
found and that the original present failover is dropped.

Signed-off-by: Klaus Aehlig <>
Reviewed-by: Hrvoje Ribicic <>

ba2cab15 05/08/2014 05:05 pm Klaus Aehlig

Describe the --restricted-migration option

Add the --restricted-migration option to the man page together with
a hint on the intended use case.

Signed-off-by: Klaus Aehlig <>
Reviewed-by: Hrvoje Ribicic <>

33bb2d08 05/08/2014 05:05 pm Klaus Aehlig

Support restricted migration

Make hbal support an option to disallow ReplacePrimary moves
and restrict ReplaceAndFailover to instances where the primary
node is drained. If used in evacuation mode, the only migration
moves will be off the drained nodes.
...

23dc58d5 05/08/2014 05:05 pm Klaus Aehlig

Add an option for restricted migration

This option will allow node evacuation with migrations only
off the nodes to be evacuated.

Signed-off-by: Klaus Aehlig <>
Reviewed-by: Hrvoje Ribicic <>

ee63f1d1 05/08/2014 05:04 pm Klaus Aehlig

Add an example for node evacuation

The configuration shows an unbalanced cluster with
a node being drained. The natural evacuation strategy
includes frf-moves.

Signed-off-by: Klaus Aehlig <>
Reviewed-by: Hrvoje Ribicic <>

b8168679 05/08/2014 04:36 pm Apollon Oikonomopoulos

KVM: set IFF_ONE_QUEUE on created tap interfaces

The IFF_ONE_QUEUE flag directs the kernel to only queue tap packets once
(as opposed to queueing them twice, once for the device, and once for the
qdisc), possibly avoiding interface stalls when one of the queues overruns....

762a28c6 05/08/2014 01:44 pm Hrvoje Ribicic

Add configure option to pass GHC flags

Adding the HEXTRA option to make might not be practical for a change
that should be always applied, e.g., hiding a certain package. This
patch allows the flags to be specified at the configure level.

Signed-off-by: Hrvoje Ribicic <>...

5e450b04 05/08/2014 11:09 am Dimitris Aragiorgis

(grnet) Remove deprecated physical_id if found

In 2.8 disks have been added to runtime files for hotplug support.
Back then physical_id slot existed. Remove this slot in the early
stage of Disk.FromDict() otherwise an exception will be raised.

Signed-off-by: Dimitris Aragiorgis <>

962fc0e8 05/08/2014 11:06 am Dimitris Aragiorgis

Disable CheckFileStoragePathNotWritable test

..because it fails when runs as root.

Signed-off-by: Dimitris Aragiorgis <>

857ca1a0 05/08/2014 11:06 am Dimitris Aragiorgis

(grnet) Upgrade runtime files

Each disk entry should include (disk dict, link name, disk uri).

When hotplug was backported in 2.8 access uri was not supported.
Thus the relevant entry for each disk entry might be missing from
the runtime files. Add an empty string in this case....

1 2 3 ... 120 Next » (1-100/11958) | Per page: 25, 50, 100

Also available in: Atom