Edits to install guide

Closes-Bug: #1249082

Change-Id: I9f68073da5ca25867b2b8c099cce5df34f6a3eec
author: diane fleming
This commit is contained in:
Diane Fleming
2013-11-07 16:01:29 -06:00
committed by Andreas Jaeger
parent 709d0956ee
commit 42b23e8c84
53 changed files with 2978 additions and 2625 deletions

385
doc/install-guide/ch_basics.xml Normal file → Executable file
View File

@@ -2,50 +2,55 @@
xmlns:xi="http://www.w3.org/2001/XInclude"
xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0"
xml:id="ch_basics">
<title>Basic Operating System Configuration</title>
<?dbhtml-stop-chunking?>
<title>Basic operating system configuration</title>
<para>This guide starts by creating two nodes: a controller node to
host most services, and a compute node to run virtual machine
instances. Later chapters create additional nodes to run more
services. OpenStack offers a lot of flexibility in how and where
you run each service, so this is not the only possible
configuration. However, you do need to configure certain aspects
of the operating system on each node.</para>
<para>This chapter details a sample configuration for both the
controller node and any additional nodes. It's possible to
configure the operating system in other ways, but the remainder of
this guide assumes you have a configuration compatible with the
one shown here.</para>
<para>All of the commands throughout this guide assume you have
administrative privileges. Either run the commands as the root
user, or prefix them with the <command>sudo</command>
command.</para>
<para>This guide shows you how to create a controller node to host
most services and a compute node to run virtual machine instances.
Subsequent chapters create additional nodes to run more services.
OpenStack is flexible about how and where you run each service, so
other configurations are possible. However, you must configure
certain operating system settings on each node.</para>
<para>This chapter details a sample configuration for the controller
node and any additional nodes. You can configure the operating
system in other ways, but this guide assumes that your
configuration is compatible with the one described here.</para>
<para>All example commands assume you have administrative
privileges. Either run the commands as the root user or prefix
them with the <command>sudo</command> command.</para>
<section xml:id="basics-networking">
<title>Networking</title>
<para>For a production deployment of OpenStack, most nodes should
have two network interface cards: one for external network
traffic, and one to communicate only with other OpenStack nodes.
For simple test cases, you can use machines with only a single
<para>For an OpenStack production deployment, most nodes must have
these network interface cards:</para>
<itemizedlist>
<listitem>
<para>One network interface card for external network traffic
</para>
</listitem>
<listitem>
<para>Another card to communicate with other OpenStack
nodes.</para>
</listitem>
</itemizedlist>
<para>For simple test cases, you can use machines with a single
network interface card.</para>
<para>This section sets up networking on two networks with static
IP addresses and manually manages a list of host names on each
machine. If you manage a large network, you probably already
have systems in place to manage this. If so, you may skip this
section, but note that the rest of this guide assumes that each
node can reach the other nodes on the internal network using
host names like <literal>controller</literal> and
<literal>compute1</literal>.</para>
<para>The following example configures Networking on two networks
with static IP addresses and manually manages a list of host
names on each machine. If you manage a large network, you might
already have systems in place to manage this. If so, you can
skip this section but note that the rest of this guide assumes
that each node can reach the other nodes on the internal network
by using the <literal>controller</literal> and
<literal>compute1</literal> host names.</para>
<!-- these fedora only paragraphs are confirmed not needed in centos -->
<para os="fedora">Start by disabling the
<literal>NetworkManager</literal> service and enabling the
<literal>network</literal> service. The
<literal>network</literal> service is more suitable for the
static network configuration done in this guide.</para>
<para os="fedora">Disable the <systemitem role="service"
>NetworkManager</systemitem> service and enable the
<systemitem role="service">network</systemitem> service. The
<systemitem role="service">network</systemitem> service is
more suitable for the static network configuration done in this
guide.</para>
<screen os="fedora"><prompt>#</prompt> <userinput>service NetworkManager stop</userinput>
<prompt>#</prompt> <userinput>service network start</userinput>
@@ -53,13 +58,15 @@
<prompt>#</prompt> <userinput>chkconfig network on</userinput></screen>
<note os="fedora">
<para>Since Fedora 19, <literal>firewalld</literal> replaced
<literal>iptables</literal> as the default firewall system.
You can configure <literal>firewalld</literal> successfully,
but this guide currently recommends and demonstrates the use
of <literal>iptables</literal>. For Fedora 19 systems, run the
following commands to disable <literal>firewalld</literal> and
enable <literal>iptables</literal>.</para>
<para>Since Fedora 19, <literal>firewalld</literal> replaces
<literal>iptables</literal> as the default firewall
system.</para>
<para>You can use <literal>firewalld</literal> successfully, but
this guide recommends and demonstrates the use of the default
<literal>iptables</literal>.</para>
<para>For Fedora 19 systems, run the following commands to
disable <literal>firewalld</literal> and enable
<literal>iptables</literal>:</para>
<screen><prompt>#</prompt> <userinput>service firewalld stop</userinput>
<prompt>#</prompt> <userinput>service iptables start</userinput>
<prompt>#</prompt> <userinput>chkconfig firewalld off</userinput>
@@ -67,26 +74,28 @@
</note>
<para os="opensuse;sles">When you set up your system, use the
traditional network scripts and do not use the
<literal>NetworkManager</literal>. You can change the settings
after installation with the YaST network module:</para>
traditional network scripts and do not use <systemitem
role="service">NetworkManager</systemitem>. You can change the
settings after installation with the YaST network module:</para>
<screen os="opensuse;sles"><prompt>#</prompt> <userinput>yast2 network</userinput></screen>
<para>Next, create the configuration for both
<literal>eth0</literal> and <literal>eth1</literal>. This
guide uses the <literal>192.168.0.x</literal> address for the
internal network and the <literal>10.0.0.x</literal> addresses for
the external network. Make sure that the corresponding network
devices are connected to the correct network.</para>
<para>Configure both <literal>eth0</literal> and
<literal>eth1</literal>. The examples in this guide use the
<literal>192.168.0.<replaceable>x</replaceable></literal> IP
addresses for the internal network and the
<literal>10.0.0.<replaceable>x</replaceable></literal> IP
addresses for the external network. Make sure to connect your
network devices to the correct network.</para>
<para>In this guide, the controller node uses the IP addresses
<para>In this guide, the controller node uses the
<literal>192.168.0.10</literal> and
<literal>10.0.0.10</literal>. When creating the compute node,
use <literal>192.168.0.11</literal> and
<literal>10.0.0.11</literal> instead. Additional nodes added
in later chapters will follow this pattern.</para>
<literal>10.0.0.10</literal> IP addresses. When you create the
compute node, use the <literal>192.168.0.11</literal> and
<literal>10.0.0.11</literal> addresses instead. Additional
nodes that you add in subsequent chapters also follow this
pattern.</para>
<figure xml:id="basic-architecture-networking">
<title>Basic Architecture</title>
<title>Basic architecture</title>
<mediaobject>
<imageobject>
<imagedata contentwidth="6in"
@@ -119,31 +128,30 @@ DEFROUTE=yes
ONBOOT=yes</programlisting>
</example>
<para os="opensuse;sles"> To set up the two network interfaces,
start the YaST network module, as follows: <screen><prompt>#</prompt> <userinput>yast2 network</userinput></screen>
<itemizedlist>
<listitem>
<para>Use the following parameters to set up the first
ethernet card <emphasis role="bold">eth0</emphasis> for
the internal network:
<programlisting>Statically assigned IP Address
<para os="opensuse;sles">To configure the network interfaces,
start the YaST network module, as follows:</para>
<screen os="opensuse;sles"><prompt>#</prompt> <userinput>yast2 network</userinput></screen>
<itemizedlist os="opensuse;sles">
<listitem>
<para>Use these parameters to set up the
<literal>eth0</literal> ethernet card for the internal
network:</para>
<programlisting>Statically assigned IP Address
IP Address: 192.168.0.10
Subnet Mask: 255.255.255.0</programlisting>
</para>
</listitem>
<listitem>
<para>Use the following parameters to set up the second
ethernet card <emphasis role="bold">eth1</emphasis> for
the external network:
<programlisting>Statically assigned IP Address
</listitem>
<listitem>
<para>Use these parameters to set up the
<literal>eth1</literal> ethernet card for the external
network:</para>
<programlisting>Statically assigned IP Address
IP Address: 10.0.0.10
Subnet Mask: 255.255.255.0</programlisting>
</para>
</listitem>
<listitem>
<para>Set up a default route on the external network.</para>
</listitem>
</itemizedlist></para>
</listitem>
<listitem>
<para>Set up a default route on the external network.</para>
</listitem>
</itemizedlist>
<example os="ubuntu;debian">
<title><filename>/etc/network/interfaces</filename></title>
@@ -160,7 +168,7 @@ iface eth1 inet static
netmask 255.255.255.0</programlisting>
</example>
<para>Once you've configured the network, restart the daemon for
<para>After you configure the network, restart the daemon for
changes to take effect:</para>
<screen os="ubuntu;debian"><prompt>#</prompt> <userinput>service networking restart</userinput></screen>
@@ -168,15 +176,15 @@ iface eth1 inet static
<para>Set the host name of each machine. Name the controller node
<literal>controller</literal> and the first compute node
<literal>compute1</literal>. These are the host names used in
the examples throughout this guide.</para>
<literal>compute1</literal>. The examples in this guide use
these host names.</para>
<para os="ubuntu;debian;fedora;rhel;centos">Use the
<command>hostname</command> command to set the host name:
<screen><prompt>#</prompt> <userinput>hostname controller</userinput></screen></para>
<para os="opensuse;sles">Use <command>yast network</command> to
set the host name with YaST.</para>
<para os="rhel;fedora;centos">To have the host name change persist
when the system reboots, you need to specify it in the proper
when the system reboots, you must specify it in the proper
configuration file. In Red Hat Enterprise Linux, CentOS, and
older versions of Fedora, you set this in the file
<filename>/etc/sysconfig/network</filename>. Change the line
@@ -184,20 +192,20 @@ iface eth1 inet static
<programlisting language="ini" os="rhel;fedora;centos">HOSTNAME=controller</programlisting>
<para os="fedora">As of Fedora 18, Fedora now uses the file
<filename>/etc/hostname</filename>. This file contains a
single line with just the host name.</para>
<para os="fedora">As of Fedora 18, Fedora uses the
<filename>/etc/hostname</filename> file, which contains a
single line with the host name.</para>
<para os="ubuntu;debian">To have this host name set when the
system reboots, you need to specify it in the file
<filename>/etc/hostname</filename>. This file contains a
single line with just the host name.</para>
<para os="ubuntu;debian">To configure this host name to be
available when the system reboots, you must specify it in the
<filename>/etc/hostname</filename> file, which contains a
single line with the host name.</para>
<para>Finally, ensure that each node can reach the other nodes
using host names. In this guide, we will manually edit the
<para>Finally, ensure that each node can reach the other nodes by
using host names. You must manually edit the
<filename>/etc/hosts</filename> file on each system. For
large-scale deployments, you should use DNS or a configuration
management system like Puppet.</para>
large-scale deployments, use DNS or a configuration management
system like Puppet.</para>
<programlisting>127.0.0.1 localhost
192.168.0.10 controller
@@ -208,11 +216,10 @@ iface eth1 inet static
<section xml:id="basics-ntp">
<title>Network Time Protocol (NTP)</title>
<para>To keep all the services in sync across multiple machines,
you need to install NTP. In this guide, we will configure the
controller node to be the reference server, and configure all
additional nodes to set their time from the controller
node.</para>
<para>To synchronize services across multiple machines, you must
install NTP. The examples in this guide configure the controller
node as the reference server and any additional nodes to set
their time from the controller node.</para>
<para>Install the <literal>ntp</literal> package on each system
running OpenStack services.</para>
@@ -231,16 +238,15 @@ iface eth1 inet static
<screen os="opensuse;sles"><prompt>#</prompt> <userinput>service ntp start</userinput>
<prompt>#</prompt> <userinput>chkconfig ntp on</userinput></screen>
<para>Set up all additional nodes to synchronize their time from
the controller node. The simplest way to do this is to add a
daily cron job. Add a file at
<filename>/etc/cron.daily/ntpdate</filename> that contains the
following:</para>
<para>On additional nodes, set up a daily cron job to synchronize
their time from the controller node. To do so, add the
<filename>/etc/cron.daily/ntpdate</filename> file, which
contains the following lines:</para>
<!-- A comment on the docs (http://docs.openstack.org/havana/install-guide/install/apt/content/basics-ntp.html) suggests that the -u switch is needed here. I haven't fully tested this yet, though, so can't confirm. -->
<screen><prompt>#</prompt> <userinput>ntpdate <replaceable>controller</replaceable></userinput>
<prompt>#</prompt> <userinput>hwclock -w</userinput></screen>
<para>Make sure to mark this file as executable.</para>
<para>Mark this file as executable.</para>
<screen><prompt>#</prompt> <userinput>chmod a+x /etc/cron.daily/ntpdate</userinput></screen>
@@ -250,20 +256,20 @@ iface eth1 inet static
<title>MySQL database</title>
<para os="ubuntu;debian;rhel;fedora;centos">Most OpenStack
services require a database to store information. In this guide,
we use a MySQL database running on the controller node. The
controller node needs to have the MySQL database installed. Any
additional nodes that access MySQL need to have the MySQL client
software installed:</para>
services require a database to store information. The examples
in this guide use a MySQL database that runs on the controller
node. You must install the MySQL database on the controller
node. You must install MySQL client software on any additional
nodes that access MySQL:</para>
<para os="opensuse;sles">Most OpenStack services require a
database to store information. In this guide, we use a MySQL
database on SUSE Linux Enterprise Server and a compatible
database on openSUSE running on the controller node. This
compatible database for openSUSE is MariaDB. The controller node
needs to have the MariaDB database installed. Any additional
nodes that access the MariaDB database need to have the MariaDB
client software installed:</para>
<itemizedlist>
database to store information. This guide uses a MySQL database
on SUSE Linux Enterprise Server and a compatible database on
openSUSE running on the controller node. This compatible
database for openSUSE is MariaDB. You must install the MariaDB
database on the controller node. You must install the MariaDB
client software on any nodes that access the MariaDB
database:</para>
<itemizedlist os="opensuse;sles">
<listitem>
<para><phrase os="sles">For SUSE Linux Enterprise Server:
</phrase> On the controller node, install the MySQL client,
@@ -276,10 +282,9 @@ iface eth1 inet static
<screen os="ubuntu;debian"><prompt>#</prompt> <userinput>apt-get install python-mysqldb mysql-server</userinput></screen>
<screen os="rhel;fedora;centos"><prompt>#</prompt> <userinput>yum install mysql mysql-server MySQL-python</userinput></screen>
<note os="ubuntu;debian">
<para>When you install the server package, you will be asked
to enter a root password for the database. Be sure to
choose a strong password and remember it - it will be
needed later.</para>
<para>When you install the server package, you are prompted
for the root password for the database. Be sure to choose
a strong password and remember it.</para>
</note>
<para>Edit <filename os="ubuntu;debian"
>/etc/mysql/my.cnf</filename><filename
@@ -297,8 +302,8 @@ bind-address = 192.168.0.10</programlisting>
the <phrase os="ubuntu;debian;rhel;fedora;centos"
>MySQL</phrase>
<phrase os="opensuse">MariaDB (on openSUSE)</phrase> client
and the MySQL Python library. This is all you need to do on
any system not hosting the MySQL database.</para>
and the MySQL Python library on any system that does not
host a MySQL database.</para>
<screen os="ubuntu;debian"><prompt>#</prompt> <userinput>apt-get install python-mysqldb</userinput></screen>
<screen os="rhel;fedora;centos"><prompt>#</prompt> <userinput>yum install mysql MySQL-python</userinput></screen>
<screen os="opensuse"><prompt>#</prompt> <userinput>zypper install mariadb-client python-mysql</userinput></screen>
@@ -321,32 +326,28 @@ bind-address = 192.168.0.10</programlisting>
set a root password for your <phrase os="rhel;fedora;centos"
>MySQL</phrase>
<phrase os="opensuse;sles">MariaDB or MySQL</phrase> database.
The OpenStack programs that set up databases and tables will
prompt you for this password if it's set. You also need to
The OpenStack programs that set up databases and tables prompt
you for this password if it is set.</para>
<para os="ubuntu;debian;rhel;centos;fedora;opensuse;sles">You must
delete the anonymous users that are created when the database is
first started. Otherwise, you will get database connection
problems when following the instructions in this guide. You can
do both of these with the
<command>mysql_secure_installation</command> command.</para>
first started. Otherwise, database connection problems occur
when you follow the instructions in this guide. To do this, use
the <command>mysql_secure_installation</command> command.</para>
<para os="ubuntu;debian">You need to delete the anonymous users
that are created when the database is first started. Otherwise,
you will get database connection problems when following the
instructions in this guide. You can do this with the
<command>mysql_secure_installation</command> command.</para>
<screen><prompt>#</prompt> <userinput>mysql_secure_installation</userinput></screen>
<screen os="ubuntu;debian;rhel;centos;fedora;opensuse;sles"><prompt>#</prompt> <userinput>mysql_secure_installation</userinput></screen>
<para><phrase os="rhel;centos;fedora;opensuse;sles">If you have
not already set a root database password, press enter when
first prompted for the password.</phrase> This command will
present a number of options for you to secure your database
installation. Answer yes to all of them unless you have a good
reason to do otherwise.</para>
not already set a root database password, press
<keycap>ENTER</keycap> when you are prompted for the
password.</phrase> This command presents a number of options
for you to secure your database installation. Respond
<userinput>yes</userinput> to all prompts unless you have a
good reason to do otherwise.</para>
</section>
<section xml:id="basics-packages">
<title>OpenStack Packages</title>
<title>OpenStack packages</title>
<para>Distributions might release OpenStack packages as part of
their distribution or through other methods because the
@@ -356,30 +357,30 @@ bind-address = 192.168.0.10</programlisting>
complete after you configure machines to install the latest
OpenStack packages.</para>
<para os="fedora;centos;rhel">This guide uses the OpenStack
packages from the RDO repository. These packages work on Red Hat
Enterprise Linux 6 and compatible versions of CentOS, as well as
Fedora 19. Enable the RDO repository by downloading and
installing the <literal>rdo-release-havana</literal>
<para os="fedora;centos;rhel">The examples in this guide use the
OpenStack packages from the RDO repository. These packages work
on Red Hat Enterprise Linux 6, compatible versions of CentOS,
and Fedora 19. To enable the RDO repository, download and
install the <package>rdo-release-havana</package>
package.</para>
<screen os="fedora;centos;rhel"><prompt>#</prompt> <userinput>yum install http://repos.fedorapeople.org/repos/openstack/openstack-havana/rdo-release-havana-6.noarch.rpm</userinput></screen>
<para os="fedora;centos;rhel">The EPEL package includes GPG keys
for package signing and repository information. This should only
be installed on Red Hat Enterprise Linux and CentOS, not Fedora.
Install the latest <systemitem>epel-release</systemitem> package
(see <link
Install the latest <package>epel-release</package> package (see
<link
xlink:href="http://download.fedoraproject.org/pub/epel/6/i386/repoview/epel-release.html"
>http://download.fedoraproject.org/pub/epel/6/x86_64/repoview/epel-release.html</link>).
For example:</para>
<screen os="fedora;centos;rhel"><prompt>#</prompt> <userinput>yum install http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm</userinput></screen>
<para os="fedora;centos;rhel">The
<literal>openstack-utils</literal> package contains utility
<package>openstack-utils</package> package contains utility
programs that make installation and configuration easier. These
programs will be used throughout this guide. Install
<literal>openstack-utils</literal>. This will also verify that
you can access the RDO repository.</para>
programs are used throughout this guide. Install
<package>openstack-utils</package>. This verifies that you can
access the RDO repository.</para>
<screen os="fedora;centos;rhel"><prompt>#</prompt> <userinput>yum install openstack-utils</userinput></screen>
@@ -389,17 +390,15 @@ bind-address = 192.168.0.10</programlisting>
<screen os="opensuse"><prompt>#</prompt> <userinput>zypper addrepo -f obs://Cloud:OpenStack:Havana/openSUSE_12.3 Havana</userinput></screen>
<para os="sles"> If you use SUSE Linux Enterprise Server 11 SP3,
use:
<screen><prompt>#</prompt> <userinput>zypper addrepo -f obs://Cloud:OpenStack:Havana/SLE_11_SP3 Havana</userinput></screen>
</para>
<screen><prompt>#</prompt> <userinput>zypper addrepo -f obs://Cloud:OpenStack:Havana/SLE_11_SP3 Havana</userinput></screen></para>
<para os="opensuse">For openSUSE 13.1, nothing needs to be done
because OpenStack Havana packages are part of the distribution
itself.</para>
<para os="opensuse;sles">The <literal>openstack-utils</literal>
<para os="opensuse;sles">The <package>openstack-utils</package>
package contains utility programs that make installation and
configuration easier. These programs will be used throughout
this guide. Install <literal>openstack-utils</literal>. This
will also verify that you can access the Open Build Service
repository:</para>
configuration easier. These programs are used throughout this
guide. Install <package>openstack-utils</package>. This verifies
that you can access the Open Build Service repository:</para>
<screen os="opensuse;sles"><prompt>#</prompt> <userinput>zypper install openstack-utils</userinput></screen>
@@ -429,17 +428,19 @@ bind-address = 192.168.0.10</programlisting>
of OpenStack also maintain a non-official Debian repository
for OpenStack containing Wheezy backports.</para>
<step>
<para>Install the Debian Wheezy backport repository Havana:</para>
<screen><prompt>#</prompt> <userinput>echo "deb http://archive.gplhost.com/debian havana-backports main" >>/etc/apt/sources.list</userinput></screen>
<para>Install the Debian Wheezy backport repository
Havana:</para>
<screen><prompt>#</prompt> <userinput>echo "deb http://archive.gplhost.com/debian havana-backports main" >>/etc/apt/sources.list</userinput></screen>
</step>
<step>
<para>Install the Debian Wheezy OpenStack repository for
Havana:</para>
<screen><prompt>#</prompt> <userinput>echo "deb http://archive.gplhost.com/debian havana main" >>/etc/apt/sources.list</userinput></screen>
<screen><prompt>#</prompt> <userinput>echo "deb http://archive.gplhost.com/debian havana main" >>/etc/apt/sources.list</userinput></screen>
</step>
<step>
<para>Upgrade the system and install the repository key:</para>
<screen><prompt>#</prompt> <userinput>apt-get update &amp;&amp; apt-get install gplhost-archive-keyring &amp;&amp; apt-get update &amp;&amp; apt-get dist-upgrade</userinput></screen>
<para>Upgrade the system and install the repository
key:</para>
<screen><prompt>#</prompt> <userinput>apt-get update &amp;&amp; apt-get install gplhost-archive-keyring &amp;&amp; apt-get update &amp;&amp; apt-get dist-upgrade</userinput></screen>
</step>
</procedure>
<para os="debian">Numerous archive.gplhost.com mirrors are
@@ -450,27 +451,33 @@ bind-address = 192.168.0.10</programlisting>
>http://archive.gplhost.com/readme.mirrors</link>.</para>
</section>
<section xml:id="basics-argparse" os="debian">
<title>Manually installing python-argparse</title>
<para>The Debian OpenStack packages are maintained on Debian Sid (aka, Debian Unstable)
- the current development version. The (backported) packages can run fine on Debian
Wheezy with a single caveat:</para>
<para>All the OpenStack packages are written in python. Wheezy uses Python version 2.6
and Python version 2.7, with Python 2.6 being the default interpreter, while Sid has
only Python version 2.7. There is one packaging change between these two. With
Python 2.6 python-argparse was a separate package that needs to be installed on its
own, with Python 2.7 it is included as part of the Python 2.7 packages. Unfortunately,
the Python 2.7 package does not have a <code>Provides: python-argparse</code> in it.</para>
<para>Since the packages are maintained in Sid where a require on python-argparse
would be an error and the Debian OpenStack maintainer only want to maintain a single
version of the OpenStack packages, you have to install
<systemitem class="library">python-argparse</systemitem> manually on each OpenStack
system running Debian Wheezy, before installing any other OpenStack packages. Install
the package with:</para>
<title>Manually install python-argparse</title>
<para>The Debian OpenStack packages are maintained on Debian Sid
(also known as Debian Unstable) - the current development
version. Backported packages run correctly on Debian Wheezy with
one caveat:</para>
<para>All OpenStack packages are written in Python. Wheezy uses
Python 2.6 and 2.7, with Python 2.6 as the default interpreter;
Sid has only Python 2.7. There is one packaging change between
these two. In Python 2.6, you installed the
<package>python-argparse</package> package separately. In
Python 2.7, this package is installed by default. Unfortunately,
in Python 2.7, this package does not include <code>Provides:
python-argparse</code> directive.</para>
<para>Because the packages are maintained in Sid where the
<code>Provides: python-argparse</code> directive causes an
error, and the Debian OpenStack maintainer wants to maintain one
version of the OpenStack packages, you must manually install the
<package>python-argparse</package> on each OpenStack system
that runs Debian Wheezy before you install the other OpenStack
packages. Use the following command to install the
package:</para>
<screen><prompt>#</prompt> <userinput>apt-get install python-argparse</userinput></screen>
<para>This applies to nearly all OpenStack packages in Wheezy.</para>
<para>This caveat applies to most OpenStack packages in
Wheezy.</para>
</section>
<section xml:id="basics-queue">
<title>Messaging Server</title>
<title>Messaging server</title>
<para>On the controller node, install the messaging queue server.
Typically this is <phrase os="ubuntu;debian;opensuse;sles"
>RabbitMQ</phrase><phrase os="centos;rhel;fedora"
@@ -493,7 +500,7 @@ bind-address = 192.168.0.10</programlisting>
password, and with IPv6, it is reachable from the
outside.</para>
<para>To change the default guest password of RabbitMQ:</para>
<screen><prompt>#</prompt> <userinput>rabbitmqctl change_password guest <replaceable>NEW_PASS</replaceable></userinput></screen>
<screen><prompt>#</prompt> <userinput>rabbitmqctl change_password guest <replaceable>NEW_PASS</replaceable></userinput></screen>
</note>
<para os="fedora;centos;rhel">Disable Qpid authentication by
editing <filename>/etc/qpidd.conf</filename> file and changing
@@ -508,7 +515,7 @@ bind-address = 192.168.0.10</programlisting>
start automatically when the system boots:</para>
<screen os="opensuse;sles"><prompt>#</prompt> <userinput>service rabbitmq-server start</userinput>
<prompt>#</prompt> <userinput>chkconfig rabbitmq-server on</userinput></screen>
<para>Congratulations, now you are ready to start installing
OpenStack services!</para>
<para>Congratulations, now you are ready to install OpenStack
services!</para>
</section>
</chapter>