- Jun 04, 2010
-
-
Guido Trotter authored
* devel-2.1: _ExecuteKVMRuntime: fix hv parameter fun Update FinalizeMigration docstring LUGrowDisk: fix operation on down instances Allow disk operation to act on a subset of disks NEWS: add release date for 2.1.3 Bump up version for the 2.1.3 release Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Guido Trotter authored
When executing the kvm runtime we were currently accessing a mix of the parameters as configured currently on the instance and the ones it was started with. We were doing it without a precise criteria, but quite by chance we got it *almost* right. The only remaining issue was that when ganeti was upgraded and some parameters were added, trying to access them from the "old" ones caused a keyerror, since they weren't present back when the instance was started. To fix this: - We fill the startup-time dict with any new parameter - We provide a clear guideline on which version of the parameters to access, and about the fact that new parameters must have an instance-migration backwards compatible default Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Guido Trotter authored
This is used not only for aborted migrations, so the docstring should reflect that. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Guido Trotter authored
Currently it's impossible to grow a disk if an instance is shutdown, because the disk could not be assembled. Now we take care of assembling it, and shutting it down after. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Guido Trotter authored
If the disks= parameter is passed, we can assemble/wait for sync/shutdown only some disks belonging to an instance, rather than all. This is useful to only activate/sync/shutdown the affected disk when growing it. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Guido Trotter authored
Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Michael Hanselmann authored
Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- Jun 03, 2010
-
-
Guido Trotter authored
Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Guido Trotter authored
* devel-2.1: TestAsyncUDPSocket: remove dead code and add test TestAsyncUDPSocket: test for oversized sends Document the check-man change Update NEWS for Ganeti 2.1.3 Second attempt at fixing check-man Fix check-man for newer man-db Add RemoveDir utility function Conflicts: NEWS - trivial test/ganeti.daemon_unittest.py - trivial Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Michael Hanselmann authored
Apart from improved logging, one race condition is fixed. If the destination's status file became available, the port would be returned immediately, even if it was still “None”. Most of the time it worked, but not always. Now an additional check ensures the port evaluates to True. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Michael Hanselmann authored
Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Guido Trotter authored
This new asyncore dispatcher can be used to force a thread running the asyncore loop to awake from the select, by signaling it on one of its selected sockets. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Guido Trotter authored
Not much changes with this patch. The main loop for the IOServer is repaced by mainloop.Run() and the main thread now uses asyncore to handle connections to the master socket. Once it accepts them, though, it just pushes them to the current infrastructure, and everything proceeds as before. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Guido Trotter authored
Unittests cover AsyncStreamServer and AsyncTerminatedMessageStream with both tcp and unix sockets. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Guido Trotter authored
This is the counterpart of the AsyncStreamServer can be used to handle connected sockets returned from connected clients if the protocol is a terminator separated message stream. Nothing in this class is server specific though: it can be used as a client as well, if the client is implemented inside an asyncore daemon. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Guido Trotter authored
This is a new asyncore server which handles listening stream sockets by calling a non-implemented function for each connection it accepts. It's the stream-oriented cousing of the AsyncUDPSocket. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Tom Limoncelli authored
Update ganeti-watcher so that it tests the master's RAPI port with a simple test (in this case GetVersion). If it fails, make one attempt at restarting ganeti-rapi and retest. - daemons/ganeti-watcher: Test rapi and make one attempt at restarting it. - lib/utils.py: add StopDaemon() function. Signed-off-by:
Tom Limoncelli <tlim@google.com> Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
- Jun 02, 2010
-
-
Guido Trotter authored
- _ThreadedClient was added on the idea of making this unittest concurrent, which was actually never done (we could test everything without it, so well) - handle_write() was never called without filling the send queue, and this caused me trouble now that I learned to look at coverage Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Guido Trotter authored
Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Luca Bigliardi <shammash@google.com>
-
Guido Trotter authored
Since this affects developers' systems, document it in NEWS and devnotes.rst Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Guido Trotter authored
Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Iustin Pop authored
I was wrong, actually LANG-vs-LC_ALL only fixed one case, by mistake. To get proper UTF-8 encoding, we need to enforce any UTF-8 locale. We choose the 'default' of en_US.UTF-8. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Iustin Pop authored
Again, check-man :) Commit 5fa16422 removed LC_ALL=C, since that breaks the check. However, with no LANG/LC_* variables, man-db is still broken. We import the new lintian behaviour, i.e. LANG=C (which seems to differ from LC_ALL=C, even with empty environment). I'm not sure of the difference, though. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
- Jun 01, 2010
-
-
Balazs Lecz authored
Backported from master, 72087dcd Signed-off-by:
Balazs Lecz <leczb@google.com> Reviewed-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Guido Trotter authored
* origin/devel-2.1: Explicitely return None from IgnoreSignals AsyncUDPSocket: fix IgnoreSignals usage and test Add KVM chroot feature Fix and Improve TryToRoman unittest Conflicts: test/ganeti.daemon_unittest.py - trivial Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Guido Trotter authored
Same result, but what happens is clearer. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Guido Trotter authored
This bug was found in the asyncore master patch series, but actually applies to 2.1 for AsyncUDPSocket as well. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Balazs Lecz authored
This patch adds a new boolean hypervisor parameter to the KVM hypervisor, named 'use_chroot'. If it's turned on for an instance, than KVM is started in "chroot mode": Ganeti creates an empty directory for the instance and passes the path of this dir to KVM via the -chroot flag. KVM changes its root to this directory after starting up. It also adds a "quarantine" feature for moving any unexpected files to a separate directory for later analysis. This has been backported from master, commit 84c08e4e Signed-off-by:
Balazs Lecz <leczb@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Michael Hanselmann authored
This will be used to avoid a race condition between starting a program (dd for import/export) and sending signals to it. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Guido Trotter authored
1) Don't break when the roman module is not found 2) Test that not finding the roman module doesn't make TryToRoman fail (currently that is the case) Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Michael Hanselmann authored
Until now, move-instance used different status variables: “success”, “abort” and “error_message”. With this patch, everything is changed to use “error_message” only. This simplifies the code a bit. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Michael Hanselmann authored
The cluster domain secret file was not distributed to other nodes. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Guido Trotter authored
* devel-2.1: Convert gnt-instance list and info to use roman gnt-cluster info --roman FormatUidPool: provide optional roman conversion gnt-node: remove latinfriendlyfields Move roman conversion to compat Add a new opcode timestamp field Fix IgnoreSignals on socket.error RAPI client should convert urllib2.URLError to GanetiApiError KVM: Migration bandwidth and downtime control Make utils.EnsureDirs() ignore umask Fix two race conditions in reboot instance Support for latin friendly output in node list Conflicts: man/gnt-instance.sgml - trivial Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Guido Trotter authored
Finally gnt-instance has roman support as well. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Guido Trotter authored
Convert to roman (if so the user wishes) the following: - cluster candidate size - uid pool - any integer be or hv parameter Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Guido Trotter authored
The convert= option of compat.tryToRoman is used to do optional conversion without duplicating formatting code. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Guido Trotter authored
Rather than relying on a static list of fields, we opportunistically convert all integers. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Guido Trotter authored
The new TryToRoman function provides optional easy to use roman conversion. Nunc cum demonstrationi unitati. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Guido Trotter authored
Since we impose a maximum limit when reading ssconf files, let's error out when trying to write them too big, so we don't pretend everything is ok, and make mistakes when we actually read partial files. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Iustin Pop authored
Since the current start_timestamp opcode attribute refers to the inital start time, before locks are acquired, it's not useful to determine the actual execution order of two opcodes/jobs competing for the same lock. This patch adds a new field, exec_timestamp, that is updated when the opcode moves from OP_STATUS_WAITLOCK to OP_STATUS_RUNNING, thus allowing a clear view of the execution history. The new field is visible in the job output via the 'opexec' field. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-