Statistics
| Branch: | Tag: | Revision:

root / man / gnt-node.sgml @ d06565e0

History | View | Annotate | Download (12.7 kB)

1
<!doctype refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN" [
2

    
3
  <!-- Fill in your name for FIRSTNAME and SURNAME. -->
4
  <!-- Please adjust the date whenever revising the manpage. -->
5
  <!ENTITY dhdate      "<date>June 20, 2007</date>">
6
  <!-- SECTION should be 1-8, maybe w/ subsection other parameters are
7
       allowed: see man(7), man(1). -->
8
  <!ENTITY dhsection   "<manvolnum>8</manvolnum>">
9
  <!ENTITY dhucpackage "<refentrytitle>gnt-node</refentrytitle>">
10
  <!ENTITY dhpackage   "gnt-node">
11

    
12
  <!ENTITY debian      "<productname>Debian</productname>">
13
  <!ENTITY gnu         "<acronym>GNU</acronym>">
14
  <!ENTITY gpl         "&gnu; <acronym>GPL</acronym>">
15
  <!ENTITY footer SYSTEM "footer.sgml">
16
]>
17

    
18
<refentry>
19
  <refentryinfo>
20
    <copyright>
21
      <year>2006</year>
22
      <year>2007</year>
23
      <holder>Google Inc.</holder>
24
    </copyright>
25
    &dhdate;
26
  </refentryinfo>
27
  <refmeta>
28
    &dhucpackage;
29

    
30
    &dhsection;
31
    <refmiscinfo>ganeti 1.2</refmiscinfo>
32
  </refmeta>
33
  <refnamediv>
34
    <refname>&dhpackage;</refname>
35

    
36
    <refpurpose>node administration</refpurpose>
37
  </refnamediv>
38
  <refsynopsisdiv>
39
    <cmdsynopsis>
40
      <command>&dhpackage; </command>
41

    
42
      <arg choice="req">command</arg>
43
      <arg>arguments...</arg>
44
    </cmdsynopsis>
45
  </refsynopsisdiv>
46
  <refsect1>
47
    <title>DESCRIPTION</title>
48

    
49
    <para>
50
      The <command>&dhpackage;</command> is used for managing the
51
      (physical) nodes in the ganeti system.
52
    </para>
53

    
54
  </refsect1>
55
  <refsect1>
56
    <title>COMMANDS</title>
57

    
58
    <refsect2>
59
      <title>ADD</title>
60

    
61
      <cmdsynopsis>
62
        <command>add</command>
63
        <arg>-s <replaceable>secondary_ip</replaceable></arg>
64
        <arg choice="req"><replaceable>nodename</replaceable></arg>
65
      </cmdsynopsis>
66

    
67
      <para>
68
        Adds the given node to the cluster.
69
      </para>
70

    
71
      <para>
72
        This command is used to join a new node to the cluster. You
73
        will have to provide the password for root of the node to be
74
        able to add the node in the cluster. The command needs to be
75
        run on the ganeti master.
76
      </para>
77

    
78
      <para>
79
        Note that the command is potentially destructive, as it will
80
        forcibly join the specified host the cluster, not paying
81
        attention to its current status (it could be already in a
82
        cluster, etc.)
83
      </para>
84

    
85
      <para>
86
        The <option>-s</option> is used in dual-home clusters and
87
        specifies the new node's IP in the secondary network. See the
88
        discussion in <citerefentry>
89
        <refentrytitle>gnt-cluster</refentrytitle>
90
        <manvolnum>8</manvolnum> </citerefentry> for more
91
        informations.
92
      </para>
93

    
94
      <para>
95
        Example:
96
        <screen>
97
# gnt-node add node5.example.com
98
# gnt-node add -s 192.168.44.5 node5.example.com
99
        </screen>
100
      </para>
101
    </refsect2>
102

    
103
    <refsect2>
104
      <title>ADD-TAGS</title>
105

    
106
      <cmdsynopsis>
107
        <command>add-tags</command>
108
        <arg choice="opt">--from <replaceable>file</replaceable></arg>
109
        <arg choice="req"><replaceable>nodename</replaceable></arg>
110
        <arg choice="req"
111
        rep="repeat"><replaceable>tag</replaceable></arg>
112
      </cmdsynopsis>
113

    
114
      <para>
115
        Add tags to the given node. If any of the tags contains
116
        invalid characters, the entire operation will abort.
117
      </para>
118

    
119
      <para>
120
        If the <option>--from</option> option is given, the list of
121
        tags will be extended with the contents of that file (each
122
        line becomes a tag). In this case, there is not need to pass
123
        tags on the command line (if you do, both sources will be
124
        used). A file name of - will be interpreted as stdin.
125
      </para>
126
    </refsect2>
127

    
128
    <refsect2>
129
      <title>EVACUATE</title>
130

    
131
      <cmdsynopsis>
132
        <command>evacuate</command>
133
        <arg>-f</arg>
134
        <arg choice="req"><replaceable>source_node</replaceable></arg>
135
        <arg choice="req"><replaceable>destination_node</replaceable></arg>
136
      </cmdsynopsis>
137

    
138
      <para>
139
        This command will change the secondary node from the source
140
        node to the destination node for all instances having the
141
        source node as secondary. It works only for instances having
142
        a remote raid disk layout.
143
      </para>
144

    
145
      <para>
146
        Example:
147
        <screen>
148
          # gnt-node evacuate node1.example.com node2.example.com
149
        </screen>
150
      </para>
151
    </refsect2>
152

    
153
    <refsect2>
154
      <title>FAILOVER</title>
155

    
156
      <cmdsynopsis>
157
        <command>failover</command>
158
        <arg>-f</arg>
159
        <arg>--ignore-consistency</arg>
160
        <arg choice="req"><replaceable>node</replaceable></arg>
161
      </cmdsynopsis>
162

    
163
      <para>
164
        This command will fail over all instances having the given
165
        node as primary to their secondary nodes. This works only for
166
        instances having a remote raid disk layout.
167
      </para>
168

    
169
      <para>
170
        Normally the failover will check the consistency of the disks
171
        before failing over the instance. If you are trying to migrate
172
        instances off a dead node, this will fail. Use the
173
        <option>--ignore-consistency</option> option for this purpose.
174
      </para>
175

    
176
      <para>
177
        Example:
178
        <screen>
179
          # gnt-node failover node1.example.com
180
        </screen>
181
      </para>
182
    </refsect2>
183

    
184
    <refsect2>
185
      <title>INFO</title>
186

    
187
      <cmdsynopsis>
188
        <command>info</command>
189
        <arg rep="repeat"><replaceable>node</replaceable></arg>
190
      </cmdsynopsis>
191

    
192
      <para>
193
        Show detailed information about the nodes in the cluster. If you
194
        don't give any arguments, all nodes will be shows, otherwise the
195
        output will be restricted to the given names.
196
      </para>
197
    </refsect2>
198

    
199
    <refsect2>
200
      <title>LIST</title>
201

    
202
      <cmdsynopsis>
203
        <command>list</command>
204
        <arg>--no-headers</arg>
205
        <arg>--separator=<replaceable>SEPARATOR</replaceable></arg>
206
        <arg>-o <replaceable>FIELD,...</replaceable></arg>
207
      </cmdsynopsis>
208

    
209
      <para>
210
        Lists the nodes in the cluster. If you give the
211
        <option>--ip-info</option> option, the output contains just
212
        the node name, primary ip and secondary ip. In case the
213
        secondary ip is the same as the primary one, it will be listed
214
        as <emphasis>"-"</emphasis>.
215
      </para>
216

    
217
      <para>
218
        The <option>--no-headers</option> option will skip the initial
219
        header line. The <option>--separator</option> option takes an
220
        argument which denotes what will be used between the output
221
        fields. Both these options are to help scripting.
222
      </para>
223

    
224
      <para>
225
        The <option>-o</option> option takes a comma-separated list of
226
        output fields. The available fields and their meaning are:
227
        <variablelist>
228
          <varlistentry>
229
            <term>name</term>
230
            <listitem>
231
              <simpara>the node name</simpara>
232
            </listitem>
233
          </varlistentry>
234
          <varlistentry>
235
            <term>pinst</term>
236
            <listitem>
237
              <simpara>the number of instances having this node as
238
              primary</simpara>
239
            </listitem>
240
          </varlistentry>
241
          <varlistentry>
242
            <term>sinst</term>
243
            <listitem>
244
              <simpara>the number of instances having this node as a
245
              secondary node</simpara>
246
            </listitem>
247
          </varlistentry>
248
          <varlistentry>
249
            <term>pip</term>
250
            <listitem>
251
              <simpara>the primary ip of this node (used for cluster
252
              communication)</simpara>
253
            </listitem>
254
          </varlistentry>
255
          <varlistentry>
256
            <term>sip</term>
257
            <listitem>
258
              <simpara>
259
                the secondary ip of this node (used for data
260
                replication in dual-ip clusters, see <citerefentry>
261
                <refentrytitle>gnt-cluster</refentrytitle>
262
                <manvolnum>8</manvolnum>
263
                </citerefentry>
264
              </simpara>
265
            </listitem>
266
          </varlistentry>
267
          <varlistentry>
268
            <term>dtotal</term>
269
            <listitem>
270
              <simpara>total disk space in the volume group used for
271
              instance disk allocations</simpara>
272
            </listitem>
273
          </varlistentry>
274
          <varlistentry>
275
            <term>dfree</term>
276
            <listitem>
277
              <simpara>available disk space in the volume group</simpara>
278
            </listitem>
279
          </varlistentry>
280
          <varlistentry>
281
            <term>mtotal</term>
282
            <listitem>
283
              <simpara>total memory on the physical node</simpara>
284
            </listitem>
285
          </varlistentry>
286
          <varlistentry>
287
            <term>mnode</term>
288
            <listitem>
289
              <simpara>the memory used by the node itself</simpara>
290
            </listitem>
291
          </varlistentry>
292
          <varlistentry>
293
            <term>mfree</term>
294
            <listitem>
295
              <simpara>memory available for instance
296
              allocations</simpara>
297
            </listitem>
298
          </varlistentry>
299
        </variablelist>
300
      </para>
301

    
302
      <para>
303
        Note that some of this fields are known from the configuration
304
        of the cluster (<simplelist type="inline">
305
        <member>name</member> <member>pinst</member>
306
        <member>sinst</member> <member>pip</member>
307
        <member>sip</member> </simplelist> and thus the master does
308
        not need to contact the node for this data (making the listing
309
        fast if only fields from this set are selected), whereas the
310
        other fields are "live" fields and we need to make a query to
311
        the cluster nodes.
312
      </para>
313

    
314
      <para>
315
        Depending on the virtualization type and implementation
316
        details, the mtotal, mnode and mfree may have slighly varying
317
        meanings. For example, some solutions share the node memory
318
        with the pool of memory used for instances
319
        (<acronym>UML</acronym>), whereas others have separate memory
320
        for the node and for the instances (Xen).
321
      </para>
322
    </refsect2>
323

    
324
    <refsect2>
325
      <title>LIST-TAGS</title>
326

    
327
      <cmdsynopsis>
328
        <command>list-tags</command>
329
        <arg choice="req"><replaceable>nodename</replaceable></arg>
330
      </cmdsynopsis>
331

    
332
      <para>List the tags of the given node.</para>
333
    </refsect2>
334

    
335
    <refsect2>
336
      <title>REMOVE</title>
337

    
338
      <cmdsynopsis>
339
        <command>remove</command>
340
        <arg choice="req"><replaceable>nodename</replaceable></arg>
341
      </cmdsynopsis>
342

    
343
      <para>
344
        Removes a node from the cluster. Instances must be removed or
345
        migrated to another cluster before.
346
      </para>
347

    
348
      <para>
349
        Example:
350
        <screen>
351
# gnt-node remove node5.example.com
352
        </screen>
353
      </para>
354
    </refsect2>
355

    
356
    <refsect2>
357
      <title>REMOVE-TAGS</title>
358
      <cmdsynopsis>
359
        <command>remove-tags</command>
360
        <arg choice="opt">--from <replaceable>file</replaceable></arg>
361
        <arg choice="req"><replaceable>nodename</replaceable></arg>
362
        <arg choice="req"
363
        rep="repeat"><replaceable>tag</replaceable></arg>
364
      </cmdsynopsis>
365

    
366
      <para>
367
        Remove tags from the given node. If any of the tags are not
368
        existing on the node, the entire operation will abort.
369
      </para>
370

    
371
      <para>
372
        If the <option>--from</option> option is given, the list of
373
        tags will be extended with the contents of that file (each
374
        line becomes a tag). In this case, there is not need to pass
375
        tags on the command line (if you do, both sources will be
376
        used). A file name of - will be interpreted as stdin.
377
      </para>
378
    </refsect2>
379

    
380
    <refsect2>
381
      <title>VOLUMES</title>
382

    
383
      <cmdsynopsis>
384
        <command>volumes</command>
385
        <arg rep="repeat"><replaceable>node</replaceable></arg>
386
      </cmdsynopsis>
387

    
388
      <para>
389
        Lists all logical volumes and their physical disks from the node(s)
390
        provided.
391
      </para>
392

    
393
      <para>
394
        Example:
395
        <screen>
396
# gnt-node volumes node5.example.com
397
Node              PhysDev   VG    Name                                 Size Instance
398
node1.example.com /dev/hdc1 xenvg instance1.example.com-sda_11000.meta 128  instance1.example.com
399
node1.example.com /dev/hdc1 xenvg instance1.example.com-sda_11001.data 256  instance1.example.com
400
        </screen>
401
      </para>
402
    </refsect2>
403

    
404
  </refsect1>
405

    
406
  &footer;
407

    
408
</refentry>
409

    
410
<!-- Keep this comment at the end of the file
411
Local variables:
412
mode: sgml
413
sgml-omittag:t
414
sgml-shorttag:t
415
sgml-minimize-attributes:nil
416
sgml-always-quote-attributes:t
417
sgml-indent-step:2
418
sgml-indent-data:t
419
sgml-parent-document:nil
420
sgml-default-dtd-file:nil
421
sgml-exposed-tags:nil
422
sgml-local-catalogs:nil
423
sgml-local-ecat-files:nil
424
End:
425
-->