This file is indexed.

/usr/share/doc/python-os-xenapi-doc/html/readme.html is in python-os-xenapi-doc 0.3.1-0ubuntu1.

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
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
<!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">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>os-xenapi &#8212; os-xenapi 0.3.1 documentation</title>
    <link rel="stylesheet" href="_static/nature.css" type="text/css" />
    <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
    <link rel="stylesheet" href="_static/tweaks.css" type="text/css" />
    <script type="text/javascript">
      var DOCUMENTATION_OPTIONS = {
        URL_ROOT:    './',
        VERSION:     '0.3.1',
        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="index" title="Index" href="genindex.html" />
    <link rel="search" title="Search" href="search.html" />
    <link rel="next" title="Installation" href="installation.html" />
    <link rel="prev" title="Welcome to os-xenapi’s documentation!" href="index.html" /> 
  </head>
  <body>
  <div id="header">
    <h1 id="logo"><a href="http://www.openstack.org/">OpenStack</a></h1>
    <ul id="navigation">
      
      <li><a href="http://www.openstack.org/" title="Go to the Home page" class="link">Home</a></li>
      <li><a href="http://www.openstack.org/projects/" title="Go to the OpenStack Projects page">Projects</a></li>
      <li><a href="http://www.openstack.org/user-stories/" title="Go to the User Stories page" class="link">User Stories</a></li>
      <li><a href="http://www.openstack.org/community/" title="Go to the Community page" class="link">Community</a></li>
      <li><a href="http://www.openstack.org/blog/" title="Go to the OpenStack Blog">Blog</a></li>
      <li><a href="http://wiki.openstack.org/" title="Go to the OpenStack Wiki">Wiki</a></li>
      <li><a href="http://docs.openstack.org/" title="Go to OpenStack Documentation" class="current">Documentation</a></li>
      
    </ul>
  </div>
  

    <div class="document">
      <div class="documentwrapper">
        <div class="bodywrapper">
          <div class="body" role="main">
            
  <div class="section" id="os-xenapi">
<h1>os-xenapi<a class="headerlink" href="#os-xenapi" title="Permalink to this headline"></a></h1>
<p>XenAPI library for OpenStack projects</p>
<p>This library provides the support functions needed to connect to and manage a XenAPI-based
hypervisor, such as Citrix’s XenServer.</p>
<ul class="simple">
<li>Free software: Apache license</li>
<li>Source: <a class="reference external" href="http://git.openstack.org/cgit/openstack/os-xenapi">http://git.openstack.org/cgit/openstack/os-xenapi</a></li>
<li>Bugs: <a class="reference external" href="http://bugs.launchpad.net/os-xenapi">http://bugs.launchpad.net/os-xenapi</a></li>
</ul>
<div class="section" id="features">
<h2>Features<a class="headerlink" href="#features" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li>TODO</li>
</ul>
<div class="section" id="install-devstack-on-xenserver">
<h3>Install Devstack on XenServer<a class="headerlink" href="#install-devstack-on-xenserver" title="Permalink to this headline"></a></h3>
<div class="section" id="getting-started-with-xenserver-and-devstack">
<h4>Getting Started With XenServer and Devstack<a class="headerlink" href="#getting-started-with-xenserver-and-devstack" title="Permalink to this headline"></a></h4>
<p>The purpose of the code in the install directory is to help developers bootstrap a
XenServer(7.0 and above) + OpenStack development environment.
This guide gives some pointers on how to get started.</p>
<p>Xenserver is a Type 1 hypervisor, so it is best installed on bare metal.  The
OpenStack services are configured to run within a virtual machine on the XenServer host.
The VM uses the XAPI toolstack to communicate with the host over a network connection
(see <cite>MGT_BRIDGE_OR_NET_NAME</cite>).</p>
<p>The provided local.conf helps to build a basic devstack environment.</p>
<div class="section" id="introduction">
<h5>Introduction<a class="headerlink" href="#introduction" title="Permalink to this headline"></a></h5>
<div class="section" id="requirements">
<h6>Requirements<a class="headerlink" href="#requirements" title="Permalink to this headline"></a></h6>
<blockquote>
<div><ul class="simple">
<li>A management network with access to the internet</li>
<li>A DHCP server to provide addresses on this management network</li>
<li>XenServer 7.0 or above installed with a local EXT SR (labelled “Optimised for XenDesktop” in the
installer) or a remote NFS SR</li>
</ul>
</div></blockquote>
<p>This network will be used as the OpenStack management network. The VM (Tenant) Network and the
Public Network will not be connected to any physical interfaces, only new virtual networks which
will be created by the <cite>install_on_xen_host.sh</cite> script.</p>
</div>
<div class="section" id="steps-to-follow">
<h6>Steps to follow<a class="headerlink" href="#steps-to-follow" title="Permalink to this headline"></a></h6>
<dl class="docutils">
<dt>You should install the XenServer host first, then launch the devstack installation in one of two ways,</dt>
<dd><ul class="first simple">
<li>From a remote linux client (Recommended)</li>
</ul>
<blockquote>
<div><ul class="simple">
<li>Download install-devstack-xen.sh to the linux client</li>
<li>Configure the local.conf contents in install-devstack-xen.sh.</li>
<li>Generate passwordless ssh key using “ssh-keygen -t rsa -N “” -f devstack_key.priv”</li>
<li>Launch script using “install-devstack-xen.sh XENSERVER mypassword devstack_key.priv” with some
optional arguments</li>
</ul>
</div></blockquote>
<ul class="last simple">
<li>On the XenServer host
- Download os-xenapi to XenServer
- Create and customise a <cite>local.conf</cite>
- Start <cite>install_on_xen_host.sh</cite> script</li>
</ul>
</dd>
</dl>
</div>
<div class="section" id="brief-explanation">
<h6>Brief explanation<a class="headerlink" href="#brief-explanation" title="Permalink to this headline"></a></h6>
<dl class="docutils">
<dt>The <cite>install-devstack-xen.sh</cite> script will:</dt>
<dd><ul class="first last simple">
<li>Verify some pre-requisites to installation</li>
<li>Download os-xenapi folder to XenServer host</li>
<li>Generate a standard local.conf file</li>
<li>Call install_on_xen_host.sh to do devstack installation</li>
<li>Run tempest test if required</li>
</ul>
</dd>
<dt>The ‘install_on_xen_host.sh’ script will:</dt>
<dd><ul class="first simple">
<li>Verify the host configuration</li>
<li>Create template for devstack DomU VM if needed. Including:</li>
</ul>
<blockquote>
<div><ul class="simple">
<li>Creating the named networks, if they don’t exist</li>
<li>Preseed-Netinstall an Ubuntu Virtual Machine , with 1 network interface:</li>
</ul>
<blockquote>
<div><ul class="simple">
<li><cite>eth0</cite> - Connected to <cite>UBUNTU_INST_BRIDGE_OR_NET_NAME</cite> (which defaults to
<cite>MGT_BRIDGE_OR_NET_NAME</cite>)</li>
</ul>
</div></blockquote>
<ul class="simple">
<li>After the Ubuntu install process has finished, the network configuration is modified to:</li>
</ul>
<blockquote>
<div><ul class="simple">
<li><cite>eth0</cite> - Management interface, connected to <cite>MGT_BRIDGE_OR_NET_NAME</cite>.  Note that XAPI must be
accessible through this network.</li>
<li><cite>eth1</cite> - VM interface, connected to <cite>VM_BRIDGE_OR_NET_NAME</cite></li>
<li><cite>eth2</cite> - Public interface, connected to <cite>PUB_BRIDGE_OR_NET_NAME</cite></li>
</ul>
</div></blockquote>
</div></blockquote>
<ul class="simple">
<li>Create a template of the VM and destroy the current VM</li>
<li>Create DomU VM according to the template and ssh to the VM</li>
<li>Create a linux service to enable devstack service after VM reboot. The service will:</li>
</ul>
<blockquote>
<div><ul class="simple">
<li>Download devstack source code if needed</li>
<li>Call unstack.sh and stack.sh to install devstack</li>
</ul>
</div></blockquote>
<ul class="last simple">
<li>Reboot DomU VM</li>
</ul>
</dd>
</dl>
</div>
</div>
<div class="section" id="step-1-install-xenserver">
<h5>Step 1: Install Xenserver<a class="headerlink" href="#step-1-install-xenserver" title="Permalink to this headline"></a></h5>
<p>Install XenServer on a clean box. You can download the latest XenServer for
free from: <a class="reference external" href="http://www.xenserver.org/">http://www.xenserver.org/</a></p>
<p>The XenServer IP configuration depends on your local network setup. If you are
using dhcp, make a reservation for XenServer, so its IP address won’t change
over time. Make a note of the XenServer’s IP address, as it has to be specified
in <cite>local.conf</cite>. The other option is to manually specify the IP setup for the
XenServer box. Please make sure, that a gateway and a nameserver is configured,
as <cite>install-devstack-xen.sh</cite> will connect to github.com to get source-code snapshots.</p>
<p>OpenStack currently only supports file-based (thin provisioned) SR types EXT and NFS.  As such the
default SR should either be a local EXT SR or a remote NFS SR.  To create a local EXT SR use the
“Optimised for XenDesktop” option in the XenServer host installer.</p>
</div>
<div class="section" id="step-2-download-install-devstack-xen-sh">
<h5>Step 2: Download install-devstack-xen.sh<a class="headerlink" href="#step-2-download-install-devstack-xen-sh" title="Permalink to this headline"></a></h5>
<p>On your remote linux client, get the install script from <a class="reference external" href="https://raw.githubusercontent.com/openstack/os-xenapi/master/tools/install-devstack-xen.sh">https://raw.githubusercontent.com/openstack/os-xenapi/master/tools/install-devstack-xen.sh</a></p>
</div>
<div class="section" id="step-3-local-conf-overview">
<h5>Step 3: local.conf overview<a class="headerlink" href="#step-3-local-conf-overview" title="Permalink to this headline"></a></h5>
<p>Devstack uses a local.conf for user-specific configuration.  install-devstack-xen provides a
configuration file which is suitable for many simple use cases.  In more advanced use cases, you may
need to configure the local.conf file after installation - or use the second approach outlined above
to bypass the install-devstack-xen script.</p>
<p>local.conf sample:</p>
<div class="highlight-default"><div class="highlight"><pre><span></span>[[local|localrc]]

enable_plugin os-xenapi https://github.com/openstack/os-xenapi.git

# Passwords
MYSQL_PASSWORD=citrix
SERVICE_TOKEN=citrix
ADMIN_PASSWORD=citrix
SERVICE_PASSWORD=citrix
RABBIT_PASSWORD=citrix
GUEST_PASSWORD=citrix
XENAPI_PASSWORD=&quot;$XENSERVER_PASS&quot;
SWIFT_HASH=&quot;66a3d6b56c1f479c8b4e70ab5c2000f5&quot;

# Do not use secure delete
CINDER_SECURE_DELETE=False

# Compute settings
VIRT_DRIVER=xenserver

# Tempest settings
TERMINATE_TIMEOUT=90
BUILD_TIMEOUT=600

# DevStack settings

LOGDIR=${LOGDIR}
LOGFILE=${LOGDIR}/stack.log

# Turn on verbosity (password input does not work otherwise)
VERBOSE=True

# XenAPI specific
XENAPI_CONNECTION_URL=&quot;http://$XENSERVER_IP&quot;
VNCSERVER_PROXYCLIENT_ADDRESS=&quot;$XENSERVER_IP&quot;

# Neutron specific part
ENABLED_SERVICES+=neutron,q-domua
Q_ML2_PLUGIN_MECHANISM_DRIVERS=openvswitch

Q_ML2_PLUGIN_TYPE_DRIVERS=vxlan,flat
Q_ML2_TENANT_NETWORK_TYPE=vxlan

VLAN_INTERFACE=eth1
PUBLIC_INTERFACE=eth2
</pre></div>
</div>
</div>
<div class="section" id="step-4-run-install-devstack-xen-sh-on-your-remote-linux-client">
<h5>Step 4: Run <cite>./install-devstack-xen.sh</cite> on your remote linux client<a class="headerlink" href="#step-4-run-install-devstack-xen-sh-on-your-remote-linux-client" title="Permalink to this headline"></a></h5>
<dl class="docutils">
<dt>An example::</dt>
<dd># Create a passwordless ssh key
ssh-keygen -t rsa -N “” -f devstack_key.priv
# Install devstack
./install-devstack-xen.sh XENSERVER mypassword devstack_key.priv</dd>
</dl>
<p>If you don’t select wait till launch (using “-w 0” option), once this script finishes executing,
login the VM (DevstackOSDomU) that it installed and tail the /opt/stack/devstack_logs/stack.log
file. You will need to wait until it stack.log has finished executing.</p>
</div>
</div>
<div class="section" id="appendix">
<h4>Appendix<a class="headerlink" href="#appendix" title="Permalink to this headline"></a></h4>
<p>This section contains useful information for using specific ubuntu network mirrors, which may
be required for specific environments to resolve specific access or performance issues.  As these
are advanced options, the “install-devstack-xen” approach does not support them.  If you wish to use
these options, please follow the approach outlined above which involves manually downloading
os-xenapi and configuring local.conf (or xenrc in the below cases)</p>
<div class="section" id="using-a-specific-ubuntu-mirror-for-installation">
<h5>Using a specific Ubuntu mirror for installation<a class="headerlink" href="#using-a-specific-ubuntu-mirror-for-installation" title="Permalink to this headline"></a></h5>
<p>To speed up the Ubuntu installation, you can use a specific mirror. To specify
a mirror explicitly, include the following settings in your <cite>xenrc</cite> file:</p>
<p>sample code:</p>
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">UBUNTU_INST_HTTP_HOSTNAME</span><span class="o">=</span><span class="s2">&quot;archive.ubuntu.com&quot;</span>
<span class="n">UBUNTU_INST_HTTP_DIRECTORY</span><span class="o">=</span><span class="s2">&quot;/ubuntu&quot;</span>
</pre></div>
</div>
<p>These variables set the <cite>mirror/http/hostname</cite> and <cite>mirror/http/directory</cite>
settings in the ubuntu preseed file. The minimal ubuntu VM will use the
specified parameters.</p>
</div>
<div class="section" id="use-an-http-proxy-to-speed-up-ubuntu-installation">
<h5>Use an http proxy to speed up Ubuntu installation<a class="headerlink" href="#use-an-http-proxy-to-speed-up-ubuntu-installation" title="Permalink to this headline"></a></h5>
<p>To further speed up the Ubuntu VM and package installation, an internal http
proxy could be used. <cite>squid-deb-proxy</cite> has proven to be stable. To use an http
proxy, specify the following in your <cite>xenrc</cite> file:</p>
<p>sample code:</p>
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">UBUNTU_INST_HTTP_PROXY</span><span class="o">=</span><span class="s2">&quot;http://ubuntu-proxy.somedomain.com:8000&quot;</span>
</pre></div>
</div>
<div class="section" id="exporting-the-ubuntu-vm-to-an-xva">
<h6>Exporting the Ubuntu VM to an XVA<a class="headerlink" href="#exporting-the-ubuntu-vm-to-an-xva" title="Permalink to this headline"></a></h6>
<p>Assuming you have an nfs export, <cite>TEMPLATE_NFS_DIR</cite>, the following sample code will export the jeos
(just enough OS) template to an XVA that can be re-imported at a later date.</p>
<p>sample code:</p>
<div class="highlight-default"><div class="highlight"><pre><span></span>TEMPLATE_FILENAME=devstack-jeos.xva
TEMPLATE_NAME=jeos_template_for_ubuntu
mountdir=$(mktemp -d)
mount -t nfs &quot;$TEMPLATE_NFS_DIR&quot; &quot;$mountdir&quot;
VM=&quot;$(xe template-list name-label=&quot;$TEMPLATE_NAME&quot; --minimal)&quot;
xe template-export template-uuid=$VM filename=&quot;$mountdir/$TEMPLATE_FILENAME&quot;
umount &quot;$mountdir&quot;
rm -rf &quot;$mountdir&quot;
</pre></div>
</div>
</div>
<div class="section" id="import-the-ubuntu-vm">
<h6>Import the Ubuntu VM<a class="headerlink" href="#import-the-ubuntu-vm" title="Permalink to this headline"></a></h6>
<p>Given you have an nfs export <cite>TEMPLATE_NFS_DIR</cite> where you exported the Ubuntu
VM as <cite>TEMPLATE_FILENAME</cite>:</p>
<p>sample code:</p>
<div class="highlight-default"><div class="highlight"><pre><span></span>mountdir=$(mktemp -d)
mount -t nfs &quot;$TEMPLATE_NFS_DIR&quot; &quot;$mountdir&quot;
xe vm-import filename=&quot;$mountdir/$TEMPLATE_FILENAME&quot;
umount &quot;$mountdir&quot;
rm -rf &quot;$mountdir&quot;
</pre></div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>


          </div>
        </div>
      </div>
<div class="sphinxsidebar">
    <div class="sphinxsidebarwrapper">
            <h3>Table Of Contents</h3>
            <ul><li><a href="index.html">Return to project home page</a></li></ul>
            <ul>
<li><a class="reference internal" href="#">os-xenapi</a><ul>
<li><a class="reference internal" href="#features">Features</a><ul>
<li><a class="reference internal" href="#install-devstack-on-xenserver">Install Devstack on XenServer</a><ul>
<li><a class="reference internal" href="#getting-started-with-xenserver-and-devstack">Getting Started With XenServer and Devstack</a><ul>
<li><a class="reference internal" href="#introduction">Introduction</a><ul>
<li><a class="reference internal" href="#requirements">Requirements</a></li>
<li><a class="reference internal" href="#steps-to-follow">Steps to follow</a></li>
<li><a class="reference internal" href="#brief-explanation">Brief explanation</a></li>
</ul>
</li>
<li><a class="reference internal" href="#step-1-install-xenserver">Step 1: Install Xenserver</a></li>
<li><a class="reference internal" href="#step-2-download-install-devstack-xen-sh">Step 2: Download install-devstack-xen.sh</a></li>
<li><a class="reference internal" href="#step-3-local-conf-overview">Step 3: local.conf overview</a></li>
<li><a class="reference internal" href="#step-4-run-install-devstack-xen-sh-on-your-remote-linux-client">Step 4: Run <cite>./install-devstack-xen.sh</cite> on your remote linux client</a></li>
</ul>
</li>
<li><a class="reference internal" href="#appendix">Appendix</a><ul>
<li><a class="reference internal" href="#using-a-specific-ubuntu-mirror-for-installation">Using a specific Ubuntu mirror for installation</a></li>
<li><a class="reference internal" href="#use-an-http-proxy-to-speed-up-ubuntu-installation">Use an http proxy to speed up Ubuntu installation</a><ul>
<li><a class="reference internal" href="#exporting-the-ubuntu-vm-to-an-xva">Exporting the Ubuntu VM to an XVA</a></li>
<li><a class="reference internal" href="#import-the-ubuntu-vm">Import the Ubuntu VM</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>

            <h4>Previous topic</h4>
            <p class="topless"><a href="index.html"
                                  title="previous chapter">Welcome to os-xenapi’s documentation!</a></p>
            <h4>Next topic</h4>
            <p class="topless"><a href="installation.html"
                                  title="next chapter">Installation</a></p>
            <h3>This Page</h3>
            <ul class="this-page-menu">
              <li><a href="_sources/readme.rst.txt"
                     rel="nofollow">Show Source</a></li>
            </ul>
          <div id="searchbox" style="display: none">
            <h3>Quick search</h3>
              <form class="search" action="search.html" method="get">
                <input type="text" name="q" size="18" />
                <input type="submit" value="Go" />
                <input type="hidden" name="check_keywords" value="yes" />
                <input type="hidden" name="area" value="default" />
              </form>
              <p class="searchtip" style="font-size: 90%">
              Enter search terms or a module, class or function name.
              </p>
          </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="genindex.html" title="General Index"
             accesskey="I">index</a></li>
        <li class="right" >
          <a href="installation.html" title="Installation"
             accesskey="N">next</a> |</li>
        <li class="right" >
          <a href="index.html" title="Welcome to os-xenapi’s documentation!"
             accesskey="P">previous</a> |</li>
        <li class="nav-item nav-item-0"><a href="index.html">os-xenapi 0.3.1 documentation</a> &#187;</li> 
      </ul>
    </div>

    <div class="footer" role="contentinfo">
        &#169; Copyright 2017, Citrix Systems.
      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.6.5.
    </div>
<script type="text/javascript">
try {
//Tracking docs.openstack.org/developer/<projectname> only
//The URL is built from the project variable in conf.py
var pageTracker = _gat._getTracker("UA-17511903-1");
pageTracker._setCookiePath("/developer/os-xenapi");
pageTracker._trackPageview();
} catch(err) {}</script>

  </body>
</html>