root / man / gnt-node.rst @ 5914192c
History | View | Annotate | Download (21.3 kB)
1 | 7db441e6 | Iustin Pop | gnt-node(8) Ganeti | Version @GANETI_VERSION@ |
---|---|---|---|
2 | 7db441e6 | Iustin Pop | ============================================= |
3 | 7db441e6 | Iustin Pop | |
4 | 7db441e6 | Iustin Pop | Name |
5 | 7db441e6 | Iustin Pop | ---- |
6 | 7db441e6 | Iustin Pop | |
7 | 7db441e6 | Iustin Pop | gnt-node - Node administration |
8 | 7db441e6 | Iustin Pop | |
9 | 7db441e6 | Iustin Pop | Synopsis |
10 | 7db441e6 | Iustin Pop | -------- |
11 | 7db441e6 | Iustin Pop | |
12 | 7db441e6 | Iustin Pop | **gnt-node** {command} [arguments...] |
13 | 7db441e6 | Iustin Pop | |
14 | 7db441e6 | Iustin Pop | DESCRIPTION |
15 | 7db441e6 | Iustin Pop | ----------- |
16 | 7db441e6 | Iustin Pop | |
17 | 7db441e6 | Iustin Pop | The **gnt-node** is used for managing the (physical) nodes in the |
18 | 7db441e6 | Iustin Pop | Ganeti system. |
19 | 7db441e6 | Iustin Pop | |
20 | 7db441e6 | Iustin Pop | COMMANDS |
21 | 7db441e6 | Iustin Pop | -------- |
22 | 7db441e6 | Iustin Pop | |
23 | 7db441e6 | Iustin Pop | ADD |
24 | 7db441e6 | Iustin Pop | ~~~ |
25 | 7db441e6 | Iustin Pop | |
26 | f624fa95 | Iustin Pop | | **add** [\--readd] [{-s|\--secondary-ip} *secondary\_ip*] |
27 | f624fa95 | Iustin Pop | | [{-g|\--node-group} *nodegroup*] |
28 | f624fa95 | Iustin Pop | | [\--master-capable=``yes|no``] [\--vm-capable=``yes|no``] |
29 | f624fa95 | Iustin Pop | | [\--node-parameters *ndparams*] |
30 | f624fa95 | Iustin Pop | | [\--disk-state *diskstate*] |
31 | f624fa95 | Iustin Pop | | [\--hypervisor-state *hvstate*] |
32 | 4e37f591 | René Nussbaumer | | {*nodename*} |
33 | 7db441e6 | Iustin Pop | |
34 | 7db441e6 | Iustin Pop | Adds the given node to the cluster. |
35 | 7db441e6 | Iustin Pop | |
36 | 7db441e6 | Iustin Pop | This command is used to join a new node to the cluster. You will |
37 | 7db441e6 | Iustin Pop | have to provide the password for root of the node to be able to add |
38 | 7db441e6 | Iustin Pop | the node in the cluster. The command needs to be run on the Ganeti |
39 | 7db441e6 | Iustin Pop | master. |
40 | 7db441e6 | Iustin Pop | |
41 | 7db441e6 | Iustin Pop | Note that the command is potentially destructive, as it will |
42 | 7db441e6 | Iustin Pop | forcibly join the specified host the cluster, not paying attention |
43 | 7db441e6 | Iustin Pop | to its current status (it could be already in a cluster, etc.) |
44 | 7db441e6 | Iustin Pop | |
45 | 0a68e0ff | Iustin Pop | The ``-s (--secondary-ip)`` is used in dual-home clusters and |
46 | 0a68e0ff | Iustin Pop | specifies the new node's IP in the secondary network. See the |
47 | 354c4f62 | Michael Hanselmann | discussion in **gnt-cluster**\(8) for more information. |
48 | 7db441e6 | Iustin Pop | |
49 | 7db441e6 | Iustin Pop | In case you're readding a node after hardware failure, you can use |
50 | 7db441e6 | Iustin Pop | the ``--readd`` parameter. In this case, you don't need to pass the |
51 | 7db441e6 | Iustin Pop | secondary IP again, it will reused from the cluster. Also, the |
52 | 7db441e6 | Iustin Pop | drained and offline flags of the node will be cleared before |
53 | 7db441e6 | Iustin Pop | re-adding it. |
54 | 7db441e6 | Iustin Pop | |
55 | 0a68e0ff | Iustin Pop | The ``-g (--node-group)`` option is used to add the new node into a |
56 | 0a68e0ff | Iustin Pop | specific node group, specified by UUID or name. If only one node group |
57 | 0a68e0ff | Iustin Pop | exists you can skip this option, otherwise it's mandatory. |
58 | 7db441e6 | Iustin Pop | |
59 | 085e0d9f | René Nussbaumer | The ``vm_capable``, ``master_capable``, ``ndparams``, ``diskstate`` and |
60 | 354c4f62 | Michael Hanselmann | ``hvstate`` options are described in **ganeti**\(7), and are used to set |
61 | 085e0d9f | René Nussbaumer | the properties of the new node. |
62 | 7db441e6 | Iustin Pop | |
63 | 729ed537 | Bernardo Dal Seno | The command performs some operations that change the state of the master |
64 | 729ed537 | Bernardo Dal Seno | and the new node, like copying certificates and starting the node daemon |
65 | 729ed537 | Bernardo Dal Seno | on the new node, or updating ``/etc/hosts`` on the master node. If the |
66 | 729ed537 | Bernardo Dal Seno | command fails at a later stage, it doesn't undo such changes. This |
67 | 729ed537 | Bernardo Dal Seno | should not be a problem, as a successful run of ``gnt-node add`` will |
68 | 729ed537 | Bernardo Dal Seno | bring everything back in sync. |
69 | 729ed537 | Bernardo Dal Seno | |
70 | d5fe5fa9 | Michael Hanselmann | If the node was previously part of another cluster and still has daemons |
71 | d5fe5fa9 | Michael Hanselmann | running, the ``node-cleanup`` tool can be run on the machine to be added |
72 | d5fe5fa9 | Michael Hanselmann | to clean remains of the previous cluster from the node. |
73 | d5fe5fa9 | Michael Hanselmann | |
74 | 7db441e6 | Iustin Pop | Example:: |
75 | 7db441e6 | Iustin Pop | |
76 | 7db441e6 | Iustin Pop | # gnt-node add node5.example.com |
77 | 7db441e6 | Iustin Pop | # gnt-node add -s 192.0.2.5 node5.example.com |
78 | 7db441e6 | Iustin Pop | # gnt-node add -g group2 -s 192.0.2.9 node9.group2.example.com |
79 | 7db441e6 | Iustin Pop | |
80 | 7db441e6 | Iustin Pop | |
81 | 7db441e6 | Iustin Pop | EVACUATE |
82 | 7db441e6 | Iustin Pop | ~~~~~~~~ |
83 | 7db441e6 | Iustin Pop | |
84 | c5a66db3 | Michael Hanselmann | | **evacuate** [-f] [\--early-release] [\--submit] |
85 | 5ec23388 | Iustin Pop | | [{-I|\--iallocator} *NAME* \| {-n|\--new-secondary} *destination\_node*] |
86 | 5ec23388 | Iustin Pop | | [{-p|\--primary-only} \| {-s|\--secondary-only} ] |
87 | 5ec23388 | Iustin Pop | | {*node*} |
88 | 7db441e6 | Iustin Pop | |
89 | aafee533 | Michael Hanselmann | This command will move instances away from the given node. If |
90 | aafee533 | Michael Hanselmann | ``--primary-only`` is given, only primary instances are evacuated, with |
91 | aafee533 | Michael Hanselmann | ``--secondary-only`` only secondaries. If neither is given, all |
92 | aafee533 | Michael Hanselmann | instances are evacuated. It works only for instances having a drbd disk |
93 | aafee533 | Michael Hanselmann | template. |
94 | 7db441e6 | Iustin Pop | |
95 | 7db441e6 | Iustin Pop | The new location for the instances can be specified in two ways: |
96 | 7db441e6 | Iustin Pop | |
97 | 0a68e0ff | Iustin Pop | - as a single node for all instances, via the ``-n (--new-secondary)`` |
98 | 7db441e6 | Iustin Pop | option |
99 | 7db441e6 | Iustin Pop | |
100 | 0a68e0ff | Iustin Pop | - or via the ``-I (--iallocator)`` option, giving a script name as |
101 | 1a770ce5 | Bernardo Dal Seno | parameter (or ``.`` to use the default allocator), so each instance |
102 | 1a770ce5 | Bernardo Dal Seno | will be in turn placed on the (per the script) optimal node |
103 | 7db441e6 | Iustin Pop | |
104 | 7db441e6 | Iustin Pop | The ``--early-release`` changes the code so that the old storage on |
105 | 7db441e6 | Iustin Pop | node being evacuated is removed early (before the resync is |
106 | 7db441e6 | Iustin Pop | completed) and the internal Ganeti locks are also released for both |
107 | 7db441e6 | Iustin Pop | the current secondary and the new secondary, thus allowing more |
108 | 7db441e6 | Iustin Pop | parallelism in the cluster operation. This should be used only when |
109 | 7db441e6 | Iustin Pop | recovering from a disk failure on the current secondary (thus the |
110 | 7db441e6 | Iustin Pop | old storage is already broken) or when the storage on the primary |
111 | 7db441e6 | Iustin Pop | node is known to be fine (thus we won't need the old storage for |
112 | 7db441e6 | Iustin Pop | potential recovery). |
113 | 7db441e6 | Iustin Pop | |
114 | 78623223 | Iustin Pop | Note that this command is equivalent to using per-instance commands for |
115 | 78623223 | Iustin Pop | each affected instance individually: |
116 | 78623223 | Iustin Pop | |
117 | f1dff7ec | Iustin Pop | - ``--primary-only`` is equivalent to ``gnt-instance |
118 | f1dff7ec | Iustin Pop | failover/migration`` for non-DRBD instances, but for DRBD instances |
119 | f1dff7ec | Iustin Pop | it's different, and usually is a slow process (it will change the |
120 | f1dff7ec | Iustin Pop | primary to another node while keeping the secondary, this requiring |
121 | f1dff7ec | Iustin Pop | data copies, whereas failover/migrate will only toggle the |
122 | f1dff7ec | Iustin Pop | primary/secondary roles, a fast process) |
123 | 78623223 | Iustin Pop | - ``--secondary-only`` is equivalent to ``gnt-instance replace-disks`` |
124 | 78623223 | Iustin Pop | in the secondary node change mode (only valid for DRBD instances) |
125 | 78623223 | Iustin Pop | - when neither of the above is done a combination of the two cases is run |
126 | 78623223 | Iustin Pop | |
127 | 354c4f62 | Michael Hanselmann | See **ganeti**\(7) for a description of ``--submit`` and other common |
128 | c5a66db3 | Michael Hanselmann | options. |
129 | c5a66db3 | Michael Hanselmann | |
130 | 7db441e6 | Iustin Pop | Example:: |
131 | 7db441e6 | Iustin Pop | |
132 | 0a68e0ff | Iustin Pop | # gnt-node evacuate -I hail node3.example.com |
133 | 7db441e6 | Iustin Pop | |
134 | 7db441e6 | Iustin Pop | |
135 | 7db441e6 | Iustin Pop | FAILOVER |
136 | 7db441e6 | Iustin Pop | ~~~~~~~~ |
137 | 7db441e6 | Iustin Pop | |
138 | f624fa95 | Iustin Pop | **failover** [-f] [\--ignore-consistency] {*node*} |
139 | 7db441e6 | Iustin Pop | |
140 | 7db441e6 | Iustin Pop | This command will fail over all instances having the given node as |
141 | 7db441e6 | Iustin Pop | primary to their secondary nodes. This works only for instances having |
142 | 7db441e6 | Iustin Pop | a drbd disk template. |
143 | 7db441e6 | Iustin Pop | |
144 | 7db441e6 | Iustin Pop | Normally the failover will check the consistency of the disks before |
145 | 7db441e6 | Iustin Pop | failing over the instance. If you are trying to migrate instances off |
146 | 7db441e6 | Iustin Pop | a dead node, this will fail. Use the ``--ignore-consistency`` option |
147 | 7db441e6 | Iustin Pop | for this purpose. |
148 | 7db441e6 | Iustin Pop | |
149 | 7db441e6 | Iustin Pop | Example:: |
150 | 7db441e6 | Iustin Pop | |
151 | 7db441e6 | Iustin Pop | # gnt-node failover node1.example.com |
152 | 7db441e6 | Iustin Pop | |
153 | 7db441e6 | Iustin Pop | |
154 | 7db441e6 | Iustin Pop | INFO |
155 | 7db441e6 | Iustin Pop | ~~~~ |
156 | 7db441e6 | Iustin Pop | |
157 | 7db441e6 | Iustin Pop | **info** [*node*...] |
158 | 7db441e6 | Iustin Pop | |
159 | 7db441e6 | Iustin Pop | Show detailed information about the nodes in the cluster. If you |
160 | 7db441e6 | Iustin Pop | don't give any arguments, all nodes will be shows, otherwise the |
161 | 7db441e6 | Iustin Pop | output will be restricted to the given names. |
162 | 7db441e6 | Iustin Pop | |
163 | 7db441e6 | Iustin Pop | LIST |
164 | 7db441e6 | Iustin Pop | ~~~~ |
165 | 7db441e6 | Iustin Pop | |
166 | 7f5443a0 | Michael Hanselmann | | **list** |
167 | f624fa95 | Iustin Pop | | [\--no-headers] [\--separator=*SEPARATOR*] |
168 | f624fa95 | Iustin Pop | | [\--units=*UNITS*] [-v] [{-o|\--output} *[+]FIELD,...*] |
169 | f624fa95 | Iustin Pop | | [\--filter] |
170 | 7db441e6 | Iustin Pop | | [node...] |
171 | 7db441e6 | Iustin Pop | |
172 | 7db441e6 | Iustin Pop | Lists the nodes in the cluster. |
173 | 7db441e6 | Iustin Pop | |
174 | 7db441e6 | Iustin Pop | The ``--no-headers`` option will skip the initial header line. The |
175 | 7db441e6 | Iustin Pop | ``--separator`` option takes an argument which denotes what will be |
176 | 7db441e6 | Iustin Pop | used between the output fields. Both these options are to help |
177 | 7db441e6 | Iustin Pop | scripting. |
178 | 7db441e6 | Iustin Pop | |
179 | 7db441e6 | Iustin Pop | The units used to display the numeric values in the output varies, |
180 | 7db441e6 | Iustin Pop | depending on the options given. By default, the values will be |
181 | 7db441e6 | Iustin Pop | formatted in the most appropriate unit. If the ``--separator`` |
182 | 7db441e6 | Iustin Pop | option is given, then the values are shown in mebibytes to allow |
183 | 7db441e6 | Iustin Pop | parsing by scripts. In both cases, the ``--units`` option can be |
184 | 7db441e6 | Iustin Pop | used to enforce a given output unit. |
185 | 7db441e6 | Iustin Pop | |
186 | 7f5443a0 | Michael Hanselmann | Queries of nodes will be done in parallel with any running jobs. This might |
187 | 7f5443a0 | Michael Hanselmann | give inconsistent results for the free disk/memory. |
188 | 7db441e6 | Iustin Pop | |
189 | f0b1bafe | Iustin Pop | The ``-v`` option activates verbose mode, which changes the display of |
190 | 354c4f62 | Michael Hanselmann | special field states (see **ganeti**\(7)). |
191 | f0b1bafe | Iustin Pop | |
192 | 0a68e0ff | Iustin Pop | The ``-o (--output)`` option takes a comma-separated list of output |
193 | 0a68e0ff | Iustin Pop | fields. The available fields and their meaning are: |
194 | 7db441e6 | Iustin Pop | |
195 | fcdb582d | Michael Hanselmann | @QUERY_FIELDS_NODE@ |
196 | 7db441e6 | Iustin Pop | |
197 | 7db441e6 | Iustin Pop | If the value of the option starts with the character ``+``, the new |
198 | f7b769b1 | Iustin Pop | fields will be added to the default list. This allows one to quickly |
199 | 7db441e6 | Iustin Pop | see the default list plus a few other fields, instead of retyping |
200 | 7db441e6 | Iustin Pop | the entire list of fields. |
201 | 7db441e6 | Iustin Pop | |
202 | 2afd577f | Michael Hanselmann | Note that some of these fields are known from the configuration of the |
203 | 2afd577f | Michael Hanselmann | cluster (e.g. ``name``, ``pinst``, ``sinst``, ``pip``, ``sip``) and thus |
204 | 2afd577f | Michael Hanselmann | the master does not need to contact the node for this data (making the |
205 | 2afd577f | Michael Hanselmann | listing fast if only fields from this set are selected), whereas the |
206 | 2afd577f | Michael Hanselmann | other fields are "live" fields and require a query to the cluster nodes. |
207 | 2afd577f | Michael Hanselmann | |
208 | 2afd577f | Michael Hanselmann | Depending on the virtualization type and implementation details, the |
209 | 50c1e351 | Bernardo Dal Seno | ``mtotal``, ``mnode`` and ``mfree`` fields may have slightly varying |
210 | 2afd577f | Michael Hanselmann | meanings. For example, some solutions share the node memory with the |
211 | 2afd577f | Michael Hanselmann | pool of memory used for instances (KVM), whereas others have separate |
212 | 7db441e6 | Iustin Pop | memory for the node and for the instances (Xen). |
213 | 7db441e6 | Iustin Pop | |
214 | 2afd577f | Michael Hanselmann | If exactly one argument is given and it appears to be a query filter |
215 | 354c4f62 | Michael Hanselmann | (see **ganeti**\(7)), the query result is filtered accordingly. For |
216 | 2afd577f | Michael Hanselmann | ambiguous cases (e.g. a single field name as a filter) the ``--filter`` |
217 | 2afd577f | Michael Hanselmann | (``-F``) option forces the argument to be treated as a filter (e.g. |
218 | 2afd577f | Michael Hanselmann | ``gnt-node list -F master_candidate``). |
219 | 2afd577f | Michael Hanselmann | |
220 | 7db441e6 | Iustin Pop | If no node names are given, then all nodes are queried. Otherwise, |
221 | 7db441e6 | Iustin Pop | only the given nodes will be listed. |
222 | 7db441e6 | Iustin Pop | |
223 | 7f5443a0 | Michael Hanselmann | |
224 | 7acbda7b | Iustin Pop | LIST-DRBD |
225 | 7acbda7b | Iustin Pop | ~~~~~~~~~ |
226 | 7acbda7b | Iustin Pop | |
227 | 7acbda7b | Iustin Pop | **list-drbd** [\--no-headers] [\--separator=*SEPARATOR*] node |
228 | 7acbda7b | Iustin Pop | |
229 | 7acbda7b | Iustin Pop | Lists the mapping of DRBD minors for a given node. This outputs a static |
230 | 7acbda7b | Iustin Pop | list of fields (it doesn't accept the ``--output`` option), as follows: |
231 | 7acbda7b | Iustin Pop | |
232 | 7acbda7b | Iustin Pop | ``Node`` |
233 | 7acbda7b | Iustin Pop | The (full) name of the node we are querying |
234 | 7acbda7b | Iustin Pop | ``Minor`` |
235 | 7acbda7b | Iustin Pop | The DRBD minor |
236 | 7acbda7b | Iustin Pop | ``Instance`` |
237 | 7acbda7b | Iustin Pop | The instance the DRBD minor belongs to |
238 | 7acbda7b | Iustin Pop | ``Disk`` |
239 | 7acbda7b | Iustin Pop | The disk index that the DRBD minor belongs to |
240 | 7acbda7b | Iustin Pop | ``Role`` |
241 | 7acbda7b | Iustin Pop | Either ``primary`` or ``secondary``, denoting the role of the node for |
242 | 7acbda7b | Iustin Pop | the instance (note: this is not the live status of the DRBD device, |
243 | 7acbda7b | Iustin Pop | but the configuration value) |
244 | 7acbda7b | Iustin Pop | ``PeerNode`` |
245 | 7acbda7b | Iustin Pop | The node that the minor is connected to on the other end |
246 | 7acbda7b | Iustin Pop | |
247 | 7acbda7b | Iustin Pop | This command can be used as a reverse lookup (from node and minor) to a |
248 | 7acbda7b | Iustin Pop | given instance, which can be useful when debugging DRBD issues. |
249 | 7acbda7b | Iustin Pop | |
250 | 354c4f62 | Michael Hanselmann | Note that this command queries Ganeti via **ganeti-confd**\(8), so |
251 | 7acbda7b | Iustin Pop | it won't be available if support for ``confd`` has not been enabled at |
252 | 7acbda7b | Iustin Pop | build time; furthermore, in Ganeti 2.6 this is only available via the |
253 | 7acbda7b | Iustin Pop | Haskell version of confd (again selected at build time). |
254 | 7acbda7b | Iustin Pop | |
255 | 7f5443a0 | Michael Hanselmann | LIST-FIELDS |
256 | 7f5443a0 | Michael Hanselmann | ~~~~~~~~~~~ |
257 | 7f5443a0 | Michael Hanselmann | |
258 | 7f5443a0 | Michael Hanselmann | **list-fields** [field...] |
259 | 7f5443a0 | Michael Hanselmann | |
260 | 7f5443a0 | Michael Hanselmann | Lists available fields for nodes. |
261 | 7f5443a0 | Michael Hanselmann | |
262 | 7f5443a0 | Michael Hanselmann | |
263 | 7db441e6 | Iustin Pop | MIGRATE |
264 | 7db441e6 | Iustin Pop | ~~~~~~~ |
265 | 7db441e6 | Iustin Pop | |
266 | c5a66db3 | Michael Hanselmann | | **migrate** [-f] [\--non-live] [\--migration-mode=live\|non-live] |
267 | c5a66db3 | Michael Hanselmann | | [\--ignore-ipolicy] [\--submit] {*node*} |
268 | 7db441e6 | Iustin Pop | |
269 | 7db441e6 | Iustin Pop | This command will migrate all instances having the given node as |
270 | 7db441e6 | Iustin Pop | primary to their secondary nodes. This works only for instances |
271 | 7db441e6 | Iustin Pop | having a drbd disk template. |
272 | 7db441e6 | Iustin Pop | |
273 | 7db441e6 | Iustin Pop | As for the **gnt-instance migrate** command, the options |
274 | 8c0b16f6 | Guido Trotter | ``--no-live``, ``--migration-mode`` and ``--no-runtime-changes`` |
275 | 8c0b16f6 | Guido Trotter | can be given to influence the migration type. |
276 | 7db441e6 | Iustin Pop | |
277 | 50c1e351 | Bernardo Dal Seno | If ``--ignore-ipolicy`` is given any instance policy violations |
278 | 50c1e351 | Bernardo Dal Seno | occurring during this operation are ignored. |
279 | 9fa567b3 | René Nussbaumer | |
280 | 354c4f62 | Michael Hanselmann | See **ganeti**\(7) for a description of ``--submit`` and other common |
281 | c5a66db3 | Michael Hanselmann | options. |
282 | c5a66db3 | Michael Hanselmann | |
283 | 7db441e6 | Iustin Pop | Example:: |
284 | 7db441e6 | Iustin Pop | |
285 | 7db441e6 | Iustin Pop | # gnt-node migrate node1.example.com |
286 | 7db441e6 | Iustin Pop | |
287 | 7db441e6 | Iustin Pop | |
288 | 7db441e6 | Iustin Pop | MODIFY |
289 | 7db441e6 | Iustin Pop | ~~~~~~ |
290 | 7db441e6 | Iustin Pop | |
291 | f624fa95 | Iustin Pop | | **modify** [-f] [\--submit] |
292 | f624fa95 | Iustin Pop | | [{-C|\--master-candidate} ``yes|no``] |
293 | f624fa95 | Iustin Pop | | [{-D|\--drained} ``yes|no``] [{-O|\--offline} ``yes|no``] |
294 | f624fa95 | Iustin Pop | | [\--master-capable=``yes|no``] [\--vm-capable=``yes|no``] [\--auto-promote] |
295 | f624fa95 | Iustin Pop | | [{-s|\--secondary-ip} *secondary_ip*] |
296 | f624fa95 | Iustin Pop | | [\--node-parameters *ndparams*] |
297 | f624fa95 | Iustin Pop | | [\--node-powered=``yes|no``] |
298 | f624fa95 | Iustin Pop | | [\--hypervisor-state *hvstate*] |
299 | f624fa95 | Iustin Pop | | [\--disk-state *diskstate*] |
300 | 7db441e6 | Iustin Pop | | {*node*} |
301 | 7db441e6 | Iustin Pop | |
302 | 7db441e6 | Iustin Pop | This command changes the role of the node. Each options takes |
303 | 7db441e6 | Iustin Pop | either a literal yes or no, and only one option should be given as |
304 | 7db441e6 | Iustin Pop | yes. The meaning of the roles and flags are described in the |
305 | 354c4f62 | Michael Hanselmann | manpage **ganeti**\(7). |
306 | 7db441e6 | Iustin Pop | |
307 | 0a68e0ff | Iustin Pop | The option ``--node-powered`` can be used to modify state-of-record if |
308 | 0a68e0ff | Iustin Pop | it doesn't reflect the reality anymore. |
309 | dd94e9f6 | René Nussbaumer | |
310 | 7db441e6 | Iustin Pop | In case a node is demoted from the master candidate role, the |
311 | 7db441e6 | Iustin Pop | operation will be refused unless you pass the ``--auto-promote`` |
312 | 7db441e6 | Iustin Pop | option. This option will cause the operation to lock all cluster nodes |
313 | 7db441e6 | Iustin Pop | (thus it will not be able to run in parallel with most other jobs), |
314 | 7db441e6 | Iustin Pop | but it allows automated maintenance of the cluster candidate pool. If |
315 | 7db441e6 | Iustin Pop | locking all cluster node is too expensive, another option is to |
316 | 7db441e6 | Iustin Pop | promote manually another node to master candidate before demoting the |
317 | 7db441e6 | Iustin Pop | current one. |
318 | 7db441e6 | Iustin Pop | |
319 | 7db441e6 | Iustin Pop | Example (setting a node offline, which will demote it from master |
320 | 7db441e6 | Iustin Pop | candidate role if is in that role):: |
321 | 7db441e6 | Iustin Pop | |
322 | 7db441e6 | Iustin Pop | # gnt-node modify --offline=yes node1.example.com |
323 | 7db441e6 | Iustin Pop | |
324 | 0a68e0ff | Iustin Pop | The ``-s (--secondary-ip)`` option can be used to change the node's |
325 | 0a68e0ff | Iustin Pop | secondary ip. No drbd instances can be running on the node, while this |
326 | 79829d23 | Guido Trotter | operation is taking place. Remember that the secondary ip must be |
327 | 79829d23 | Guido Trotter | reachable from the master secondary ip, when being changed, so be sure |
328 | 79829d23 | Guido Trotter | that the node has the new IP already configured and active. In order to |
329 | 79829d23 | Guido Trotter | convert a cluster from single homed to multi-homed or vice versa |
330 | 79829d23 | Guido Trotter | ``--force`` is needed as well, and the target node for the first change |
331 | 79829d23 | Guido Trotter | must be the master. |
332 | 7db441e6 | Iustin Pop | |
333 | 354c4f62 | Michael Hanselmann | See **ganeti**\(7) for a description of ``--submit`` and other common |
334 | 13ddcb50 | Michael Hanselmann | options. |
335 | 13ddcb50 | Michael Hanselmann | |
336 | 7db441e6 | Iustin Pop | Example (setting the node back to online and master candidate):: |
337 | 7db441e6 | Iustin Pop | |
338 | 7db441e6 | Iustin Pop | # gnt-node modify --offline=no --master-candidate=yes node1.example.com |
339 | 7db441e6 | Iustin Pop | |
340 | 7db441e6 | Iustin Pop | |
341 | 7db441e6 | Iustin Pop | REMOVE |
342 | 7db441e6 | Iustin Pop | ~~~~~~ |
343 | 7db441e6 | Iustin Pop | |
344 | 7db441e6 | Iustin Pop | **remove** {*nodename*} |
345 | 7db441e6 | Iustin Pop | |
346 | 7db441e6 | Iustin Pop | Removes a node from the cluster. Instances must be removed or |
347 | 7db441e6 | Iustin Pop | migrated to another cluster before. |
348 | 7db441e6 | Iustin Pop | |
349 | 7db441e6 | Iustin Pop | Example:: |
350 | 7db441e6 | Iustin Pop | |
351 | 7db441e6 | Iustin Pop | # gnt-node remove node5.example.com |
352 | 7db441e6 | Iustin Pop | |
353 | 7db441e6 | Iustin Pop | |
354 | 7db441e6 | Iustin Pop | VOLUMES |
355 | 7db441e6 | Iustin Pop | ~~~~~~~ |
356 | 7db441e6 | Iustin Pop | |
357 | f624fa95 | Iustin Pop | | **volumes** [\--no-headers] [\--human-readable] |
358 | f624fa95 | Iustin Pop | | [\--separator=*SEPARATOR*] [{-o|\--output} *FIELDS*] |
359 | 7db441e6 | Iustin Pop | | [*node*...] |
360 | 7db441e6 | Iustin Pop | |
361 | 7db441e6 | Iustin Pop | Lists all logical volumes and their physical disks from the node(s) |
362 | 7db441e6 | Iustin Pop | provided. |
363 | 7db441e6 | Iustin Pop | |
364 | 7db441e6 | Iustin Pop | The ``--no-headers`` option will skip the initial header line. The |
365 | 7db441e6 | Iustin Pop | ``--separator`` option takes an argument which denotes what will be |
366 | 7db441e6 | Iustin Pop | used between the output fields. Both these options are to help |
367 | 7db441e6 | Iustin Pop | scripting. |
368 | 7db441e6 | Iustin Pop | |
369 | 7db441e6 | Iustin Pop | The units used to display the numeric values in the output varies, |
370 | 7db441e6 | Iustin Pop | depending on the options given. By default, the values will be |
371 | 7db441e6 | Iustin Pop | formatted in the most appropriate unit. If the ``--separator`` |
372 | 7db441e6 | Iustin Pop | option is given, then the values are shown in mebibytes to allow |
373 | 7db441e6 | Iustin Pop | parsing by scripts. In both cases, the ``--units`` option can be |
374 | 7db441e6 | Iustin Pop | used to enforce a given output unit. |
375 | 7db441e6 | Iustin Pop | |
376 | 0a68e0ff | Iustin Pop | The ``-o (--output)`` option takes a comma-separated list of output |
377 | 0a68e0ff | Iustin Pop | fields. The available fields and their meaning are: |
378 | 7db441e6 | Iustin Pop | |
379 | 7db441e6 | Iustin Pop | node |
380 | 7db441e6 | Iustin Pop | the node name on which the volume exists |
381 | 7db441e6 | Iustin Pop | |
382 | 7db441e6 | Iustin Pop | phys |
383 | 7db441e6 | Iustin Pop | the physical drive (on which the LVM physical volume lives) |
384 | 7db441e6 | Iustin Pop | |
385 | 7db441e6 | Iustin Pop | vg |
386 | 7db441e6 | Iustin Pop | the volume group name |
387 | 7db441e6 | Iustin Pop | |
388 | 7db441e6 | Iustin Pop | name |
389 | 7db441e6 | Iustin Pop | the logical volume name |
390 | 7db441e6 | Iustin Pop | |
391 | 7db441e6 | Iustin Pop | size |
392 | 7db441e6 | Iustin Pop | the logical volume size |
393 | 7db441e6 | Iustin Pop | |
394 | 7db441e6 | Iustin Pop | instance |
395 | 7db441e6 | Iustin Pop | The name of the instance to which this volume belongs, or (in case |
396 | 7db441e6 | Iustin Pop | it's an orphan volume) the character "-" |
397 | 7db441e6 | Iustin Pop | |
398 | 7db441e6 | Iustin Pop | |
399 | 7db441e6 | Iustin Pop | Example:: |
400 | 7db441e6 | Iustin Pop | |
401 | 7db441e6 | Iustin Pop | # gnt-node volumes node5.example.com |
402 | 7db441e6 | Iustin Pop | Node PhysDev VG Name Size Instance |
403 | 7db441e6 | Iustin Pop | node1.example.com /dev/hdc1 xenvg instance1.example.com-sda_11000.meta 128 instance1.example.com |
404 | 7db441e6 | Iustin Pop | node1.example.com /dev/hdc1 xenvg instance1.example.com-sda_11001.data 256 instance1.example.com |
405 | 7db441e6 | Iustin Pop | |
406 | 7db441e6 | Iustin Pop | |
407 | 7db441e6 | Iustin Pop | LIST-STORAGE |
408 | 7db441e6 | Iustin Pop | ~~~~~~~~~~~~ |
409 | 7db441e6 | Iustin Pop | |
410 | f624fa95 | Iustin Pop | | **list-storage** [\--no-headers] [\--human-readable] |
411 | f624fa95 | Iustin Pop | | [\--separator=*SEPARATOR*] [\--storage-type=*STORAGE\_TYPE*] |
412 | f624fa95 | Iustin Pop | | [{-o|\--output} *FIELDS*] |
413 | 7db441e6 | Iustin Pop | | [*node*...] |
414 | 7db441e6 | Iustin Pop | |
415 | 7db441e6 | Iustin Pop | Lists the available storage units and their details for the given |
416 | 7db441e6 | Iustin Pop | node(s). |
417 | 7db441e6 | Iustin Pop | |
418 | 7db441e6 | Iustin Pop | The ``--no-headers`` option will skip the initial header line. The |
419 | 7db441e6 | Iustin Pop | ``--separator`` option takes an argument which denotes what will be |
420 | 7db441e6 | Iustin Pop | used between the output fields. Both these options are to help |
421 | 7db441e6 | Iustin Pop | scripting. |
422 | 7db441e6 | Iustin Pop | |
423 | 7db441e6 | Iustin Pop | The units used to display the numeric values in the output varies, |
424 | 7db441e6 | Iustin Pop | depending on the options given. By default, the values will be |
425 | 7db441e6 | Iustin Pop | formatted in the most appropriate unit. If the ``--separator`` |
426 | 7db441e6 | Iustin Pop | option is given, then the values are shown in mebibytes to allow |
427 | 7db441e6 | Iustin Pop | parsing by scripts. In both cases, the ``--units`` option can be |
428 | 7db441e6 | Iustin Pop | used to enforce a given output unit. |
429 | 7db441e6 | Iustin Pop | |
430 | 7db441e6 | Iustin Pop | The ``--storage-type`` option can be used to choose a storage unit |
431 | 7db441e6 | Iustin Pop | type. Possible choices are lvm-pv, lvm-vg or file. |
432 | 7db441e6 | Iustin Pop | |
433 | 0a68e0ff | Iustin Pop | The ``-o (--output)`` option takes a comma-separated list of output |
434 | 0a68e0ff | Iustin Pop | fields. The available fields and their meaning are: |
435 | 7db441e6 | Iustin Pop | |
436 | 7db441e6 | Iustin Pop | node |
437 | 7db441e6 | Iustin Pop | the node name on which the volume exists |
438 | 7db441e6 | Iustin Pop | |
439 | 7db441e6 | Iustin Pop | type |
440 | 7db441e6 | Iustin Pop | the type of the storage unit (currently just what is passed in via |
441 | 7db441e6 | Iustin Pop | ``--storage-type``) |
442 | 7db441e6 | Iustin Pop | |
443 | 7db441e6 | Iustin Pop | name |
444 | 7db441e6 | Iustin Pop | the path/identifier of the storage unit |
445 | 7db441e6 | Iustin Pop | |
446 | 7db441e6 | Iustin Pop | size |
447 | 7db441e6 | Iustin Pop | total size of the unit; for the file type see a note below |
448 | 7db441e6 | Iustin Pop | |
449 | 7db441e6 | Iustin Pop | used |
450 | 7db441e6 | Iustin Pop | used space in the unit; for the file type see a note below |
451 | 7db441e6 | Iustin Pop | |
452 | 7db441e6 | Iustin Pop | free |
453 | 7db441e6 | Iustin Pop | available disk space |
454 | 7db441e6 | Iustin Pop | |
455 | 7db441e6 | Iustin Pop | allocatable |
456 | 7db441e6 | Iustin Pop | whether we the unit is available for allocation (only lvm-pv can |
457 | 7db441e6 | Iustin Pop | change this setting, the other types always report true) |
458 | 7db441e6 | Iustin Pop | |
459 | 7db441e6 | Iustin Pop | |
460 | 7db441e6 | Iustin Pop | Note that for the "file" type, the total disk space might not equal |
461 | 7db441e6 | Iustin Pop | to the sum of used and free, due to the method Ganeti uses to |
462 | 7db441e6 | Iustin Pop | compute each of them. The total and free values are computed as the |
463 | 7db441e6 | Iustin Pop | total and free space values for the filesystem to which the |
464 | 7db441e6 | Iustin Pop | directory belongs, but the used space is computed from the used |
465 | 7db441e6 | Iustin Pop | space under that directory *only*, which might not be necessarily |
466 | 7db441e6 | Iustin Pop | the root of the filesystem, and as such there could be files |
467 | 7db441e6 | Iustin Pop | outside the file storage directory using disk space and causing a |
468 | 7db441e6 | Iustin Pop | mismatch in the values. |
469 | 7db441e6 | Iustin Pop | |
470 | 7db441e6 | Iustin Pop | Example:: |
471 | 7db441e6 | Iustin Pop | |
472 | 7db441e6 | Iustin Pop | node1# gnt-node list-storage node2 |
473 | 7db441e6 | Iustin Pop | Node Type Name Size Used Free Allocatable |
474 | 7db441e6 | Iustin Pop | node2 lvm-pv /dev/sda7 673.8G 1.5G 672.3G Y |
475 | 7db441e6 | Iustin Pop | node2 lvm-pv /dev/sdb1 698.6G 0M 698.6G Y |
476 | 7db441e6 | Iustin Pop | |
477 | 7db441e6 | Iustin Pop | |
478 | 7db441e6 | Iustin Pop | MODIFY-STORAGE |
479 | 7db441e6 | Iustin Pop | ~~~~~~~~~~~~~~ |
480 | 7db441e6 | Iustin Pop | |
481 | c5a66db3 | Michael Hanselmann | | **modify-storage** [\--allocatable={yes|no}] [\--submit] |
482 | c5a66db3 | Michael Hanselmann | | {*node*} {*storage-type*} {*volume-name*} |
483 | 7db441e6 | Iustin Pop | |
484 | 7db441e6 | Iustin Pop | Modifies storage volumes on a node. Only LVM physical volumes can |
485 | 7db441e6 | Iustin Pop | be modified at the moment. They have a storage type of "lvm-pv". |
486 | 7db441e6 | Iustin Pop | |
487 | 7db441e6 | Iustin Pop | Example:: |
488 | 7db441e6 | Iustin Pop | |
489 | 7db441e6 | Iustin Pop | # gnt-node modify-storage --allocatable no node5.example.com lvm-pv /dev/sdb1 |
490 | 7db441e6 | Iustin Pop | |
491 | 7db441e6 | Iustin Pop | |
492 | 7db441e6 | Iustin Pop | REPAIR-STORAGE |
493 | 7db441e6 | Iustin Pop | ~~~~~~~~~~~~~~ |
494 | 7db441e6 | Iustin Pop | |
495 | c5a66db3 | Michael Hanselmann | | **repair-storage** [\--ignore-consistency] ]\--submit] |
496 | c5a66db3 | Michael Hanselmann | | {*node*} {*storage-type*} {*volume-name*} |
497 | 7db441e6 | Iustin Pop | |
498 | 7db441e6 | Iustin Pop | Repairs a storage volume on a node. Only LVM volume groups can be |
499 | 7db441e6 | Iustin Pop | repaired at this time. They have the storage type "lvm-vg". |
500 | 7db441e6 | Iustin Pop | |
501 | f624fa95 | Iustin Pop | On LVM volume groups, **repair-storage** runs ``vgreduce |
502 | f624fa95 | Iustin Pop | --removemissing``. |
503 | 7db441e6 | Iustin Pop | |
504 | 7db441e6 | Iustin Pop | |
505 | 7db441e6 | Iustin Pop | |
506 | 7db441e6 | Iustin Pop | **Caution:** Running this command can lead to data loss. Use it with |
507 | 7db441e6 | Iustin Pop | care. |
508 | 7db441e6 | Iustin Pop | |
509 | 7db441e6 | Iustin Pop | The ``--ignore-consistency`` option will ignore any inconsistent |
510 | 7db441e6 | Iustin Pop | disks (on the nodes paired with this one). Use of this option is |
511 | 7db441e6 | Iustin Pop | most likely to lead to data-loss. |
512 | 7db441e6 | Iustin Pop | |
513 | 7db441e6 | Iustin Pop | Example:: |
514 | 7db441e6 | Iustin Pop | |
515 | 7db441e6 | Iustin Pop | # gnt-node repair-storage node5.example.com lvm-vg xenvg |
516 | 7db441e6 | Iustin Pop | |
517 | 7db441e6 | Iustin Pop | |
518 | 7db441e6 | Iustin Pop | POWERCYCLE |
519 | 7db441e6 | Iustin Pop | ~~~~~~~~~~ |
520 | 7db441e6 | Iustin Pop | |
521 | c5a66db3 | Michael Hanselmann | **powercycle** [\--yes] [\--force] [\--submit] {*node*} |
522 | 7db441e6 | Iustin Pop | |
523 | 71ed8d22 | René Nussbaumer | This command (tries to) forcefully reboot a node. It is a command |
524 | 9f2c2103 | Michael Hanselmann | that can be used if the node environment is broken, such that the |
525 | 9f2c2103 | Michael Hanselmann | admin can no longer login over SSH, but the Ganeti node daemon is |
526 | 7db441e6 | Iustin Pop | still working. |
527 | 7db441e6 | Iustin Pop | |
528 | 7db441e6 | Iustin Pop | Note that this command is not guaranteed to work; it depends on the |
529 | 7db441e6 | Iustin Pop | hypervisor how effective is the reboot attempt. For Linux, this |
530 | 9f2c2103 | Michael Hanselmann | command requires the kernel option ``CONFIG_MAGIC_SYSRQ`` to be |
531 | 7db441e6 | Iustin Pop | enabled. |
532 | 7db441e6 | Iustin Pop | |
533 | 7db441e6 | Iustin Pop | The ``--yes`` option can be used to skip confirmation, while the |
534 | 7db441e6 | Iustin Pop | ``--force`` option is needed if the target node is the master |
535 | 7db441e6 | Iustin Pop | node. |
536 | abefdcff | René Nussbaumer | |
537 | 354c4f62 | Michael Hanselmann | See **ganeti**\(7) for a description of ``--submit`` and other common |
538 | c5a66db3 | Michael Hanselmann | options. |
539 | c5a66db3 | Michael Hanselmann | |
540 | abefdcff | René Nussbaumer | POWER |
541 | abefdcff | René Nussbaumer | ~~~~~ |
542 | abefdcff | René Nussbaumer | |
543 | b497a636 | René Nussbaumer | **power** [``--force``] [``--ignore-status``] [``--all``] |
544 | 0a1fc31c | René Nussbaumer | [``--power-delay``] on|off|cycle|status [*nodes*] |
545 | abefdcff | René Nussbaumer | |
546 | 71ed8d22 | René Nussbaumer | This command calls out to out-of-band management to change the power |
547 | abefdcff | René Nussbaumer | state of given node. With ``status`` you get the power status as reported |
548 | 50c1e351 | Bernardo Dal Seno | by the out-of-band management script. |
549 | bee8c465 | Iustin Pop | |
550 | bee8c465 | Iustin Pop | Note that this command will only work if the out-of-band functionality |
551 | bee8c465 | Iustin Pop | is configured and enabled on the cluster. If this is not the case, |
552 | bee8c465 | Iustin Pop | please use the **powercycle** command above. |
553 | b497a636 | René Nussbaumer | |
554 | 0a1fc31c | René Nussbaumer | Using ``--force`` you skip the confirmation to do the operation. |
555 | 0a1fc31c | René Nussbaumer | Currently this only has effect on ``off`` and ``cycle``. On those two |
556 | 0a1fc31c | René Nussbaumer | you can *not* operate on the master. However, the command will provide |
557 | 0a1fc31c | René Nussbaumer | you with the command to invoke to operate on the master nerver-mind. |
558 | 0a1fc31c | René Nussbaumer | This is considered harmful and Ganeti does not support the use of it. |
559 | b497a636 | René Nussbaumer | |
560 | 0a1fc31c | René Nussbaumer | Providing ``--ignore-status`` will ignore the offline=N state of a node |
561 | 0a1fc31c | René Nussbaumer | and continue with power off. |
562 | 0a1fc31c | René Nussbaumer | |
563 | 0a1fc31c | René Nussbaumer | ``--power-delay`` specifies the time in seconds (factions allowed) |
564 | 0a1fc31c | René Nussbaumer | waited between powering on the next node. This is by default 2 seconds |
565 | 0a1fc31c | René Nussbaumer | but can increased if needed with this option. |
566 | 0a1fc31c | René Nussbaumer | |
567 | 0a1fc31c | René Nussbaumer | *nodes* are optional. If not provided it will call out for every node in |
568 | 0a1fc31c | René Nussbaumer | the cluster. Except for the ``off`` and ``cycle`` command where you've |
569 | 0a1fc31c | René Nussbaumer | to explicit use ``--all`` to select all. |
570 | b497a636 | René Nussbaumer | |
571 | a0724772 | René Nussbaumer | |
572 | a0724772 | René Nussbaumer | HEALTH |
573 | a0724772 | René Nussbaumer | ~~~~~~ |
574 | a0724772 | René Nussbaumer | |
575 | a0724772 | René Nussbaumer | **health** [*nodes*] |
576 | a0724772 | René Nussbaumer | |
577 | 71ed8d22 | René Nussbaumer | This command calls out to out-of-band management to ask for the health status |
578 | a0724772 | René Nussbaumer | of all or given nodes. The health contains the node name and then the items |
579 | a0724772 | René Nussbaumer | element with their status in a ``item=status`` manner. Where ``item`` is script |
580 | a0724772 | René Nussbaumer | specific and ``status`` can be one of ``OK``, ``WARNING``, ``CRITICAL`` or |
581 | a0724772 | René Nussbaumer | ``UNKNOWN``. Items with status ``WARNING`` or ``CRITICAL`` are logged and |
582 | a0724772 | René Nussbaumer | annotated in the command line output. |
583 | 9ff4f2c0 | Michael Hanselmann | |
584 | 6d846d0e | Michael Hanselmann | |
585 | 6d846d0e | Michael Hanselmann | RESTRICTED-COMMAND |
586 | 6d846d0e | Michael Hanselmann | ~~~~~~~~~~~~~~~~~~ |
587 | 6d846d0e | Michael Hanselmann | |
588 | 67c15d8b | Iustin Pop | | **restricted-command** [-M] [\--sync] |
589 | 6d846d0e | Michael Hanselmann | | { -g *group* *command* | *command* *nodes*... } |
590 | 6d846d0e | Michael Hanselmann | |
591 | 6d846d0e | Michael Hanselmann | Executes a restricted command on the specified nodes. Restricted commands are |
592 | 6d846d0e | Michael Hanselmann | not arbitrary, but must reside in |
593 | 878c42ae | Michael Hanselmann | ``@SYSCONFDIR@/ganeti/restricted-commands`` on a node, either as a regular |
594 | 6d846d0e | Michael Hanselmann | file or as a symlink. The directory must be owned by root and not be |
595 | 6d846d0e | Michael Hanselmann | world- or group-writable. If a command fails verification or otherwise |
596 | 6d846d0e | Michael Hanselmann | fails to start, the node daemon log must be consulted for more detailed |
597 | 6d846d0e | Michael Hanselmann | information. |
598 | 6d846d0e | Michael Hanselmann | |
599 | 6d846d0e | Michael Hanselmann | Example for running a command on two nodes:: |
600 | 6d846d0e | Michael Hanselmann | |
601 | 6d846d0e | Michael Hanselmann | # gnt-node restricted-command mycommand \ |
602 | 6d846d0e | Michael Hanselmann | node1.example.com node2.example.com |
603 | 6d846d0e | Michael Hanselmann | |
604 | 6d846d0e | Michael Hanselmann | The ``-g`` option can be used to run a command only on a specific node |
605 | 6d846d0e | Michael Hanselmann | group, e.g.:: |
606 | 6d846d0e | Michael Hanselmann | |
607 | 6d846d0e | Michael Hanselmann | # gnt-node restricted-command -g default mycommand |
608 | 6d846d0e | Michael Hanselmann | |
609 | 6d846d0e | Michael Hanselmann | The ``-M`` option can be used to prepend the node name to all command |
610 | 6d846d0e | Michael Hanselmann | output lines. ``--sync`` forces the opcode to acquire the node lock(s) |
611 | 6d846d0e | Michael Hanselmann | in exclusive mode. |
612 | 6d846d0e | Michael Hanselmann | |
613 | 7322bf7b | Iustin Pop | Tags |
614 | 7322bf7b | Iustin Pop | ~~~~ |
615 | 7322bf7b | Iustin Pop | |
616 | 7322bf7b | Iustin Pop | ADD-TAGS |
617 | 7322bf7b | Iustin Pop | ^^^^^^^^ |
618 | 7322bf7b | Iustin Pop | |
619 | 7322bf7b | Iustin Pop | **add-tags** [\--from *file*] {*nodename*} {*tag*...} |
620 | 7322bf7b | Iustin Pop | |
621 | 7322bf7b | Iustin Pop | Add tags to the given node. If any of the tags contains invalid |
622 | 7322bf7b | Iustin Pop | characters, the entire operation will abort. |
623 | 7322bf7b | Iustin Pop | |
624 | 7322bf7b | Iustin Pop | If the ``--from`` option is given, the list of tags will be |
625 | 7322bf7b | Iustin Pop | extended with the contents of that file (each line becomes a tag). |
626 | 7322bf7b | Iustin Pop | In this case, there is not need to pass tags on the command line |
627 | 7322bf7b | Iustin Pop | (if you do, both sources will be used). A file name of - will be |
628 | 7322bf7b | Iustin Pop | interpreted as stdin. |
629 | 7322bf7b | Iustin Pop | |
630 | 7322bf7b | Iustin Pop | LIST-TAGS |
631 | 7322bf7b | Iustin Pop | ^^^^^^^^^ |
632 | 7322bf7b | Iustin Pop | |
633 | 7322bf7b | Iustin Pop | **list-tags** {*nodename*} |
634 | 7322bf7b | Iustin Pop | |
635 | 7322bf7b | Iustin Pop | List the tags of the given node. |
636 | 7322bf7b | Iustin Pop | |
637 | 7322bf7b | Iustin Pop | REMOVE-TAGS |
638 | 7322bf7b | Iustin Pop | ^^^^^^^^^^^ |
639 | 7322bf7b | Iustin Pop | |
640 | 7322bf7b | Iustin Pop | **remove-tags** [\--from *file*] {*nodename*} {*tag*...} |
641 | 7322bf7b | Iustin Pop | |
642 | 7322bf7b | Iustin Pop | Remove tags from the given node. If any of the tags are not |
643 | 7322bf7b | Iustin Pop | existing on the node, the entire operation will abort. |
644 | 7322bf7b | Iustin Pop | |
645 | 7322bf7b | Iustin Pop | If the ``--from`` option is given, the list of tags to be removed will |
646 | 7322bf7b | Iustin Pop | be extended with the contents of that file (each line becomes a tag). |
647 | 7322bf7b | Iustin Pop | In this case, there is not need to pass tags on the command line (if |
648 | 7322bf7b | Iustin Pop | you do, tags from both sources will be removed). A file name of - will |
649 | 7322bf7b | Iustin Pop | be interpreted as stdin. |
650 | 7322bf7b | Iustin Pop | |
651 | 9ff4f2c0 | Michael Hanselmann | .. vim: set textwidth=72 : |
652 | 9ff4f2c0 | Michael Hanselmann | .. Local Variables: |
653 | 9ff4f2c0 | Michael Hanselmann | .. mode: rst |
654 | 9ff4f2c0 | Michael Hanselmann | .. fill-column: 72 |
655 | 9ff4f2c0 | Michael Hanselmann | .. End: |