- Apr 20, 2011
-
-
Apollon Oikonomopoulos authored
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 <apollon@noc.grnet.gr> Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Apollon Oikonomopoulos authored
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 the first part of the block device unique_id. A new disk template, DT_BLOCK is introduced as well and added to DTS_EXT_MIRROR and DTS_MAY_ADOPT. Also added DTS_MUST_ADOPT constant and use it to check for the presence of the adopt keyword during LU invocation. We enforce the /dev/disk limitation upon adoption, but we allow block devices to reside anywhere under /dev. This is very basic support and includes no storage manipulation (provisioning, resizing, renaming) which will have to be implemented through a "driver" framework. Signed-off-by:
Apollon Oikonomopoulos <apollon@noc.grnet.gr> [iustin@google.com: slight changes to bdev.py] Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Apollon Oikonomopoulos authored
The bdev_sizes multi-node RPC call returns the sizes of the requested block devices on the desired nodes. Its intended use is to verify the existence of a block device on a given node for shared block storage support. Block device paths are expected to lie under constants.BLOCKDEV_DIR ("/dev/disk" by default), where persistent symlinks for block devices are assumed to exist. Signed-off-by:
Apollon Oikonomopoulos <apollon@noc.grnet.gr> [iustin@google.com: small changes in backend.py] Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Apollon Oikonomopoulos authored
Use DTS_MIRRORED to indicate mirrored disk templates that allow migrations/failover. DTS_MIRRORED is the union of DTS_EXT_MIRROR and DTS_NET_MIRROR. Signed-off-by:
Apollon Oikonomopoulos <apollon@noc.grnet.gr> Reviewed-by:
Michael Hanselmann <hansmi@google.com> Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Apollon Oikonomopoulos authored
Add shared file storage handling during cluster initialization. Signed-off-by:
Apollon Oikonomopoulos <apollon@noc.grnet.gr> Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Apollon Oikonomopoulos authored
This patch introduces core file storage support, consisting of the following: A configure-time switch for enabling/disabling shared file storage support and controlling the shared file storage location: --with-shared-file-storage-dir=. Shared file storage configuration is then available as _autoconf.ENABLE_SHARED_FILE_STORAGE and _autoconf.SHARED_FILE_STORAGE_DIR and there is a cluster-wide ssconf key named "shared_file_storage_dir" for changing the file location. A new disk template named "sharedfile" (DT_SHARED_FILE), using ganeti.bdev.FileStorage. Auxiliary functions in lib/config.py to handle shared file storage. Signed-off-by:
Apollon Oikonomopoulos <apollon@noc.grnet.gr> [iustin@google.com: small style fixes] Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Apollon Oikonomopoulos authored
Add doc/design-shared-storage.rst to document the proposed changes and update Makefile.am respectively. Signed-off-by:
Apollon Oikonomopoulos <apollon@noc.grnet.gr> Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- Mar 28, 2011
-
-
Stephen Shirley authored
Set the default stderr logging level to WARNING so the relevant output can be seen. Signed-off-by:
Stephen Shirley <diamond@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
- Mar 17, 2011
-
-
Stephen Shirley authored
This isn't only used during cluster merge. Signed-off-by:
Stephen Shirley <diamond@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
- Mar 10, 2011
-
-
Stephen Shirley authored
There is currently no way to reset oob_program back to its default from the cmdline, which causes problems for cluster-merge. This patch means that the following now works: gnt-cluster modify --node-parameters oob_program= Signed-off-by:
Stephen Shirley <diamond@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Iustin Pop authored
Nodes can return unknown instances, so we shouldn't use the name as an index without checking. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Iustin Pop authored
If opening the log file fails, then we shouldn't attempt to use that variable. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
- Mar 09, 2011
-
-
Iustin Pop authored
Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
- Mar 08, 2011
-
-
Michael Hanselmann authored
The cfgupgrade tool was designed to be idempotent, that means it could be run several times and still give produce the correct result. Ganeti 2.4 moved the file containing the RAPI users to a separate directory (…/lib/ganeti/rapi/users). If it exists, cfgupgrade would automatically move an existing file from …/lib/ganeti/rapi_users and replace it with a symlink. Unfortunately one of the checks for this was incorrect and, when run multiple times, replaces the users file at the new location with a symlink created during a previous run. In addition the “--dry-run” parameter to cfgupgrade was not respected. Unittests are updated for all these cases. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- Mar 07, 2011
-
-
Iustin Pop authored
NEWS update and version bump. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Iustin Pop authored
* devel-2.3: Fix LUClusterRepairDiskSizes and rpc result usage Fix RPC mismatch in blockdev_getsize[s] RAPI: fix evacuate node resource Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
Iustin Pop authored
Also specifies the comma-escaping feature. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
Iustin Pop authored
* devel-2.2: Fix LUClusterRepairDiskSizes and rpc result usage Fix RPC mismatch in blockdev_getsize[s] Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
- Mar 04, 2011
-
-
Iustin Pop authored
This LU was introduced before the RPC result conversion from .data to .payload, and it has managed to keep the old-style usage (how? it's the only LU that does so). Fix by changing to payload, and add some extra logging for easier diagnose. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Stephen Shirley <diamond@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com> (cherry picked from commit 043beb38)
-
Iustin Pop authored
Commit 92fd2250 added consistency checks in the RPC layer, which broke the call_blockdev_getsizes RPC call (declared with 's' at the end in rpc.py, without 's' in the node daemon). The immediate fix is to correct the rpc function name, the long term one will be to remove this duplication. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Stephen Shirley <diamond@google.com> (cherry picked from commit ccfbbd2d)
-
Iustin Pop authored
PollJob returns the whole op_results, hence a list of opcode results. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
- Mar 02, 2011
-
-
Guido Trotter authored
* origin/stable-2.4: Fix typo in kvm-ifup script NEWS: Replace smartquotes, start lines with uppercase Update NEWS and release 2.4.0 rc3 Fix potential data-loss bug in disk wipe routines Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Michael Hanselmann authored
Reported-by:
Bas Tichelaar <bas@30loops.net> Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
- Mar 01, 2011
-
-
Michael Hanselmann authored
- Sphinx converts ASCII quotes ("") to smartquotes (“”) automatically - Sentences or list items start with an uppercase letter - Changed description of non-verbose “gnt-* list” output slightly Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- Feb 28, 2011
-
-
Michael Hanselmann authored
The exception was never actually raised. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Adeodato Simo <dato@google.com>
-
Iustin Pop authored
Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
Iustin Pop authored
* devel-2.4: 1-char comment typo fix Expand some acronyms, add to glossary query_unittest: Fix argument to set() Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
Iustin Pop authored
For the 2.4 release, we only add the missing RPC calls. However, this needs to be fixed properly, by preventing usage of mis-configured disks. Also add a bit more logging so that it's directly clear on which node the wipe is being done. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
- Feb 25, 2011
-
-
Stephen Shirley authored
Signed-off-by:
Stephen Shirley <diamond@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
- Feb 24, 2011
-
-
Stephen Shirley authored
Signed-off-by:
Stephen Shirley <diamond@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
- Feb 23, 2011
-
-
René Nussbaumer authored
Commit e431074f introduced an uncatched bug. This patch fixes this. The set is expecting a list or iteratable to work on, so it splitted the provided instance name into a set of characters. This caused the exp_status never been set and therefore not catched in one assert rule further below who checks that every status was tested. Signed-off-by:
René Nussbaumer <rn@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
- Feb 22, 2011
-
-
Michael Hanselmann authored
Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- Feb 21, 2011
-
-
Iustin Pop authored
Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
Iustin Pop authored
* devel-2.4: (23 commits) Fix pylint warnings Change the list formatting to a 'special' chars Add support for merging node groups Add option to rename groups on conflict Fix minor docstring typo Fix HV/OS parameter validation on non-vm nodes NodeQuery: mark live fields as UNAVAIL for non-vm_capable nodes NodeQuery: don't query non-vm_capable nodes Remove superfluous redundant requirement Don't remove master_candidate flag from merged nodes Use a consistent ECID base listrunner: convert from getopt to optparse listrunner: fix agent usage Revert "Disable the cluster-merge tool for the moment" Fix cluster-merging by not stopping noded Fix error msg for instances on offline nodes Minor reordering to match param order cluster verify and instance disks on offline nodes Cluster verify and N+1 warnings for offline nodes Handle gnt-instance shutdown --all for empty clusters Use gnt-node add --force-join to add foreign nodes Add --force-join option to gnt-node add Fix iterating over node groups Of the above commits present in the devel-2.4 branch, only the “Add --force-join option to gnt-node add” is a potential issue, but this has been QA-ed successfully. The other fixes are split in three groups: - non-core changes (cluster-merge, listrunner) - trivial fixes (docstrings, etc.) - bugs that we want fixed As such, instead of cherry-picking only individual patches, I propose that we unify stable and devel 2.4 and make a new RC out of the result. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
- Feb 18, 2011
-
-
Stephen Shirley authored
- 1 80-char line infraction - 4 changes in how arguments are passed to logging functions - 3 pylint disable-msg's because cluster-merge needs to access ganeti config internals Signed-off-by:
Stephen Shirley <diamond@google.com> Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Guido Trotter authored
Currently the QA rename job wrongly passed the whole info dict to the client. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Iustin Pop authored
And also enable verbose display via the, well, verbose option. Man page and tests are updated, and the formatting is moved from 4 if statements to a data structure. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Stephen Shirley authored
Signed-off-by:
Stephen Shirley <diamond@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Stephen Shirley authored
Signed-off-by:
Stephen Shirley <diamond@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Stephen Shirley authored
Signed-off-by:
Stephen Shirley <diamond@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-