Name

ganeti-confd - Ganeti conf daemon

Synopsis

ganeti-confd [-f] [-d]

DESCRIPTION

ganeti-confd is a daemon used to answer queries related to the configuration of a Ganeti cluster.

For testing purposes, you can give the -f option and the program won\[aq]t detach from the running terminal.

Debug-level message can be activated by giving the -d option.

Logging to syslog, rather than its own log file, can be enabled by passing in the --syslog option.

The ganeti-confd daemon listens to port 1814 UDP, on all interfaces, by default. The port can be overridden by an entry the services database (usually /etc/services) or by passing the -p option. The -b option can be used to specify the address to bind to (defaults to 0.0.0.0).

The daemon will refuse to start if the user and group do not match the one defined at build time; this behaviour can be overridden by the --no-user-checks option.

ROLE

The role of the conf daemon is to make sure we have a highly available and very fast way to query cluster configuration values. This daemon is automatically active on all master candidates, and so has no single point of failure. It communicates via UDP so each query can easily be sent to multiple servers, and it answers queries from a cached copy of the config it keeps in memory, so no disk access is required to get an answer.

The config is reloaded from disk automatically when it changes, with a rate limit of once per second.

If the conf daemon is stopped on all nodes, its clients won\[aq]t be able to get query answers.

COMMUNICATION PROTOCOL

The confd protocol is an HMAC authenticated json-encoded custom format, over UDP. A client library is provided to make it easy to write software to query confd. More information can be found in the Ganeti 2.1 design doc, and an example usage can be seen in the (external) NBMA daemon for Ganeti.

REPORTING BUGS

Report bugs to project website (http://code.google.com/p/ganeti/) or contact the developers using the Ganeti mailing list ([email protected]).

RELATED TO ganeti-confd…

Ganeti overview and specifications: ganeti(7) (general overview), ganeti-os-interface(7) (guest OS definitions), ganeti-extstorage-interface(7) (external storage providers).

Ganeti commands: gnt-cluster(8) (cluster-wide commands), gnt-job(8) (job-related commands), gnt-node(8) (node-related commands), gnt-instance(8) (instance commands), gnt-os(8) (guest OS commands), gnt-storage(8) (storage commands), gnt-group(8) (node group commands), gnt-backup(8) (instance import/export commands), gnt-debug(8) (debug commands).

Ganeti daemons: ganeti-watcher(8) (automatic instance restarter), ganeti-cleaner(8) (job queue cleaner), ganeti-noded(8) (node daemon), ganeti-masterd(8) (master daemon), ganeti-rapi(8) (remote API daemon).

Ganeti htools: htools(1) (generic binary), hbal(1) (cluster balancer), hspace(1) (capacity calculation), hail(1) (IAllocator plugin), hscan(1) (data gatherer from remote clusters), hinfo(1) (cluster information printer), mon-collector(7) (data collectors interface).

COPYRIGHT

Copyright (C) 2006-2014 Google Inc. All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.