This file is indexed.

/usr/share/doc/ganeti/html/ovfconverter.html is in ganeti-doc 2.16.0~rc2-1build1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" lang="en">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>OVF converter &#8212; Ganeti 2.16.0~rc2 documentation</title>
    <link rel="stylesheet" href="_static/style.css" type="text/css" />
    <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
    <script type="text/javascript">
      var DOCUMENTATION_OPTIONS = {
        URL_ROOT:    './',
        VERSION:     '2.16.0~rc2',
        COLLAPSE_INDEX: false,
        FILE_SUFFIX: '.html',
        HAS_SOURCE:  true,
        SOURCELINK_SUFFIX: '.txt'
      };
    </script>
    <script type="text/javascript" src="_static/jquery.js"></script>
    <script type="text/javascript" src="_static/underscore.js"></script>
    <script type="text/javascript" src="_static/doctools.js"></script>
    <link rel="search" title="Search" href="search.html" />
    <link rel="next" title="Ganeti remote API" href="rapi.html" />
    <link rel="prev" title="News" href="news.html" /> 
  </head>
  <body>
    <div class="related" role="navigation" aria-label="related navigation">
      <h3>Navigation</h3>
      <ul>
        <li class="right" style="margin-right: 10px">
          <a href="rapi.html" title="Ganeti remote API"
             accesskey="N">next</a></li>
        <li class="right" >
          <a href="news.html" title="News"
             accesskey="P">previous</a> |</li>
        <li class="nav-item nav-item-0"><a href="index.html">Ganeti 2.16.0~rc2 documentation</a> &#187;</li> 
      </ul>
    </div>  

    <div class="document">
      <div class="documentwrapper">
        <div class="bodywrapper">
          <div class="body" role="main">
            
  <div class="section" id="ovf-converter">
<h1>OVF converter<a class="headerlink" href="#ovf-converter" title="Permalink to this headline"></a></h1>
<p>Using <code class="docutils literal"><span class="pre">ovfconverter</span></code> from the <code class="docutils literal"><span class="pre">tools</span></code> directory, one can easily
convert previously exported Ganeti instance into OVF package, supported
by VMWare, VirtualBox and some other virtualization software. It is
also possible to use instance exported from such a tool and convert it
to Ganeti config file, used by <code class="docutils literal"><span class="pre">gnt-backup</span> <span class="pre">import</span></code> command.</p>
<p>For the internal design of the converter and more detailed description,
including listing of available command line options, please refer to
<a class="reference internal" href="design-ovf-support.html"><span class="doc">Ganeti Instance Import/Export using Open Virtualization Format</span></a></p>
<p>As the amount of Ganeti-specific details, that need to be provided in
order to import an external instance, is rather large, we will present
here some examples of importing instances from different sources.
It is also worth noting that there are some limitations regarding
support for different hardware.</p>
<div class="section" id="limitations-on-import">
<h2>Limitations on import<a class="headerlink" href="#limitations-on-import" title="Permalink to this headline"></a></h2>
<div class="section" id="network">
<h3>Network<a class="headerlink" href="#network" title="Permalink to this headline"></a></h3>
<p>Available modes for the network include <code class="docutils literal"><span class="pre">bridged</span></code> and <code class="docutils literal"><span class="pre">routed</span></code>.
There is no <code class="docutils literal"><span class="pre">NIC</span></code> mode, which is typically used e.g. by VirtualBox.
For most usecases this should not be of any effect, since if
<code class="docutils literal"><span class="pre">NetworkSection</span></code> contains any networks which are not discovered as
<code class="docutils literal"><span class="pre">bridged</span></code> or <code class="docutils literal"><span class="pre">routed</span></code>, the network mode is assigned automatically,
using Ganeti’s cluster defaults.</p>
</div>
<div class="section" id="backend">
<h3>Backend<a class="headerlink" href="#backend" title="Permalink to this headline"></a></h3>
<p>The only values that are taken into account regarding Virtual Hardware
(described in <code class="docutils literal"><span class="pre">VirtualHardwareSection</span></code> of the <code class="docutils literal"><span class="pre">.ovf</span></code> file) are:</p>
<ul class="simple">
<li>number of virtual CPUs</li>
<li>RAM memory</li>
<li>hard disks</li>
<li>networks</li>
</ul>
<p>Neither USB nor CD-ROM drive are used in Ganeti. We decided to simply
ignore unused elements of this section, so their presence won’t raise
any warnings.</p>
</div>
<div class="section" id="operating-system">
<h3>Operating System<a class="headerlink" href="#operating-system" title="Permalink to this headline"></a></h3>
<p>List of operating systems available on a cluster is viewable using
<code class="docutils literal"><span class="pre">gnt-os</span> <span class="pre">list</span></code> command. When importing from external source, providing
OS type in a command line (<code class="docutils literal"><span class="pre">--os-type=...</span></code>) is <strong>required</strong>. This is
because even if the type is given in OVF description, it is not detailed
enough for Ganeti to know which os-specific scripts to use.
Please note, that instance containing disks may only be imported using
OS script that supports raw disk images.</p>
</div>
<div class="section" id="references">
<h3>References<a class="headerlink" href="#references" title="Permalink to this headline"></a></h3>
<p>Files listed in <code class="docutils literal"><span class="pre">ovf:References</span></code> section cannot be hyperlinks.</p>
</div>
</div>
<div class="section" id="limitations-on-export">
<h2>Limitations on export<a class="headerlink" href="#limitations-on-export" title="Permalink to this headline"></a></h2>
<div class="section" id="disk-content">
<h3>Disk content<a class="headerlink" href="#disk-content" title="Permalink to this headline"></a></h3>
<p>Most Ganeti instances do not contain grub. This results in some
problems when importing to virtualization software that does expect it.
Examples of such software include VirtualBox and VMWare.</p>
<p>To avoid trouble, please install grub inside the instance before
exporting it.</p>
</div>
<div class="section" id="import-to-virtualbox">
<h3>Import to VirtualBox<a class="headerlink" href="#import-to-virtualbox" title="Permalink to this headline"></a></h3>
<p><code class="docutils literal"><span class="pre">format</span></code> option should be set to <code class="docutils literal"><span class="pre">vmdk</span></code> in order for instance to be
importable by VirtualBox.</p>
<p>Tests using existing versions of VirtualBox (3.16) suggest, that
VirtualBox does not support disk compression or OVA packaging. In future
versions this might change.</p>
</div>
<div class="section" id="import-to-vmware">
<h3>Import to VMWare<a class="headerlink" href="#import-to-vmware" title="Permalink to this headline"></a></h3>
<p>Importing Ganeti instance to VMWare was tested using <code class="docutils literal"><span class="pre">ovftool</span></code>.</p>
<p><code class="docutils literal"><span class="pre">format</span></code> option should be set to <code class="docutils literal"><span class="pre">vmdk</span></code> in order for instance to be
importable by VMWare.</p>
<p>Presence of Ganeti section does seem to cause some problems and
therefore it is recommended to use <code class="docutils literal"><span class="pre">--external</span></code> option on export.</p>
<p>Import of compressed disks generated by ovfconverter was impossible in
current version of <code class="docutils literal"><span class="pre">ovftool</span></code> (2.1.0). This seems to be related to old
<code class="docutils literal"><span class="pre">vmdk</span></code> version. Since the conversion to <code class="docutils literal"><span class="pre">vmdk</span></code> format is done using
<code class="docutils literal"><span class="pre">qemu-img</span></code>, it is possible and in fact expected, that future versions
of the latter tool will resolve this problem.</p>
</div>
</div>
<div class="section" id="import-examples">
<h2>Import examples<a class="headerlink" href="#import-examples" title="Permalink to this headline"></a></h2>
<div class="section" id="ganeti-s-ovf">
<h3>Ganeti’s OVF<a class="headerlink" href="#ganeti-s-ovf" title="Permalink to this headline"></a></h3>
<p>If you are importing instance created using <code class="docutils literal"><span class="pre">ovfconverter</span> <span class="pre">export</span></code> –
you most probably will not have to provide any additional information.
In that case, the following is all you need (unless you wish to change
some configuration options):</p>
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">ovfconverter</span> <span class="kn">import</span> <span class="nn">ganeti.ovf</span>
<span class="p">[</span><span class="o">...</span><span class="p">]</span>
<span class="n">gnt</span><span class="o">-</span><span class="n">instance</span> <span class="kn">import</span> <span class="o">-</span><span class="n">n</span> <span class="o">&lt;</span><span class="n">node</span><span class="o">&gt;</span> <span class="o">&lt;</span><span class="n">instance</span> <span class="n">name</span><span class="o">&gt;</span>
</pre></div>
</div>
</div>
<div class="section" id="virtualbox-vmware-and-other-external-sources">
<h3>Virtualbox, VMWare and other external sources<a class="headerlink" href="#virtualbox-vmware-and-other-external-sources" title="Permalink to this headline"></a></h3>
<p>In case of importing from external source, you will most likely have to
provide the following details:</p>
<ul class="simple">
<li><code class="docutils literal"><span class="pre">os-type</span></code> can be any operating system listed on <code class="docutils literal"><span class="pre">gnt-os</span> <span class="pre">list</span></code></li>
<li><code class="docutils literal"><span class="pre">name</span></code> that has to be resolvable, as it will be used as instance
name (even if your external instance has a name, it most probably is
not resolvable to an IP address)</li>
</ul>
<p>These are not the only options, but the recommended ones. For the
complete list of available options please refer to
<cite>Command Line description &lt;design-ovf-support.rst&gt;</cite></p>
<p>Minimalistic but complete example of importing Virtualbox’s OVF
instance may look like:</p>
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">ovfconverter</span> <span class="n">virtualbox</span><span class="o">.</span><span class="n">ovf</span> <span class="o">--</span><span class="n">os</span><span class="o">-</span><span class="nb">type</span><span class="o">=</span><span class="n">lenny</span><span class="o">-</span><span class="n">image</span> \
  <span class="o">--</span><span class="n">name</span><span class="o">=</span><span class="n">xen</span><span class="o">.</span><span class="n">test</span><span class="o">.</span><span class="n">i1</span> <span class="o">--</span><span class="n">disk</span><span class="o">-</span><span class="n">template</span><span class="o">=</span><span class="n">diskless</span>
<span class="p">[</span><span class="o">...</span><span class="p">]</span>
<span class="n">gnt</span><span class="o">-</span><span class="n">instance</span> <span class="kn">import</span> <span class="o">-</span><span class="n">n</span> <span class="n">node1</span><span class="o">.</span><span class="n">xen</span> <span class="n">xen</span><span class="o">.</span><span class="n">test</span><span class="o">.</span><span class="n">i1</span>
</pre></div>
</div>
</div>
</div>
<div class="section" id="export-example">
<h2>Export example<a class="headerlink" href="#export-example" title="Permalink to this headline"></a></h2>
<p>Exporting instance into <code class="docutils literal"><span class="pre">.ovf</span></code> format is pretty streightforward and
requires little - if any - explanation. The only compulsory detail is
the required disk format, provided using the <code class="docutils literal"><span class="pre">--format</span></code> option.</p>
<div class="section" id="export-to-another-ganeti-instance">
<h3>Export to another Ganeti instance<a class="headerlink" href="#export-to-another-ganeti-instance" title="Permalink to this headline"></a></h3>
<p>If for some reason it is convenient for you to use <code class="docutils literal"><span class="pre">ovfconverter</span></code> to
move instance between clusters (e.g. because of the disk compression),
the complete example of export may look like this:</p>
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">gnt</span><span class="o">-</span><span class="n">backup</span> <span class="n">export</span> <span class="o">-</span><span class="n">n</span> <span class="n">node1</span><span class="o">.</span><span class="n">xen</span> <span class="n">xen</span><span class="o">.</span><span class="n">test</span><span class="o">.</span><span class="n">i1</span>
<span class="p">[</span><span class="o">...</span><span class="p">]</span>
<span class="n">ovfconverter</span> <span class="n">export</span> <span class="o">--</span><span class="nb">format</span><span class="o">=</span><span class="n">vmdk</span> <span class="o">--</span><span class="n">ova</span> \
  <span class="o">/</span><span class="n">srv</span><span class="o">/</span><span class="n">ganeti</span><span class="o">/</span><span class="n">export</span><span class="o">/</span><span class="n">xen</span><span class="o">.</span><span class="n">i1</span><span class="o">.</span><span class="n">node1</span><span class="o">.</span><span class="n">xen</span><span class="o">/</span><span class="n">config</span><span class="o">.</span><span class="n">ini</span>
<span class="p">[</span><span class="o">...</span><span class="p">]</span>
</pre></div>
</div>
<p>The result is then in
<code class="docutils literal"><span class="pre">/srv/ganeti/export/xen.i1.node1.xen/xen.test.i1.ova</span></code></p>
</div>
<div class="section" id="export-to-virtualbox-vmware-other-external-tool">
<h3>Export to Virtualbox/VMWare/other external tool<a class="headerlink" href="#export-to-virtualbox-vmware-other-external-tool" title="Permalink to this headline"></a></h3>
<p>Typically, when exporting to external tool we do not want
Ganeti-specific configuration to be saved. In that case, simply use the
<code class="docutils literal"><span class="pre">--external</span></code> option:</p>
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">gnt</span><span class="o">-</span><span class="n">backup</span> <span class="n">export</span> <span class="o">-</span><span class="n">n</span> <span class="n">node1</span><span class="o">.</span><span class="n">xen</span> <span class="n">xen</span><span class="o">.</span><span class="n">test</span><span class="o">.</span><span class="n">i1</span>
<span class="p">[</span><span class="o">...</span><span class="p">]</span>
<span class="n">ovfconverter</span> <span class="n">export</span> <span class="o">--</span><span class="n">external</span> <span class="o">--</span><span class="n">output</span><span class="o">-</span><span class="nb">dir</span> <span class="o">~/</span><span class="n">ganeti</span><span class="o">-</span><span class="n">instance</span><span class="o">/</span> \
  <span class="o">/</span><span class="n">srv</span><span class="o">/</span><span class="n">ganeti</span><span class="o">/</span><span class="n">export</span><span class="o">/</span><span class="n">xen</span><span class="o">.</span><span class="n">i1</span><span class="o">.</span><span class="n">node1</span><span class="o">.</span><span class="n">xen</span><span class="o">/</span><span class="n">config</span><span class="o">.</span><span class="n">ini</span>
</pre></div>
</div>
</div>
</div>
<div class="section" id="known-issues">
<h2>Known issues<a class="headerlink" href="#known-issues" title="Permalink to this headline"></a></h2>
<div class="section" id="conversion-errors">
<h3>Conversion errors<a class="headerlink" href="#conversion-errors" title="Permalink to this headline"></a></h3>
<p>If you are encountering trouble when converting the disk, please ensure
that you have newest <code class="docutils literal"><span class="pre">qemu-img</span></code> version.</p>
</div>
<div class="section" id="ova-and-compression">
<h3>OVA and compression<a class="headerlink" href="#ova-and-compression" title="Permalink to this headline"></a></h3>
<p>The compressed disks and OVA packaging do not work correctly in either
VirtualBox (old version) or VMWare.</p>
<p>VirtualBox (3.16 OSE) does not seem to support those two, so there is
very little we can do about this.</p>
<p>As for VMWare, the reason behind it not accepting compressed or packed
instances created by ovfconverter seems to be related to the old vmdk
version.</p>
</div>
<div class="section" id="problems-on-newest-virtualbox">
<h3>Problems on newest VirtualBox<a class="headerlink" href="#problems-on-newest-virtualbox" title="Permalink to this headline"></a></h3>
<p>In Oracle VM Virtualbox 4.0+ there seems to be a problem when importing
any OVF instance created by ovfconverter. Reasons are again unknown,
this will be investigated.</p>
</div>
<div class="section" id="disk-space">
<h3>Disk space<a class="headerlink" href="#disk-space" title="Permalink to this headline"></a></h3>
<p>The disk space requirements for both import and export are at the moment
very large - we require free space up to about 3-4 times the size of
disks. This will most likely be changed in future versions.</p>
</div>
</div>
</div>


          </div>
        </div>
      </div>
      <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
        <div class="sphinxsidebarwrapper">
  <h3><a href="index.html">Table Of Contents</a></h3>
  <ul>
<li><a class="reference internal" href="#">OVF converter</a><ul>
<li><a class="reference internal" href="#limitations-on-import">Limitations on import</a><ul>
<li><a class="reference internal" href="#network">Network</a></li>
<li><a class="reference internal" href="#backend">Backend</a></li>
<li><a class="reference internal" href="#operating-system">Operating System</a></li>
<li><a class="reference internal" href="#references">References</a></li>
</ul>
</li>
<li><a class="reference internal" href="#limitations-on-export">Limitations on export</a><ul>
<li><a class="reference internal" href="#disk-content">Disk content</a></li>
<li><a class="reference internal" href="#import-to-virtualbox">Import to VirtualBox</a></li>
<li><a class="reference internal" href="#import-to-vmware">Import to VMWare</a></li>
</ul>
</li>
<li><a class="reference internal" href="#import-examples">Import examples</a><ul>
<li><a class="reference internal" href="#ganeti-s-ovf">Ganeti’s OVF</a></li>
<li><a class="reference internal" href="#virtualbox-vmware-and-other-external-sources">Virtualbox, VMWare and other external sources</a></li>
</ul>
</li>
<li><a class="reference internal" href="#export-example">Export example</a><ul>
<li><a class="reference internal" href="#export-to-another-ganeti-instance">Export to another Ganeti instance</a></li>
<li><a class="reference internal" href="#export-to-virtualbox-vmware-other-external-tool">Export to Virtualbox/VMWare/other external tool</a></li>
</ul>
</li>
<li><a class="reference internal" href="#known-issues">Known issues</a><ul>
<li><a class="reference internal" href="#conversion-errors">Conversion errors</a></li>
<li><a class="reference internal" href="#ova-and-compression">OVA and compression</a></li>
<li><a class="reference internal" href="#problems-on-newest-virtualbox">Problems on newest VirtualBox</a></li>
<li><a class="reference internal" href="#disk-space">Disk space</a></li>
</ul>
</li>
</ul>
</li>
</ul>

  <h4>Previous topic</h4>
  <p class="topless"><a href="news.html"
                        title="previous chapter">News</a></p>
  <h4>Next topic</h4>
  <p class="topless"><a href="rapi.html"
                        title="next chapter">Ganeti remote API</a></p>
  <div role="note" aria-label="source link">
    <h3>This Page</h3>
    <ul class="this-page-menu">
      <li><a href="_sources/ovfconverter.rst.txt"
            rel="nofollow">Show Source</a></li>
    </ul>
   </div>
<div id="searchbox" style="display: none" role="search">
  <h3>Quick search</h3>
    <form class="search" action="search.html" method="get">
      <div><input type="text" name="q" /></div>
      <div><input type="submit" value="Go" /></div>
      <input type="hidden" name="check_keywords" value="yes" />
      <input type="hidden" name="area" value="default" />
    </form>
</div>
<script type="text/javascript">$('#searchbox').show(0);</script>
        </div>
      </div>
      <div class="clearer"></div>
    </div>
    <div class="related" role="navigation" aria-label="related navigation">
      <h3>Navigation</h3>
      <ul>
        <li class="right" style="margin-right: 10px">
          <a href="rapi.html" title="Ganeti remote API"
             >next</a></li>
        <li class="right" >
          <a href="news.html" title="News"
             >previous</a> |</li>
        <li class="nav-item nav-item-0"><a href="index.html">Ganeti 2.16.0~rc2 documentation</a> &#187;</li> 
      </ul>
    </div>
    <div class="footer" role="contentinfo">
        &#169; Copyright 2018, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015 Google Inc..
      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.6.7.
    </div>
  </body>
</html>