Statistics
| Branch: | Tag: | Revision:

root / daemons @ 560ef132

# Date Author Comment
00b72896 01/20/2014 11:44 am Jose A. Lopes

Start-master/stop-master always fail if confd is disabled

In 'daemons/daemon-util.in', 'start-master' and 'stop-master' always
fail if confd is disabled.

Fixes issue 685.

Signed-off-by: Jose A. Lopes <>
Reviewed-by: Klaus Aehlig <>

0d50917d 10/16/2013 07:36 pm Apollon Oikonomopoulos

daemon-util: handle luxid in {start,stop}_master()

Luxid was not handled in start_master() and stop_master() at all. As a result,
during a master-failover, luxid would be left running on the old master and
would not start on the new master, leaving the cluster without management until...

24f8fca3 07/25/2013 04:37 pm Guido Trotter

Merge branch 'stable-2.7' into stable-2.8

  • stable-2.7:
    Update NEWS and version for Ganeti 2.7.1
    daemon-util: pass --oknodo at rotate_logs
    Add logrotate example
    daemon-util: provide rotate_logs and rotate_all_logs actions

Conflicts:
NEWS: trivial...

9a8e4b73 07/24/2013 10:48 am Apollon Oikonomopoulos

daemon-util: pass --oknodo at rotate_logs

daemon-util's rotate_logs() did not pass --oknodo to start-stop-daemon while
HUPing the daemon processes. As a result, rotate_logs would fail for a
non-running daemon causing rotate_all_logs to exit prematurely.
...

f99cbfbd 07/23/2013 05:43 pm Apollon Oikonomopoulos

daemon-util: provide rotate_logs and rotate_all_logs actions

Modify daemon-util to allow sending SIGHUP to one or all daemons. This is meant
as a utility function to be used in logrotate definitions.

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

e455a3e8 07/18/2013 11:35 am Michele Tartara

Fix permission problem related to Issue 477

Commit 91525dee856951ace940c78b6254a1c7344b4803 fixed Issue 477 but broke
"gnt-cluster info".

This commit offers a solution to both problems, by changing the permission
of the socket instead of changing the permission the confd process is run...

3695a4e0 07/17/2013 06:04 pm Thomas Thrainer

Rename queryd to luxid

As queryd will, in the future, handle all LUXI request, queue jobs and
most likely perform various other tasks, it is renamed to luxid already.
This will safe some headache when upgrading Ganeti installations, as we
don't have to deal with a daemon rename....

670e954a 07/17/2013 12:33 pm Thomas Thrainer

Add queryd daemon (split from confd)

queryd is added as a new daemon which handles configuration queries over
LUXI. This functionality was removed from confd, which now only queries
over the network.

The queryd user is added to the master group such that it can access...

91525dee 07/11/2013 06:08 pm Michele Tartara

Set the correct group for confd

Starting confd as a member of the daemons group allows the RAPI daemon to access
the LUXI socket.

Fixes Issue 477.

Signed-off-by: Michele Tartara <>
Reviewed-by: Klaus Aehlig <>

e41d5a22 05/31/2013 01:45 pm Bernardo Dal Seno

Merge branch 'stable-2.7' into stable-2.8

  • stable-2.7:
    Document users-setup tool
    Adjusting permissions after confd start
    Ensure the queue socket has the right permissions
    Update IAllocator interface documentation

Conflicts:
doc/iallocator.rst
...

c93daaa9 05/29/2013 01:32 pm Helga Velroyen

Adjusting permissions after confd start

This is a workaround for issue 477. Confd resets the
permissions of the query socket in a wrong way. This
patch fixes them after the start of confd.

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

13cc7b84 03/21/2013 10:49 am Michele Tartara

Add the core of the monitoring daemon

This commit adds the core infrastructure of the monitoring daemon,
and integrates it in the build and test systems.

The actual functionality of the monitoring daemon is still completely
missing.

Signed-off-by: Michele Tartara <>...

3c286190 11/20/2012 07:51 pm Dimitris Aragiorgis

Fixes to pass pep8 (make lint)

Signed-off-by: Dimitris Aragiorgis <>
Reviewed-by: Iustin Pop <>

46118ed2 10/08/2012 02:09 pm Iustin Pop

Merge ganeti-master-cleaner back into ganeti-cleaner

As I wrote during/after the review on commit 2958c56, “ganeti-cleaner:
Separate queue cleaning code”, while I appreciated the permission
separation, I didn't like too much the file-based approach:

- it is a very simple script, and lots of the code is duplicated...

2958c56e 09/28/2012 03:16 pm Michael Hanselmann

ganeti-cleaner: Separate queue cleaning code

This code does not need to run as root, therefore it's better to split
it out. It is now run with the same permissions as the master daemon.

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

6e3bf290 09/27/2012 07:10 pm Michael Hanselmann

Cleanup of build-time shell variable replacements

Instead of having a different set in (almost) every shell script, this
inserts the most commonly used variables at build time. This way the
code for injecting a root directory for virtual clusters also is just...

bb514a22 09/27/2012 05:43 pm Michael Hanselmann

daemon-util: Use function to determine if confd is enabled

… instead of comparing with two different values in two placse.

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

8c37d618 09/21/2012 03:44 pm Michael Hanselmann

daemon-util: Support virtual clusters

GANETI_ROOTDIR contains the root directory for the current “virtual node”.

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

3c29e49d 06/12/2012 03:49 pm Iustin Pop

Fix daemon-util with non-root user models

Commit 4b42c3d6 broke non-root user mode since, while trying to do a
cleanup a move all local variable definitions to the start of the
function; however, the plain_name var is only defined later, so this
actually doesn't work....

07c7c94a 05/23/2012 11:49 am Jun Futagawa

Add support to daemon-util for distributions without start-stop-daemon

This adds support to daemon-util for Red Hat based distributions that
do not have a start-stop-daemon. If /sbin/start-stop-daemon is not
available, daemon-util will source /etc/rc.d/init.d/functions....

5ad68a23 04/13/2012 04:19 pm Michael Hanselmann

Merge branch 'devel-2.5'

  • devel-2.5: (29 commits)
    gnt-* {add,list,remove}-tags: Unify options
    Bump version for 2.5.0 final release
    configure.ac: Fix “too many arguments” error
    Fix extra whitespace
    Further fixes concerning drbd port release
    Fix a bug concerning TCP port release...
8e2ed2e8 03/28/2012 08:24 pm Michael Hanselmann

ganeti.initd: Add “status” action

Eric Rostetter sent a patch adding a “status” action, but unfortunately
his code was apparently specific to Red Hat. I hope this implementation
is more distribution-agnostic; after all “status_of_proc” is part of
LSB. Example output:...

a182a3ed 12/21/2011 04:55 pm Michael Hanselmann

serializer: Remove JSON indentation and dict key sorting

Serializing to JSON using “simplejson” is significantly slower when
indentation and/or sorting of dictionary keys is used. In simplejson 1.x
the difference isn't that big, but with simplejson 2.x the difference...

c4e5d11e 11/17/2011 03:49 pm Iustin Pop

Adapt daemon-util to ENABLE_CONFD

We still allow explicit shutdown of confd, but we prevent manual
or automatic start-up.

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

b459a848 08/30/2011 11:24 am Andrea Spadaccini

DeprecationWarning fixes for pylint

In version 0.21, pylint unified all the disable-* (and enable-*)
directives to disable (resp. enable). This leads to a lot of
DeprecationWarning being emitted even if one uses the recommended
version of pylint (0.21.1, as stated in devnotes.rst)....

e687ec01 08/25/2011 01:53 pm Michael Hanselmann

PEP8 style fixes

Identified using the “pep8” utility.

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

6890cf2e 08/05/2011 02:06 pm Michael Hanselmann

cleaner: Remove watcher's instance status file after 21 days

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

7b642c49 08/04/2011 01:28 pm Michael Hanselmann

ganeti-cleaner: Remove old watcher state files

Watcher state files can stay around if node groups are removed. With
this patch they're removed after 21 days.

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

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 <>

047686c5 01/07/2011 12:27 pm Michael Hanselmann

Merge branch 'devel-2.3'

  • devel-2.3:
    Remove unused import from client.gnt_instance
    gnt-instance console: Improve error reporting
    Increase timeout for connection on remote import
    import-export: Improve timeout error reporting

Conflicts:
lib/cmdlib.py: Trivial...

bd275a93 01/06/2011 06:42 pm Michael Hanselmann

import-export: Improve timeout error reporting

When the source cluster takes too long to create a snapshot, the
destination would time out. Unfortunately no good error message was
written unless debug logging was enabled, not even to the log file. This
will be improved with this patch....

1ef6e776 12/17/2010 06:42 pm Michael Hanselmann

Merge branch 'devel-2.3'

  • devel-2.3:
    QA: Run cluster-verify as part of all instance tests
    QA: Fix typo and add “not”
    ensure-dirs: Speed up when using big queues
    Fix gnt-cluster verify with diskless instances

Conflicts:
lib/cmdlib.py: Trivial
qa/ganeti-qa.py: Trivial...

196d70fa 12/16/2010 04:20 pm Michael Hanselmann

ensure-dirs: Speed up when using big queues

The “ensure-dirs” script as included in Ganeti 2.3 is very slow when
working with big queues requiring a change of permissions on many or all
files.

$ find /var/lib/ganeti/queue/ | wc -l
52354

Before this change:...

fdd9ac5b 11/29/2010 05:14 pm Michael Hanselmann

Move “rapi_users” file into separate directory

This reduces the number of notifications in “ganeti-rapi”. Until now it
was notified for every change in …/lib/ganeti and had to check whether
the users file was affected. A symlink is always created in cfgupgrade...

58bb385c 11/29/2010 05:05 pm Michael Hanselmann

impexpd: Implement support for IPv6

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

c74cda62 11/19/2010 05:19 pm René Nussbaumer

Support timeouts in RunCmd

Further investigations have to be done for merging some of these bits
together with import-export daemon which uses similiar logic.

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

557838c1 11/16/2010 05:19 pm René Nussbaumer

Move locking.RunningTimeout to utils

As we need this functionality in other places than just locking it makes
sense to move it to utils rather than keeping it in locking

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

5119f2ec 10/29/2010 05:48 pm Michael Hanselmann

Move ganeti-noded to ganeti.server.noded

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

d9c82a4e 10/29/2010 05:48 pm Michael Hanselmann

Move ganeti-rapi to ganeti.server.rapi

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

98028e5d 10/29/2010 05:48 pm Michael Hanselmann

Make *.in non-executable

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

29d91329 10/29/2010 05:48 pm Michael Hanselmann

Move ganeti-masterd to ganeti.server.masterd

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

5c9c0e0e 10/29/2010 05:48 pm Michael Hanselmann

Move ganeti-confd to ganeti.server.confd

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

9f4bb951 10/29/2010 05:48 pm Michael Hanselmann

Move ganeti-watcher to ganeti.watcher

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

e986f20c 10/28/2010 07:56 pm Michael Hanselmann

Add support and checks for version in LUXI

A new constant, LUXI_VERSION, is used to verify the peer's version. The
version is optional, so old(er) clients and servers talking to peers not
supporting it won't break. Example with mismatching library:

$ gnt-instance list...

b8d26c6e 10/28/2010 02:34 pm Michael Hanselmann

LUClusterVerify: Complain if disk is marked faulty

This will show a warning if, for example, one side of a DRBD
disk becomes unavailable. The data is collected separately
from the other verification data.

Example output:

  • Verifying instance status
    - ERROR: instance inst1: disk/0 on node2 is faulty...
271b7cf9 10/26/2010 12:13 pm René Nussbaumer

Adding RPC call for blockdev_wipe

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

46c8a6ab 10/14/2010 02:53 pm Iustin Pop

Add a new watcher option --ignore-pause

During cluster maintenance, when the watcher is disabled, it's useful to
run it just once. This is incovenient to do currently, as the watcher
needs to be unpaused, then run, then paused again.

This patch adds an option “--ignore-pause” that can be used to ignore...

ac96953d 10/13/2010 04:54 pm Michael Hanselmann

Fix compatibility with Pyinotify 0.8

I didn't know why the code previously used
“pyinotify.EventsCodes.ALL_FLAGS” instead of using the flags from
“pyinotify.EventsCodes” directly. Turns out that Pyinotify 0.8 has them
in “pyinotify”, not “pyinotify.EventsCodes”....

073c31a5 10/13/2010 03:18 pm Michael Hanselmann

ganeti-rapi: Watch directory, not file for user file changes

We noticed several issues when just watching the file, among them race
conditions upon replacing the file using rename(2) (the new watcher
would be created too soon). By just watching the directory for events on...

2287b920 10/13/2010 03:18 pm Michael Hanselmann

http.auth.ReadPasswordFile: Don't read file directly

Reading the file before this function allows for better error
reporting.

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

4b63dc7a 10/13/2010 02:42 pm Iustin Pop

"Fix" handling of old software versions on startup

Currently, masterd startup with old software versions is very confusing
for users: we present two tracebacks, with a message in the middle about
"version mismatch". This can lead to users believing that all that needs...

3ee53f1f 10/07/2010 11:31 am Iustin Pop

Convert ganeti daemons to the three-stage startup

This makes almost all of the daemons show error messages, and not return
until they finished listening on the appropriate sockets.

Masterd is the only one "special", as it doesn't do enough
initialization in the server creation, only later....

b42ea9ed 10/07/2010 11:31 am Iustin Pop

Change utils.GenericMain protocol

Currently, GenericMain does a two-staged workflow:

- Check, before forking
- then Exec, after forking

This means we don't have any possibility to treat preparation work
(before the daemon is ready for work) different from the actual work....

26d3fd2f 09/24/2010 06:18 pm Michael Hanselmann

jqueue: Use timeout when acquiring locks

As already noted in the design document, an opcode's priority is
increased when the lock(s) can't be acquired within a certain amount of
time, except at the highest priority, where in such a case a blocking
acquire is used....

e4ef4343 09/13/2010 06:16 pm Michael Hanselmann

RAPI server: Move user file watching out, update documentation

This patch moves the code watching the users file into a
a separate class to not mix it with HTTP serving. The users
file is now driven from outside the HTTP server class.

Also the documentation is updated to mention the automatic...

a2e60f14 09/10/2010 04:48 pm René Nussbaumer

Update the authentication mapping in RAPI if users file has been updated

Please note: This only works if the file existed upon startup. If the file was
created later, ganeti-rapi has to be restarted.

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

cbccd9ca 09/07/2010 02:26 pm René Nussbaumer

Modify daemon-util to support launching daemons under different user/groups

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

fd346851 09/07/2010 02:26 pm René Nussbaumer

Remove utils.EnsureDir as this is done by ensure-dirs.in now

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

69d89cb5 09/07/2010 02:26 pm René Nussbaumer

Partial Revert "Let ganeti-rapi run under a different user/group"

This partially reverts commit 8b72b05c51208190796b558233d69dae7643c7f7.

Basically it removes the user involved changes

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

ae8419a2 09/07/2010 01:07 pm Michael Hanselmann

Merge branch 'devel-2.2'

  • devel-2.2:
    cli: Use list of options shared between commands
    jqueue: Use separate function for encoding errors
    Fix some epydoc warnings
    Fix breakage introduced by commit 8044bf655
    Remove “dry_run” from opcodes.OpCreateInstance...
fa697271 09/07/2010 01:06 pm Michael Hanselmann

Merge branch 'stable-2.2' into devel-2.2

  • stable-2.2:
    Fix breakage introduced by commit 8044bf655
    Remove “dry_run” from opcodes.OpCreateInstance
    Disable the RAPI CA checks in watcher
    move-instance: Fix parameter order in _CreateInstance

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

b370482d 09/06/2010 01:54 pm René Nussbaumer

Allow ensure-dirs to run partially and skip big file chunks

The startup of the daemons would take a lot of time otherwise,
also it's not needed to set the permissions of those file over
and over again, because if the daemons are once migrated to the
user they will keep creating the file for that user....

5224330e 09/06/2010 01:54 pm René Nussbaumer

Adapt ensure-dirs to accomodate the additional permissions and files

Please note that this can and will be improved over time. There are discussions
about automated file generation of ensure-dirs so we can really keep all the
permissions and file ownerships in one place. Because right now they are all...

34f06005 09/02/2010 02:04 pm Iustin Pop

Disable the RAPI CA checks in watcher

Since the RAPI certificate is not necessarily self-signed, and we
currently don't have any configuration variable for the real CA file, we
disable for now the CA checks. This fixes the 'restart RAPI every 5
minutes' problem with non-self-signed certs....

c30421e0 08/25/2010 12:56 pm René Nussbaumer

Merge branch 'devel-2.2'

hansmi helped me with merging the conflict. Thanks

Conflicts:
lib/workerpool.py

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

19b9ba9a 08/24/2010 05:57 pm Michael Hanselmann

Add simple lock monitor

This patch adds an initial implementation of a lock monitor, accessible
for the user through “gnt-debug locks”. It currently shows all resource
locks: BGL, nodes and instances. Config and job queue locks could be
shown too, but wouldn't be of much help. The current owner(s) and mode...

19ddc57a 08/23/2010 03:40 pm René Nussbaumer

Add RPC calls to update /etc/hosts

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

e8d61457 08/19/2010 03:12 pm René Nussbaumer

Removing all ssh setup code from the core

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

b705c7a6 08/18/2010 11:27 am Manuel Franceschini

Support for resolving hostnames to IPv6 addresses

This patch enables IPv6 name resolution by using socket.getaddrinfo
instead of socket.gethostbyname_ex.

It renames the HostInfo class to Hostname and unifies its use throughout
the code. This is achieved by using static calls where no object is...

8b312c1d 08/18/2010 11:26 am Manuel Franceschini

Introduce new IPAddress classes

This patch unifies the netutils functions dealing with IP addresses to
three classes:
- IPAddress: Common IP address functionality
- IPv4Address: IPv4 specific functionality
- IPv6address: IPv6-specific functionality

Furthermore it adds methods to check whether an address is a loopback...

b2e8a4d9 07/29/2010 04:05 pm Michael Hanselmann

workerpool: Change signature of AddTask function to not use *args

By changing it to a normal parameter, which must be a sequence, we can
start using keyword parameters.

Before this patch all arguments to “AddTask(self, *args)” were passed as
arguments to the worker's “RunTask” method. Priorities, which should be...

340f4757 07/26/2010 05:49 pm Iustin Pop

masterd: move the IP activation from Exec to Check

Currently, the master IP activation is done in the Exec function. Since
the original masterd process returns after forking, and Exec is run in
the (grand)child process, this means that after 'ganeti-masterd' has...

e0e916fe 07/26/2010 05:45 pm Iustin Pop

Move the UsesRPC decorator from cli to rpc

This is needed because not just the cli scripts need this decorator, but
the master daemon too (and it already duplicated the code once).

In cli.py we just leave a stub, so that we don't have to modify all the
scripts to import rpc.py....

f5116c87 07/26/2010 05:09 pm Iustin Pop

watcher: smarter handling of instance records

This patch implements a few changes to the instance handling. First, old
instances which no longer exist on the cluster are removed from the
state file, to keep things clean.

Second, the instance restart counters are reset every 8 hours, since...

33231500 07/16/2010 06:18 pm Michael Hanselmann

Convert RPC client to PycURL

Instead of using our custom HTTP client, using PycURL's multi
interface allows us to get rid of the HTTP client threadpool.
The majority of the code is still in the ganeti.http.client
module.

A simple per-thread HTTP client pool gives cURL a chance to...

d8bcfe21 07/12/2010 03:58 pm Manuel Franceschini

Confd IPv6 support

This patch series basically adds a new parameter 'family' to the constructors
of daemon.AsyncUDPSocket and confd.client.ConfdUDPClient. This enables the
users of these two classes to support IPv6.

In ganeti-confd.ConfdAsyncUDPClient a method to check the address families of...

a744b676 07/09/2010 04:37 pm Manuel Franceschini

Introduce lib/netutils.py

This patch moves network utility functions to a dedicated module.

Signed-off-by: Manuel Franceschini <>
Reviewed-by: Iustin Pop <>

7e5913a7 07/07/2010 05:50 pm Luca Bigliardi

Merge branch 'devel-2.1'

Signed-off-by: Luca Bigliardi <>
Reviewed-by: Iustin Pop <>

4c32a8bd 07/07/2010 05:45 pm Luca Bigliardi

Mlockall: decrease warnings if ctypes module is not present

Node daemon prints a lot of warnings if --no-mlock option is not specified and
ctypes module is not present.

With the following patch the warning is printed only at noded startup.

Signed-off-by: Luca Bigliardi <>...

c46b9782 07/06/2010 12:24 pm Luca Bigliardi

Add drbd_helper rpc call

Signed-off-by: Luca Bigliardi <>
Reviewed-by: Iustin Pop <>

9e47cad8 07/02/2010 06:34 pm Iustin Pop

Fix ganeti-rapi version string

This was "broken" for almost a year :)

Signed-off-by: Iustin Pop <>
Reviewed-by: Guido Trotter <>

2a7c3583 07/01/2010 03:13 pm Michael Hanselmann

RAPI client: Switch to pycURL

Currently the RAPI client uses the urllib2 and httplib modules from
Python's standard library. They're used with pyOpenSSL in a very fragile
way, and there are known issues when receiving large responses from a RAPI
server.
...

9769bb78 06/30/2010 01:41 pm Manuel Franceschini

Rename some constants to facilitate IPv6 support

Signed-off-by: Manuel Franceschini <>
Reviewed-by: Guido Trotter <>

e0dbb89b 06/30/2010 01:07 pm Guido Trotter

Add missing pylint disable for "except:"

Why it's needed here but not a few lines above is a mistery that only
pylint understands.

Also fix an indentation error in another disable, for the same function.

Signed-off-by: Guido Trotter <>...

7e5a6e86 06/29/2010 06:20 pm Guido Trotter

masterd: use AsyncTerminatedMessageStream for luxi

Each luxi connection now creates an asyncore MasterClientHandler (which
is an AsyncTerminatedMessageStream subclass, sending each message to a
client worker). This makes it harder to DOS the master daemon by just...

acd9ff9e 06/23/2010 07:23 pm Iustin Pop

Introduce an RPC call for OS parameters validation

While we only support the 'parameters' check today, the RPC call is
generic enough that will be able to support other checks in the future.
The backend function will both validate the parameters list (so as to...

1d3dfa29 06/14/2010 07:57 pm Michael Hanselmann

import/export daemon: Add support for a magic prefix

This “magic” value will be used to ensure that we don't accidentially
connect to the wrong daemon (e.g. due to a bug), comparable to DRBD's
per-disk secret. Just depending on the SSL certificate isn't enough...

acd65a16 06/14/2010 07:56 pm Michael Hanselmann

import/export: Validate remote host/port

The hostname and port received from the remote cluster should
be validated, just in case.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Guido Trotter <>

560cbec1 06/14/2010 07:55 pm Michael Hanselmann

Handle ESRCH when sending signals

Upon sending signals, ESRCH can be reported when the target no
longer exists.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Guido Trotter <>

6abf7f2c 06/11/2010 12:23 pm Guido Trotter

Remove the job queue drain rpc call

This call was introduced but never used. In two years.
Since it's just creating/removing a file it can also be in simpler ways,
without a special rpc call, if/when we need it again. In the meantime,
let's give it to history....

7172f605 06/10/2010 12:17 pm Michael Hanselmann

Add unittest for ganeti-cleaner

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Guido Trotter <>

f9323011 06/08/2010 04:12 pm Michael Hanselmann

import/export: Allow script to predict size

Once we have a size for an export (in the context of the
import/export daemon), we can provide the user with a
percentage and ETA.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Guido Trotter <>

c08d76f5 06/08/2010 04:12 pm Michael Hanselmann

import/export daemon: Record amount of data transferred

This reports the amount of data transferred and the throughput (averaged
over 60 seconds) to the master daemon. While not yet fully implemented,
once the export scripts report the expected data size, we can even provide...

158377f3 06/04/2010 08:05 pm Guido Trotter

ensure-dirs: don't fail if no rapi log is present

Sometimes a node has never been a master. Or ran rapi. In that case we
need to create the file (because if later rapi gets started, it won't be
able to create it itself).

Signed-off-by: Guido Trotter <>...

46a8da3b 06/04/2010 05:23 pm René Nussbaumer

Let daemon-utils fix the owners for ganeti-rapi

This is a workaround until we fully switched to user separation and fixes the
owners of directories/log files so ganeti-rapi will start flawlessly. This is
right now run for every daemon but as it operates on a relatively small subset...

bbfd0568 06/04/2010 05:23 pm René Nussbaumer

Modify ganeti-masterd to set permission and owner of masterd-socket

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

8b72b05c 06/04/2010 05:22 pm René Nussbaumer

Let ganeti-rapi run under a different user/group

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

cdd7f900 06/03/2010 01:48 pm Guido Trotter

Convert ganeti-masterd's main thread to mainloop

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,...

db147305 06/03/2010 12:39 pm Tom Limoncelli

ganeti-watcher should attempt to fix ganeti-rapi

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....

34c9ee7b 05/28/2010 07:50 pm Michael Hanselmann

import/export daemon: Move some I/O processing code to module

The code parsing the child process' output is moved to a separate
class in the impexpd module. As more programs are added, it'll
become more complex and should be separated.

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