Statistics
| Branch: | Tag: | Revision:

root @ 7fa310f6

# Date Author Comment
7fa310f6 04/01/2011 04:42 pm René Nussbaumer

RAPI: Convert instance shutdown to the new FillOpCode

Signed-off-by: René Nussbaumer <>
Reviewed-by: Michael Hanselmann <>

713a79e7 04/01/2011 12:12 pm Michael Hanselmann

Fix QA breakage caused by 3fd7f6524

Signed-off-by: Michael Hanselmann <>
Reviewed-by: René Nussbaumer <>

c7d3a832 03/31/2011 07:24 pm Iustin Pop

Add a simple wrapper over utils.Retry

The new wrapper makes moving legacy code to utils.Retry or adding
retries in existing code simpler.

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

d1e9c98d 03/31/2011 04:53 pm Iustin Pop

Automatically enable hail if enabled and found

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

e5395072 03/31/2011 04:53 pm Iustin Pop

Expose whether htools was enabled to Python code

This exports whether htools was enabled at configure-time, and adds a
constant for our reference iallocator.

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

d6491981 03/31/2011 12:44 pm René Nussbaumer

test.ganeti.process_unittest: Fix race condition

There was a race condition on heavily loaded testsystem causing randomly
to fail the timeout unittests as the signal handler is not yet setup but
the timeout has already hit.

Therefore we introduce a workaround to wait until a program reached a...

1ebe6dbd 03/31/2011 12:02 pm Iustin Pop

Improve references to htools in the documentation

Was not sure about the bit in admin.rst, hope it's fine.

Signed-off-by: Iustin Pop <>
Reviewed-by: René Nussbaumer <>

fd0bc853 03/30/2011 04:45 pm Iustin Pop

Clarify the need for QuickCheck/Haskell tests

Expands the devnotes.rst doc and adds warnings in the Makefile.

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

9a8ae794 03/30/2011 02:51 pm Michael Hanselmann

RAPI client: Remove support for version 0 instance creation requests

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

3fd7f652 03/30/2011 02:51 pm Michael Hanselmann

RAPI server: Drop support for instance creation format 0

Ganeti 2.1.3, released in June 2010, added support for a new, extensible
instance creation request format, called version 1. This patch removes
support for the old and undocumented version 0 format....

d914c76f 03/29/2011 06:23 pm Simeon Miteff

Improved GanetiRapiClient docstrings

- Added @rtype and/or @return where missing
- Fixed @param for Query() filter_ parameter (colon was missing)

Signed-off-by: Simeon Miteff <>
Signed-off-by: Michael Hanselmann <>...

4055b109 03/28/2011 03:08 pm Adeodato Simo

Add design for inter-group instance moves (multi-reloc)

Signed-off-by: Adeodato Simo <>
Reviewed-by: Iustin Pop <>

61791108 03/28/2011 03:06 pm Adeodato Simo

iallocator.rst: refactor for readability; minor improvements

This commits breaks down the "Input message" section of iallocator.rst into
two separate subsections: one detailing keys that are required in all
operation types; a second one detailing the "request" element, which is...

e9f7d26a 03/28/2011 12:49 pm René Nussbaumer

Relax instance ERROR on admin_down on offline node

This fixes a issue, where an stopped instances is reported as ERROR
in cluster verify if it lives on a offline node. As the instances is
down this shouldn't happen.

Signed-off-by: René Nussbaumer <>...

6a373640 03/25/2011 03:53 pm Michael Hanselmann

Implement submitting jobs from logical units

The design details can be seen in the design document
(doc/design-lu-generated-jobs.rst).

Signed-off-by: Michael Hanselmann <>
Reviewed-by: René Nussbaumer <>

5e9bcdf4 03/24/2011 08:50 pm Adeodato Simo

iallocator.rst: give pointers for alloc_policy semantics

Signed-off-by: Adeodato Simo <>
Reviewed-by: Iustin Pop <>

ea158460 03/24/2011 08:50 pm Adeodato Simo

Doc fix in iallocator.rst: multi-evac requires "evac_nodes"

The request argument for multi-evacuate mode is "evac_nodes", not "nodes"
(the example later in the file has the correct name already).

Signed-off-by: Adeodato Simo <>
Reviewed-by: Iustin Pop <>

604c175c 03/24/2011 06:17 pm Iustin Pop

watcher: improve logging a bit

Add some debug logging to detail why we don't run some steps.

Signed-off-by: Iustin Pop <>
Reviewed-by: René Nussbaumer <>

0c39d5eb 03/24/2011 10:29 am René Nussbaumer

Remove old ensure-dirs (no longer needed)

Signed-off-by: René Nussbaumer <>
Reviewed-by: Iustin Pop <>

0d2bf835 03/24/2011 10:29 am René Nussbaumer

Rewrite of ensure-dirs in python

I provided unittest to test the important pieces of the infrastructure.
The one remaining function (ResuriveEnsure) is not easy to unittest
but also not critical if it fails to operate correctly.

Signed-off-by: René Nussbaumer <>...

07dde0c1 03/23/2011 06:35 pm Iustin Pop

hs-coverage: make a symlink hpc_index.html

This allows Apache to display the directory in a nicer way.

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

c478f837 03/23/2011 06:35 pm Iustin Pop

Another attempt at fixing htools build without curl

OK, my previous small fix was not good. There is another issue: haddoc
(the documentation generator) needs to pass the same compiler options
(i.e. in our case, -DNO_CURL) to ghc. But in case of no curl, then it...

2a8e2dc9 03/23/2011 06:35 pm Iustin Pop

Fix some lint warnings in htools code

hlint gives more suggestions, but some make the code (IMHO) harder to
read.

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

d5072e4c 03/23/2011 06:35 pm Iustin Pop

Fix lint errors in the htools code

These are just changes from hlint suggestions. Still compiles and
passes unittests.

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

98ed5092 03/23/2011 06:17 pm Michael Hanselmann

Add opcode summary to SubmitManyJobs errors

Requested-by: Iustin Pop <>
Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

ed9fda24 03/23/2011 06:09 pm Michael Hanselmann

Add design for submitting jobs from LUs

This patch adds a design document describing how jobs can be submitted
from within LUs.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

2aa65bf0 03/23/2011 03:18 pm Iustin Pop

Fix Haskell unittests without RAPI

Since we don't test for now the RAPI backend directly, we can simply
skip the import. Later we can make a conditional import if needed.

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

1375e1d9 03/23/2011 02:28 pm Michael Hanselmann

Add import/export version 2 design document

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

278ddaa9 03/23/2011 02:28 pm Michael Hanselmann

Add design document for lighttpd as HTTP server

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

539f195a 03/23/2011 02:28 pm Michael Hanselmann

Add design document for X509 CA

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

30841576 03/23/2011 02:27 pm Michael Hanselmann

Wrap long lines in configure.ac

- Use m4_normalize to make single-line strings while removing
unnecessary spaces
- Wrap lines longer than 80 characters

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

77a180f6 03/23/2011 01:25 pm Iustin Pop

Update INSTALL and devnotes.rst with Haskell notes

This documents the needed libraries for Haskell development. It also
fixes a tiny typo in devnotes.rst.

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

22c5390d 03/23/2011 01:25 pm Iustin Pop

Revert and change the apidoc and coverage dirs

Based on Michael's suggestion, this patch partially reverts my
changes. The new directories are:

- doc/api/py
- doc/api/hs
- doc/coverage/py
- doc/coverage/hs

Basically the Python-specific output moves one level down (into py/)...

cc6d2673 03/23/2011 01:25 pm Iustin Pop

Rename away htools/NEWS

Also add mention about it being obsolete.

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

c3f67183 03/23/2011 01:25 pm Iustin Pop

Cleanup the Haskell-related Makefile.am variables

This should be more readable now. I wanted to even use the nicer
_SOURCES, but _SOURCES is special in Automake (again), so _SRCS it is.

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

8efa942b 03/22/2011 06:47 pm Iustin Pop

Remove obsolete htools/Makefile

Only one target wasn't ported over (the TAGS one), as hasktags is not
available easily in distributions, so it doesn't make sense to enable
it for all developers.

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

191ff68c 03/22/2011 06:47 pm Iustin Pop

Move hlint rule to the main Makefile

Since we do have errors currently, this is not enabled from the main
'make lint' rule. That will get cleaned up later.

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

ec8379bd 03/22/2011 06:47 pm Iustin Pop

Port the live-test htools rule to the main Makefile

This was a bit tricky, as the compilation from the top-dir changes the
paths in the .tix/.mix files.

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

a38bfce5 03/22/2011 06:47 pm Iustin Pop

Enable htools apidoc generation and unify dir names

Previously, Python api doc was under doc/api (which didn't match with
the target rule, apidoc). After this patch, we have the following:

- make py-apidoc generates Python api doc under doc/py-apidoc
- make hs-apidoc generates Haskell api doc under doc/hs-apidoc...

b91e9518 03/22/2011 06:47 pm Iustin Pop

Enable htools unittests and coverage reports

Since we have two sets of coverage data, we make the naming
consistent:

- doc/py-coverage for Python coverage
- doc/hs-coverage for Haskell coverage

We also need to exclude some more dirs from the list of checked...

d5506465 03/22/2011 06:47 pm Iustin Pop

Fix parallel compilation for htools

We do it via per-target-binary .o/.hi files. There are a few other
options, in the end this was chosen as different binaries can have
different options/components (e.g. hail won't use RAPI, etc.) and that
the unittests need different compilation options....

50ed57c1 03/22/2011 06:47 pm Iustin Pop

htools: add option to control the use of RAPI

RAPI needs the curl module, which is a binding to the libcurl C
library. This is more complex (can be compiled either against gnutls
or openssl, etc.) and it's not of much help when the tools are used on
the cluster itself, we disable it by default....

7617fd6b 03/22/2011 06:47 pm Iustin Pop

htools: install hail in the iallocator dir

Instead of bindir. We do this by adding a new allocdir variable, and
redirecting hail to it.

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

61d01c0f 03/22/2011 06:47 pm Iustin Pop

Remove some obsolete htools files

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

83d96c36 03/22/2011 06:47 pm Iustin Pop

Integrate htools's gitignore in top-level one

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

d6159933 03/22/2011 06:47 pm Iustin Pop

Makefile.am: add rules for htools compilation

This patch adds some (not very nice) rules for htools
compilation. Since automake only knows about some languages, and
doesn't have a real extension mechanism, I cheat and declare them as
"buildable scripts", instead of programs. Rationale:...

e5bd9de5 03/22/2011 06:47 pm Iustin Pop

configure.ac: add checks for Haskell compiler/libs

This patch adds an enable/disable option for htools (--enable-htools),
and associated tests for determining whether GHC (the compiler we use
for htools) and required libraries are present.

The method to do so is not very nice; usually, Haskell programs are...

dde0e97c 03/18/2011 04:54 pm Michael Hanselmann

RAPI client: Tidy and test WaitForJobCompletion

- Use constants
- Don't sleep if no delay is given
- Mark function as deprecated: it uses polling instead of waiting for changes
(but the latter needs authentication); it can still be used
- Add unittests...

63d5eb8a 03/18/2011 04:54 pm Michael Hanselmann

RAPI client: Add job status constants

Signed-off-by: Michael Hanselmann <>
Reviewed-by: René Nussbaumer <>

98805538 03/18/2011 04:54 pm Michael Hanselmann

RAPI client: Job IDs are strings

Signed-off-by: Michael Hanselmann <>
Reviewed-by: René Nussbaumer <>

07e0896f 03/18/2011 04:53 pm Michael Hanselmann

Split BuildHooksEnv of LUs

Commit dd7f677623 added another call to BuildHooksEnv to provide
post-phase status variables. Since BuildHooksEnv also built the node
lists, that meant they have to be built twice. First a rather strict
check was used, but it turned out to be more tricky. Commit b423c51336...

959b6fe5 03/18/2011 04:42 pm Apollon Oikonomopoulos

cfgupgrade: really ignore hostname when told so

cfgupgrade provides a --ignore-hostname option, however consequently it
spawns config.ConfigWriter, which refuses to handle a foreign
configuration file by default.

config.ConfigWriter provides a relative keyword argument,...

cfda0e48 03/18/2011 01:05 pm Iustin Pop

RAPI client: fix epydoc formatting

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

16c13387 03/18/2011 12:00 pm Theo Van Dinter

Add a helper function to the RAPI client

This adds a new method WaitForJobCompletion that can be used for
client who are not interested in the entire job log, just in its
completion status.

Signed-off-by: Iustin Pop <>
Reviewed-by: Iustin Pop <>...

92902e91 03/18/2011 10:40 am Iustin Pop

Move htools-ganeti 2.3 design doc to doc/

I didn't know where to put in the TOC, so I added it after the ganeti
2.3 design doc.

Also, it seems that Sphinx is a bit limited in its list nesting
(compared to Pandoc), so I had to rework a bit the indentation (it...

5a19bd35 03/18/2011 10:40 am Iustin Pop

Integrate htools man pages in the main tree

This moves the man pages to their right place, removes the static
footer and header, and adds Makefile rules for the new .1 man pages.

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

b423c513 03/17/2011 06:43 pm Michael Hanselmann

Remove restrictive hook node list check

Commit dd7f67762 added a restrictive check for the node lists returned
by BuildHooksEnv, leading to errors with some LUs, one of which was
fixed in commit 0dfa2c227. As it turns out, other LUs have similar
issues, some not easy to fix. This patch disables the restrictive check...

562be46d 03/17/2011 06:38 pm Iustin Pop

Revert "Add temporary dir/file for htools import"

This reverts commit 8bc9e04a21457c4188475dc849d0d7d1e22ee929, not
needed anymore.

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

dc384cf0 03/17/2011 06:04 pm Iustin Pop

Merge remote branch 'htools/master'

  • htools/master: (605 commits)
    Update NEWS file for version 0.3.1
    Update copyright years in the man pages
    Remove obsolete env vars from the manpages
    Fix dist archive generation
    luxi backend: show attribute names in errors...
8bc9e04a 03/17/2011 05:29 pm Iustin Pop

Add temporary dir/file for htools import

In order for “git merge -s recursive -X subtree=htools” to do its
magic, an (mostly empty) directory must exist in the target tree name
‘htools’. Hence we add a temp file to it before the merge, and remove
it after that....

0dfa2c22 03/17/2011 01:49 pm Michael Hanselmann

Fix hook node list when adding node

This broke QA (and everyone trying to add a node) by complaining about
different node lists.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

dd7f6776 03/16/2011 07:58 pm Michael Hanselmann

hooks: Provide variables with post-opcode values

When a hook is called, it is provided with a number of variables
describing the status of the instance/node/etc. before the operation.
Some opcodes provide extra variables to see modified values from hooks,...

ebc75510 03/16/2011 07:58 pm Michael Hanselmann

HooksMaster: Add more assertions for variable names

Also replace explicit loop with dict.update.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

0306ff62 03/16/2011 07:58 pm Michael Hanselmann

mcpu: Tidy HooksMaster a bit

- Dictionary indentation
- Add empty lines for readability
- Simplify conditional code

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

3d265c2b 03/16/2011 07:58 pm Michael Hanselmann

cmdlib: Factorize running post-pase hook

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

4fab7cab 03/15/2011 03:11 pm Michael Hanselmann

QA: Add tests for queries via RAPI

Signed-off-by: Michael Hanselmann <>
Reviewed-by: René Nussbaumer <>

51ae7c85 03/15/2011 03:11 pm Michael Hanselmann

qlang: Remove unused import

Signed-off-by: Michael Hanselmann <>
Reviewed-by: René Nussbaumer <>

208a6cff 03/15/2011 03:04 pm Michael Hanselmann

RAPI: Add support for querying resources

- Access is only permitted for authenticated clients (queries can return
sensitive data)
- Filters can be specified when sending a PUT request
- Updates RAPI client, documentation and tests

Signed-off-by: Michael Hanselmann <>...

1c7fd467 03/15/2011 03:04 pm Michael Hanselmann

Add support for query resources in RAPI URIs

Signed-off-by: Michael Hanselmann <>
Reviewed-by: René Nussbaumer <>

c1391810 03/15/2011 03:04 pm Michael Hanselmann

masterd: Simplify code for field queries

Instead of going via cmdlib and using special cases for different
resources, the list of fields is used directly.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: René Nussbaumer <>

abd66bf8 03/15/2011 03:04 pm Michael Hanselmann

constants: Rename QR_OP_*, add QR_VIA_RAPI

Commit 28b71a76 added a list of resources which can be queried using
LUXI. Unfortunately the variable was named “QR_OP_LUXI”, which can be
confusing. This patch renames “QR_OP_QUERY” to “QR_VIA_OP”, “QR_OP_LUXI”...

31554d0a 03/15/2011 02:57 pm Michael Hanselmann

qlang: Remove unused ReadSimpleFilter

Signed-off-by: Michael Hanselmann <>
Reviewed-by: René Nussbaumer <>

9026e935 03/15/2011 12:41 pm René Nussbaumer

TLReplaceDisks: Add check if disks are activated

Previously we failed later with a rather useless error message. This
patch fixes this and tells the user to activate-disks if replace-disks
is in the need of activated disks rather than abort with a cryptic error...

7738342c 03/14/2011 12:51 pm Michael Hanselmann

LUOsDiagnose: Move legacy behaviour into filter

The behaviour of LUOsDiagnose needs special treatment. Commit d22dfef7
changed it to not return hidden, blacklisted or invalid OSes if the
respective field is not requested. This behaviour needs to be preserved...

be3a4b14 03/14/2011 12:50 pm Michael Hanselmann

Convert OsDiagnose to query

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

341ff8e9 03/14/2011 12:49 pm Michael Hanselmann

qlang: Add some more documentation for filters

It's not perfect, but at least some more.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

425e5bf0 03/14/2011 12:48 pm Michael Hanselmann

query: Add conversion wrapper

Allows converting the value of a column before returning it. Useful for
sorting while still using one of the other generic functions for
retrieving the value.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: René Nussbaumer <>

3a93eebb 03/11/2011 07:05 pm Michael Hanselmann

Fix epydoc warning about unknown reference

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

fe698b38 03/11/2011 06:35 pm Michael Hanselmann

config: Wrap MatchNameComponent, reduce lock duration

- Remove duplication by merging two MatchNameComponent into a wrapper
- Reduce lock duration by getting list of names under lock and then
matching names without the lock
- Also, ExpandNodeName's docstring is fixed....

8e7078e0 03/11/2011 03:27 pm Michael Hanselmann

opcodes: Document OpQueryFields' parameters

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

71a24f8f 03/11/2011 12:55 pm Iustin Pop

Update NEWS file for version 0.3.1

Signed-off-by: Iustin Pop <>
Reviewed-by: Balazs Lecz <>
Reviewed-by: Michael Hanselmann <>

26f7b098 03/11/2011 12:55 pm Iustin Pop

Update copyright years in the man pages

Signed-off-by: Iustin Pop <>
Reviewed-by: Balazs Lecz <>

05a210a3 03/11/2011 12:55 pm Iustin Pop

Remove obsolete env vars from the manpages

Commit 16c2369c removed support for using environment variables for
selecting the text backend (since now it's just one option), but
didn't update the man pages.

Signed-off-by: Iustin Pop <>
Reviewed-by: Balazs Lecz <>

faaabe3c 03/10/2011 02:15 pm Iustin Pop

Instance failover: fix bug for INT_MIRROR cases

Patches db366d9a and aac4511a added support for EXT_MIRROR instances,
but inadvertently introduced a bug: for INT_MIRROR cases, we don't
need (actually we can't support) neither an iallocator nor a target
node....

cfed3b9f 03/09/2011 03:36 pm René Nussbaumer

gnt-cluster epo: Adding --power-delay flag

Signed-off-by: René Nussbaumer <>
Reviewed-by: Iustin Pop <>

0a1fc31c 03/09/2011 03:36 pm René Nussbaumer

gnt-node power: Adding --power-delay flag

Signed-off-by: René Nussbaumer <>
Reviewed-by: Iustin Pop <>

0c086a13 03/09/2011 03:36 pm René Nussbaumer

cli.py: Adding POWER_DELAY_OPT

The command line option --power-delay sets the time waited between power
ons.

Signed-off-by: René Nussbaumer <>
Reviewed-by: Iustin Pop <>

beff3779 03/09/2011 11:39 am René Nussbaumer

OpOobCommand: Adding power on delay

This delays the invocation of the power on of the next node. So if you
power on a bunch of nodes it will not blow the fuse.

Signed-off-by: René Nussbaumer <>
Reviewed-by: Michael Hanselmann <>

c4ec0755 03/09/2011 11:39 am René Nussbaumer

OpOobCommand: Document all fields

Signed-off-by: René Nussbaumer <>
Reviewed-by: Michael Hanselmann <>

fcecea0b 03/09/2011 11:39 am René Nussbaumer

gnt-cluster epo: Adding --shutdown-timeout

This adds the --shutdown-timeout flag to gnt-cluster epo to specify the
shutdown timeout for instance shutdown.

Signed-off-by: René Nussbaumer <>
Reviewed-by: Michael Hanselmann <>

3429a076 03/08/2011 02:01 pm Apollon Oikonomopoulos

Rename DTS_NET_MIRROR to DTS_INT_MIRROR

DTS_INT_MIRROR better contrasts DTS_EXT_MIRROR.

Signed-off-by: Apollon Oikonomopoulos <>
[: updated patch for changed context]
Signed-off-by: Iustin Pop <>
Reviewed-by: Iustin Pop <>

9869360c 03/08/2011 02:01 pm Apollon Oikonomopoulos

Shared file support for tools/burnin

Make burnin work with -t sharedfile and update burnin's help.

Shared block storage support is not included, as currently there is no way to
provision shared block storage from within Ganeti.

Signed-off-by: Apollon Oikonomopoulos <>...

41e794f6 03/08/2011 02:01 pm Apollon Oikonomopoulos

KVM: use cache=none for shared disk templates

Disable host cache for externally mirrored disks to avoid cache incoherency.
Without this, migrations between the same two nodes may end up in disk
corruption.

This is a runtime override of cluster defaults, mostly a workaround....

db366d9a 03/08/2011 02:01 pm Apollon Oikonomopoulos

Shared storage instance failover

Modify LUFailoverInstance to enable shared storage instances to failover.
Shared storage instance failover requires either a target node or an
iallocator to determine the target node. If none is given, the cluster default...

aac4511a 03/08/2011 02:01 pm Apollon Oikonomopoulos

Shared storage node migration

Modify LUNodeMigrate to provide node migration for nodes with instances using
shared storage. gnt-node migrate has to be passed an iallocator for migration
of shared storage instances to be performed. When using a shared storage...

77fcff4a 03/08/2011 02:00 pm Apollon Oikonomopoulos

Shared storage instance migration

Modify LUMigrateInstance and TLMigrateInstance to allow instance migrations for
instances with DTS_EXT_MIRROR disk templates.

Migrations of shared storage instances require either a target node, or an
iallocator to determine the target node. If none is given, the cluster default...

1b7761fd 03/08/2011 02:00 pm Apollon Oikonomopoulos

CLI changes to facilitate shared storage migration/failover

Add DST_NODE_OPT to cli.py to use for directly specifying the target node
during migration/failover.

gnt-instance failover/migrate also get passed an iallocator option.

gnt-node failover/migrate get only a target_node option....

8eb34306 03/08/2011 02:00 pm Apollon Oikonomopoulos

Migration and failover: add iallocator and target_node slots

Add iallocator and target_node slots to OpMigrateInstance and
OpFailoverInstance to facilitate shared-storage-backed instance mobility. Add
iallocator slot to OpMigrateNode (no explicit target_node in this case)....

1f1d54e7 03/08/2011 02:00 pm Apollon Oikonomopoulos

IAllocator changes to work with shared storage

Make cmdlib.IAllocator shared-storage-aware. IAllocator requires secondary
nodes only on DTS_NET_MIRROR disk templates and requires no secondaries for
DTS_EXT_MIRROR templates.

Signed-off-by: Apollon Oikonomopoulos <>...

b6135bbc 03/08/2011 02:00 pm Apollon Oikonomopoulos

Shared block storage support

This patch introduces basic shared block storage support.

It introduces a new storage backend, bdev.PersistentBlockDevice, to
use as a backend for shared block storage. The new bdev requires a new
BLOCKDEV_DRIVER_MANUAL constant with the value "manual" and uses it as...