root / man / ganeti-masterd.sgml @ f93427cd
History | View | Annotate | Download (5 kB)
1 | 320d986d | Iustin Pop | <!doctype refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN" [ |
---|---|---|---|
2 | 320d986d | Iustin Pop | |
3 | 320d986d | Iustin Pop | <!-- Please adjust the date whenever revising the manpage. --> |
4 | 320d986d | Iustin Pop | <!ENTITY dhdate "<date>February 11, 2009</date>"> |
5 | 320d986d | Iustin Pop | <!-- SECTION should be 1-8, maybe w/ subsection other parameters are |
6 | 320d986d | Iustin Pop | allowed: see man(7), man(1). --> |
7 | 320d986d | Iustin Pop | <!ENTITY dhsection "<manvolnum>8</manvolnum>"> |
8 | 320d986d | Iustin Pop | <!ENTITY dhucpackage "<refentrytitle>ganeti-masterd</refentrytitle>"> |
9 | 320d986d | Iustin Pop | <!ENTITY dhpackage "ganeti-masterd"> |
10 | 320d986d | Iustin Pop | |
11 | 320d986d | Iustin Pop | <!ENTITY debian "<productname>Debian</productname>"> |
12 | 320d986d | Iustin Pop | <!ENTITY gnu "<acronym>GNU</acronym>"> |
13 | 320d986d | Iustin Pop | <!ENTITY gpl "&gnu; <acronym>GPL</acronym>"> |
14 | 320d986d | Iustin Pop | <!ENTITY footer SYSTEM "footer.sgml"> |
15 | 320d986d | Iustin Pop | ]> |
16 | 320d986d | Iustin Pop | |
17 | 320d986d | Iustin Pop | <refentry> |
18 | 320d986d | Iustin Pop | <refentryinfo> |
19 | 320d986d | Iustin Pop | <copyright> |
20 | 320d986d | Iustin Pop | <year>2008</year> |
21 | 320d986d | Iustin Pop | <year>2009</year> |
22 | 320d986d | Iustin Pop | <holder>Google Inc.</holder> |
23 | 320d986d | Iustin Pop | </copyright> |
24 | 320d986d | Iustin Pop | &dhdate; |
25 | 320d986d | Iustin Pop | </refentryinfo> |
26 | 320d986d | Iustin Pop | <refmeta> |
27 | 320d986d | Iustin Pop | &dhucpackage; |
28 | 320d986d | Iustin Pop | |
29 | 320d986d | Iustin Pop | &dhsection; |
30 | 320d986d | Iustin Pop | <refmiscinfo>ganeti 2.0</refmiscinfo> |
31 | 320d986d | Iustin Pop | </refmeta> |
32 | 320d986d | Iustin Pop | <refnamediv> |
33 | 320d986d | Iustin Pop | <refname>&dhpackage;</refname> |
34 | 320d986d | Iustin Pop | |
35 | 320d986d | Iustin Pop | <refpurpose>ganeti master daemon</refpurpose> |
36 | 320d986d | Iustin Pop | </refnamediv> |
37 | 320d986d | Iustin Pop | <refsynopsisdiv> |
38 | 320d986d | Iustin Pop | <cmdsynopsis> |
39 | 320d986d | Iustin Pop | <command>&dhpackage; </command> |
40 | 320d986d | Iustin Pop | <arg>-f</arg> |
41 | 320d986d | Iustin Pop | <arg>-d</arg> |
42 | 320d986d | Iustin Pop | <arg>--no-voting</arg> |
43 | 320d986d | Iustin Pop | |
44 | 320d986d | Iustin Pop | </cmdsynopsis> |
45 | 320d986d | Iustin Pop | </refsynopsisdiv> |
46 | 320d986d | Iustin Pop | <refsect1> |
47 | 320d986d | Iustin Pop | <title>DESCRIPTION</title> |
48 | 320d986d | Iustin Pop | |
49 | 320d986d | Iustin Pop | <para> |
50 | 320d986d | Iustin Pop | The <command>&dhpackage;</command> is the daemon which is |
51 | 320d986d | Iustin Pop | responsible for the overall cluster coordination. Without it, no |
52 | 320d986d | Iustin Pop | change can be performed on the cluster. |
53 | 320d986d | Iustin Pop | </para> |
54 | 320d986d | Iustin Pop | |
55 | 320d986d | Iustin Pop | <para> |
56 | 320d986d | Iustin Pop | For testing purposes, you can give the <option>-f</option> |
57 | 320d986d | Iustin Pop | option and the program won't detach from the running terminal. |
58 | 320d986d | Iustin Pop | </para> |
59 | 320d986d | Iustin Pop | |
60 | 320d986d | Iustin Pop | <para> |
61 | 320d986d | Iustin Pop | Debug-level message can be activated by giving the |
62 | 320d986d | Iustin Pop | <option>-d</option> option. |
63 | 320d986d | Iustin Pop | </para> |
64 | 320d986d | Iustin Pop | <refsect2> |
65 | 320d986d | Iustin Pop | <title>ROLE</title> |
66 | 320d986d | Iustin Pop | <para> |
67 | 320d986d | Iustin Pop | The role of the master daemon is to coordinate all the actions |
68 | 320d986d | Iustin Pop | that change the state of the cluster. Things like accepting |
69 | 320d986d | Iustin Pop | new jobs, coordinating the changes on nodes (via RPC calls to |
70 | 320d986d | Iustin Pop | the respective node daemons), maintaining the configuration |
71 | 320d986d | Iustin Pop | and so on are done via this daemon. |
72 | 320d986d | Iustin Pop | </para> |
73 | 320d986d | Iustin Pop | |
74 | 320d986d | Iustin Pop | <para> |
75 | 320d986d | Iustin Pop | The only action that can be done without the master daemon is |
76 | 320d986d | Iustin Pop | the failover of the master role to another node in the |
77 | 320d986d | Iustin Pop | cluster, via the <command>gnt-cluster masterfailover</command> |
78 | 320d986d | Iustin Pop | command. |
79 | 320d986d | Iustin Pop | </para> |
80 | 320d986d | Iustin Pop | |
81 | 320d986d | Iustin Pop | <para> |
82 | 320d986d | Iustin Pop | If the master daemon is stopped, the instances are not |
83 | 320d986d | Iustin Pop | affected, but they won't be restarted automatically in case of |
84 | 320d986d | Iustin Pop | failure. |
85 | 320d986d | Iustin Pop | </para> |
86 | 320d986d | Iustin Pop | </refsect2> |
87 | 320d986d | Iustin Pop | |
88 | 320d986d | Iustin Pop | <refsect2> |
89 | 320d986d | Iustin Pop | <title>STARTUP</title> |
90 | 320d986d | Iustin Pop | <para> |
91 | 320d986d | Iustin Pop | At startup, the master daemon will confirm with the node |
92 | 320d986d | Iustin Pop | daemons that the node it is running is indeed the master node |
93 | 320d986d | Iustin Pop | of the cluster. It will abort if it doesn't get half plus one |
94 | 320d986d | Iustin Pop | positive answers (offline nodes are queried too, just in case |
95 | 320d986d | Iustin Pop | our configuration is stale). |
96 | 320d986d | Iustin Pop | </para> |
97 | 320d986d | Iustin Pop | |
98 | 320d986d | Iustin Pop | <para> |
99 | 320d986d | Iustin Pop | For small clusters with a number of nodes down, and especially |
100 | 320d986d | Iustin Pop | for two-node clusters where the other has gone done, this |
101 | 320d986d | Iustin Pop | creates a problem. In this case the |
102 | 320d986d | Iustin Pop | <option>--no-voting</option> option can be used to skip this |
103 | 320d986d | Iustin Pop | process. The option requires interactive confirmation, as |
104 | 320d986d | Iustin Pop | having two masters on the same cluster is a very dangerous |
105 | 320d986d | Iustin Pop | situation and will most likely lead to data loss. |
106 | 320d986d | Iustin Pop | </para> |
107 | 320d986d | Iustin Pop | </refsect2> |
108 | 320d986d | Iustin Pop | |
109 | 320d986d | Iustin Pop | <refsect2> |
110 | 320d986d | Iustin Pop | <title>JOB QUEUE</title> |
111 | 320d986d | Iustin Pop | <para> |
112 | 320d986d | Iustin Pop | The master daemon maintains a job queue (located under |
113 | 320d986d | Iustin Pop | <filename |
114 | 320d986d | Iustin Pop | class="directory">@LOCALSTATEDIR@/lib/ganeti/queue</filename>) in |
115 | 320d986d | Iustin Pop | which all current jobs are stored, one job per file serialized |
116 | 320d986d | Iustin Pop | in JSON format; in this directory a subdirectory called |
117 | 320d986d | Iustin Pop | <filename class="directory">archive</filename> holds archived |
118 | 320d986d | Iustin Pop | job files. |
119 | 320d986d | Iustin Pop | </para> |
120 | 320d986d | Iustin Pop | |
121 | 320d986d | Iustin Pop | <para> |
122 | 320d986d | Iustin Pop | The moving of jobs from the current to the queue directory is |
123 | 320d986d | Iustin Pop | done via a request to the master; this can be accomplished |
124 | 320d986d | Iustin Pop | from the command line with the <command>gnt-job |
125 | 320d986d | Iustin Pop | archive</command> or <command>gnt-job autoarchive</command> |
126 | 320d986d | Iustin Pop | commands. In case of problems with the master, a job file can |
127 | 320d986d | Iustin Pop | simply be moved away or deleted (but this might leave the |
128 | 320d986d | Iustin Pop | cluster inconsistent). |
129 | 320d986d | Iustin Pop | </para> |
130 | 320d986d | Iustin Pop | |
131 | 320d986d | Iustin Pop | </refsect2> |
132 | 320d986d | Iustin Pop | |
133 | 320d986d | Iustin Pop | <refsect2> |
134 | 320d986d | Iustin Pop | <title>COMMUNICATION PROTOCOL</title> |
135 | 320d986d | Iustin Pop | <para> |
136 | 320d986d | Iustin Pop | The master accepts commands over a Unix socket, using JSON |
137 | 320d986d | Iustin Pop | serialized messages separated by a specific byte sequence. For |
138 | 320d986d | Iustin Pop | more details, see the design documentation supplied with |
139 | 320d986d | Iustin Pop | Ganeti. |
140 | 320d986d | Iustin Pop | </para> |
141 | 320d986d | Iustin Pop | </refsect2> |
142 | 320d986d | Iustin Pop | |
143 | 320d986d | Iustin Pop | </refsect1> |
144 | 320d986d | Iustin Pop | |
145 | 320d986d | Iustin Pop | &footer; |
146 | 320d986d | Iustin Pop | |
147 | 320d986d | Iustin Pop | </refentry> |
148 | 320d986d | Iustin Pop | |
149 | 320d986d | Iustin Pop | <!-- Keep this comment at the end of the file |
150 | 320d986d | Iustin Pop | Local variables: |
151 | 320d986d | Iustin Pop | mode: sgml |
152 | 320d986d | Iustin Pop | sgml-omittag:t |
153 | 320d986d | Iustin Pop | sgml-shorttag:t |
154 | 320d986d | Iustin Pop | sgml-minimize-attributes:nil |
155 | 320d986d | Iustin Pop | sgml-always-quote-attributes:t |
156 | 320d986d | Iustin Pop | sgml-indent-step:2 |
157 | 320d986d | Iustin Pop | sgml-indent-data:t |
158 | 320d986d | Iustin Pop | sgml-parent-document:nil |
159 | 320d986d | Iustin Pop | sgml-default-dtd-file:nil |
160 | 320d986d | Iustin Pop | sgml-exposed-tags:nil |
161 | 320d986d | Iustin Pop | sgml-local-catalogs:nil |
162 | 320d986d | Iustin Pop | sgml-local-ecat-files:nil |
163 | 320d986d | Iustin Pop | End: |
164 | 320d986d | Iustin Pop | --> |