diff --git a/Makefile.am b/Makefile.am index 51270a0596274be47f58ca87809a9ed1b8aac71c..651d462e483f91d931148472cb9ec43dc2f99f88 100644 --- a/Makefile.am +++ b/Makefile.am @@ -236,6 +236,7 @@ EXTRA_DIST = \ man_MANS = \ man/ganeti.7 \ man/ganeti-cleaner.8 \ + man/ganeti-confd.8 \ man/ganeti-masterd.8 \ man/ganeti-noded.8 \ man/ganeti-os-interface.7 \ diff --git a/man/ganeti-confd.sgml b/man/ganeti-confd.sgml new file mode 100644 index 0000000000000000000000000000000000000000..373a24cb25447ade5d6baa6efdc771721fe42a8f --- /dev/null +++ b/man/ganeti-confd.sgml @@ -0,0 +1,116 @@ +<!doctype refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN" [ + + <!-- Please adjust the date whenever revising the manpage. --> + <!ENTITY dhdate "<date>October 21, 2009</date>"> + <!-- SECTION should be 1-8, maybe w/ subsection other parameters are + allowed: see man(7), man(1). --> + <!ENTITY dhsection "<manvolnum>8</manvolnum>"> + <!ENTITY dhucpackage "<refentrytitle>ganeti-confd</refentrytitle>"> + <!ENTITY dhpackage "ganeti-confd"> + + <!ENTITY debian "<productname>Debian</productname>"> + <!ENTITY gnu "<acronym>GNU</acronym>"> + <!ENTITY gpl "&gnu; <acronym>GPL</acronym>"> + <!ENTITY footer SYSTEM "footer.sgml"> +]> + +<refentry> + <refentryinfo> + <copyright> + <year>2009</year> + <holder>Google Inc.</holder> + </copyright> + &dhdate; + </refentryinfo> + <refmeta> + &dhucpackage; + + &dhsection; + <refmiscinfo>ganeti 2.1</refmiscinfo> + </refmeta> + <refnamediv> + <refname>&dhpackage;</refname> + + <refpurpose>ganeti conf daemon</refpurpose> + </refnamediv> + <refsynopsisdiv> + <cmdsynopsis> + <command>&dhpackage; </command> + <arg>-f</arg> + <arg>-d</arg> + + </cmdsynopsis> + </refsynopsisdiv> + <refsect1> + <title>DESCRIPTION</title> + + <para> + <command>&dhpackage;</command> is a daemon used to answer queries related + to the configuration of a Ganeti cluster. + </para> + + <para> + For testing purposes, you can give the <option>-f</option> + option and the program won't detach from the running terminal. + </para> + + <para> + Debug-level message can be activated by giving the + <option>-d</option> option. + </para> + <refsect2> + <title>ROLE</title> + <para> + 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. + </para> + + <para> + The config is reloaded from disk automatically when it changes, with a + rate limit of once per second. + </para> + + <para> + If the conf daemon is stopped on all nodes, its clients won't be able + to get query answers. + </para> + </refsect2> + + <refsect2> + <title>COMMUNICATION PROTOCOL</title> + <para> + 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. + </para> + </refsect2> + + </refsect1> + + &footer; + +</refentry> + +<!-- Keep this comment at the end of the file +Local variables: +mode: sgml +sgml-omittag:t +sgml-shorttag:t +sgml-minimize-attributes:nil +sgml-always-quote-attributes:t +sgml-indent-step:2 +sgml-indent-data:t +sgml-parent-document:nil +sgml-default-dtd-file:nil +sgml-exposed-tags:nil +sgml-local-catalogs:nil +sgml-local-ecat-files:nil +End: +-->