blob: 31ac2d4d81a30548c52e443cf5b2071ba600a748 [file] [log] [blame]
martin f. krafft3cd2a332014-10-28 15:58:23 +01001<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
4
5<html xmlns="http://www.w3.org/1999/xhtml">
6 <head>
7 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
8
9 <title>reclass manpage &mdash; reclass 1.4.1 documentation</title>
10
11 <link rel="stylesheet" href="_static/default.css" type="text/css" />
12 <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
13
14 <script type="text/javascript">
15 var DOCUMENTATION_OPTIONS = {
16 URL_ROOT: './',
17 VERSION: '1.4.1',
18 COLLAPSE_INDEX: false,
19 FILE_SUFFIX: '.html',
20 HAS_SOURCE: true
21 };
22 </script>
23 <script type="text/javascript" src="_static/jquery.js"></script>
24 <script type="text/javascript" src="_static/underscore.js"></script>
25 <script type="text/javascript" src="_static/doctools.js"></script>
26 <link rel="top" title="reclass 1.4.1 documentation" href="index.html" />
27 <link rel="next" title="reclass configuration file" href="configfile.html" />
28 <link rel="prev" title="External references" href="refs.html" />
29 </head>
30 <body>
31 <div class="related">
32 <h3>Navigation</h3>
33 <ul>
34 <li class="right" style="margin-right: 10px">
35 <a href="genindex.html" title="General Index"
36 accesskey="I">index</a></li>
37 <li class="right" >
38 <a href="configfile.html" title="reclass configuration file"
39 accesskey="N">next</a> |</li>
40 <li class="right" >
41 <a href="refs.html" title="External references"
42 accesskey="P">previous</a> |</li>
43 <li><a href="index.html">reclass</a> &raquo;</li>
44 </ul>
45 </div>
46
47 <div class="document">
48 <div class="documentwrapper">
49 <div class="bodywrapper">
50 <div class="body">
51
52 <div class="section" id="reclass-manpage">
53<h1>reclass manpage<a class="headerlink" href="#reclass-manpage" title="Permalink to this headline"></a></h1>
54<div class="section" id="synopsis">
55<h2>Synopsis<a class="headerlink" href="#synopsis" title="Permalink to this headline"></a></h2>
56<div class="line-block">
57<div class="line"><strong>reclass</strong> &#8211;help</div>
58<div class="line"><strong>reclass</strong> <em>[options]</em> &#8211;inventory</div>
59<div class="line"><strong>reclass</strong> <em>[options]</em> &#8211;nodeinfo=NODENAME</div>
60</div>
61</div>
62<div class="section" id="description">
63<h2>Description<a class="headerlink" href="#description" title="Permalink to this headline"></a></h2>
64<p><strong>reclass</strong> is an &#8220;external node classifier&#8221; (ENC) as can be used with
65automation tools, such as <a class="reference external" href="http://puppetlabs.com/puppet/puppet-open-source">Puppet</a>, <a class="reference external" href="http://saltstack.com/community">Salt</a>, and <a class="reference external" href="http://www.ansibleworks.com">Ansible</a>. It is also
66a stand-alone tool for merging data sources recursively.</p>
67<p>The purpose of an ENC is to allow a system administrator to maintain an
68inventory of nodes to be managed, completely separately from the configuration
69of the automation tool. Usually, the external node classifier completely
70replaces the tool-specific inventory (such as <tt class="docutils literal"><span class="pre">site.pp</span></tt> for Puppet,
71<tt class="docutils literal"><span class="pre">ext_pillar</span></tt>/<tt class="docutils literal"><span class="pre">master_tops</span></tt> for Salt, or <tt class="docutils literal"><span class="pre">/etc/ansible/hosts</span></tt>).</p>
72<p>With respect to the configuration management tool, the ENC then fulfills two
73jobs:</p>
74<ul class="simple">
75<li>it provides information about groups of nodes and group memberships</li>
76<li>it gives access to node-specific information, such as variables</li>
77</ul>
78<p><strong>reclass</strong> allows you to define your nodes through class inheritance, while
79always able to override details further up the tree (i.e. in more specific
80nodes). Think of classes as feature sets, as commonalities between nodes, or
81as tags. Add to that the ability to nest classes (multiple inheritance is
82allowed, well-defined, and encouraged), and you can assemble your
83infrastructure from smaller bits, eliminating duplication and exposing all
84important parameters to a single location, logically organised. And if that
85isn&#8217;t enough, <strong>reclass</strong> lets you reference other parameters in the very
86hierarchy you are currently assembling.</p>
87<p><strong>reclass</strong> will be used indirectly through adapters most of the time. However,
88there exists a command-line interface that allows querying the database. This
89manual page describes this interface.</p>
90</div>
91<div class="section" id="options">
92<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline"></a></h2>
93<p>Please see the output of <tt class="docutils literal"><span class="pre">reclass</span> <span class="pre">--help</span></tt> for the default values of these
94options:</p>
95<div class="section" id="database-options">
96<h3>Database options<a class="headerlink" href="#database-options" title="Permalink to this headline"></a></h3>
97<table class="docutils option-list" frame="void" rules="none">
98<col class="option" />
99<col class="description" />
100<tbody valign="top">
101<tr><td class="option-group" colspan="2">
102<kbd><span class="option">-s</span>, <span class="option">--storage-type</span></kbd></td>
103</tr>
104<tr><td>&nbsp;</td><td>The type of storage backend to use</td></tr>
105<tr><td class="option-group" colspan="2">
106<kbd><span class="option">-b</span>, <span class="option">--inventory-base-uri</span></kbd></td>
107</tr>
108<tr><td>&nbsp;</td><td>The base URI to prepend to nodes and classes</td></tr>
109<tr><td class="option-group" colspan="2">
110<kbd><span class="option">-u</span>, <span class="option">--nodes-uri</span></kbd></td>
111</tr>
112<tr><td>&nbsp;</td><td>The URI to the nodes storage</td></tr>
113<tr><td class="option-group" colspan="2">
114<kbd><span class="option">-c</span>, <span class="option">--classes-uri</span></kbd></td>
115</tr>
116<tr><td>&nbsp;</td><td>The URI to the classes storage</td></tr>
117</tbody>
118</table>
119</div>
120<div class="section" id="output-options">
121<h3>Output options<a class="headerlink" href="#output-options" title="Permalink to this headline"></a></h3>
122<table class="docutils option-list" frame="void" rules="none">
123<col class="option" />
124<col class="description" />
125<tbody valign="top">
126<tr><td class="option-group">
127<kbd><span class="option">-o</span>, <span class="option">--output</span></kbd></td>
128<td>The output format to use (yaml or json)</td></tr>
129<tr><td class="option-group" colspan="2">
130<kbd><span class="option">-y</span>, <span class="option">--pretty-print</span></kbd></td>
131</tr>
132<tr><td>&nbsp;</td><td>Try to make the output prettier</td></tr>
133</tbody>
134</table>
135</div>
136<div class="section" id="modes">
137<h3>Modes<a class="headerlink" href="#modes" title="Permalink to this headline"></a></h3>
138<table class="docutils option-list" frame="void" rules="none">
139<col class="option" />
140<col class="description" />
141<tbody valign="top">
142<tr><td class="option-group" colspan="2">
143<kbd><span class="option">-i</span>, <span class="option">--inventory</span></kbd></td>
144</tr>
145<tr><td>&nbsp;</td><td>Output the entire inventory</td></tr>
146<tr><td class="option-group">
147<kbd><span class="option">-n</span>, <span class="option">--nodeinfo</span></kbd></td>
148<td>Output information for a specific node</td></tr>
149</tbody>
150</table>
151</div>
152<div class="section" id="information">
153<h3>Information<a class="headerlink" href="#information" title="Permalink to this headline"></a></h3>
154<table class="docutils option-list" frame="void" rules="none">
155<col class="option" />
156<col class="description" />
157<tbody valign="top">
158<tr><td class="option-group">
159<kbd><span class="option">-h</span>, <span class="option">--help</span></kbd></td>
160<td>Help output</td></tr>
161<tr><td class="option-group">
162<kbd><span class="option">--version</span></kbd></td>
163<td>Display version number</td></tr>
164</tbody>
165</table>
166</div>
167</div>
168<div class="section" id="see-also">
169<h2>See also<a class="headerlink" href="#see-also" title="Permalink to this headline"></a></h2>
170<p>Please visit <a class="reference external" href="http://reclass.pantsfullofunix.net/">http://reclass.pantsfullofunix.net/</a> for more information about
171<strong>reclass</strong>.</p>
172<p>The documentation is also available from the <tt class="docutils literal"><span class="pre">./doc</span></tt> subtree in the source
173checkout, or from <tt class="docutils literal"><span class="pre">/usr/share/doc/reclass-doc</span></tt>.</p>
174</div>
175</div>
176
177
178 </div>
179 </div>
180 </div>
181 <div class="sphinxsidebar">
182 <div class="sphinxsidebarwrapper">
183 <h3><a href="index.html">Table Of Contents</a></h3>
184 <ul>
185<li><a class="reference internal" href="#">reclass manpage</a><ul>
186<li><a class="reference internal" href="#synopsis">Synopsis</a></li>
187<li><a class="reference internal" href="#description">Description</a></li>
188<li><a class="reference internal" href="#options">Options</a><ul>
189<li><a class="reference internal" href="#database-options">Database options</a></li>
190<li><a class="reference internal" href="#output-options">Output options</a></li>
191<li><a class="reference internal" href="#modes">Modes</a></li>
192<li><a class="reference internal" href="#information">Information</a></li>
193</ul>
194</li>
195<li><a class="reference internal" href="#see-also">See also</a></li>
196</ul>
197</li>
198</ul>
199
200 <h4>Previous topic</h4>
201 <p class="topless"><a href="refs.html"
202 title="previous chapter">External references</a></p>
203 <h4>Next topic</h4>
204 <p class="topless"><a href="configfile.html"
205 title="next chapter">reclass configuration file</a></p>
206<div id="searchbox" style="display: none">
207 <h3>Quick search</h3>
208 <form class="search" action="search.html" method="get">
209 <input type="text" name="q" />
210 <input type="submit" value="Go" />
211 <input type="hidden" name="check_keywords" value="yes" />
212 <input type="hidden" name="area" value="default" />
213 </form>
214 <p class="searchtip" style="font-size: 90%">
215 Enter search terms or a module, class or function name.
216 </p>
217</div>
218<script type="text/javascript">$('#searchbox').show(0);</script>
219 </div>
220 </div>
221 <div class="clearer"></div>
222 </div>
223 <div class="related">
224 <h3>Navigation</h3>
225 <ul>
226 <li class="right" style="margin-right: 10px">
227 <a href="genindex.html" title="General Index"
228 >index</a></li>
229 <li class="right" >
230 <a href="configfile.html" title="reclass configuration file"
231 >next</a> |</li>
232 <li class="right" >
233 <a href="refs.html" title="External references"
234 >previous</a> |</li>
235 <li><a href="index.html">reclass</a> &raquo;</li>
236 </ul>
237 </div>
238 <div class="footer">
239 &copy; Copyright 2013, martin f. krafft.
240 Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.2.3.
241 </div>
242 </body>
243</html>