Change to show which nova services should run on the controller and the compute nodes
Patchset to fix bug 1085411, separate nova.conf with qpid settings Also updates Object Storage version to 1.8.0 Change-Id: I05b63f7e23acb739a5ee6050906d7cf49c3cbd25
This commit is contained in:
parent
76bc4cfe14
commit
25afe181e9
@ -62,7 +62,8 @@
|
||||
</listitem>
|
||||
</itemizedlist></para>
|
||||
|
||||
<literallayout class="monospaced"><xi:include parse="text" href="samples/nova.conf"/></literallayout></section>
|
||||
<literallayout os="ubuntu" class="monospaced"><xi:include parse="text" href="samples/nova.conf"/></literallayout>
|
||||
<literallayout os="rhel;centos;fedora" class="monospaced"><xi:include parse="text" href="samples/nova.conf-yum"/></literallayout></section>
|
||||
<section xml:id="api-paste-ini-file"><title>api-paste.ini</title><para>The /etc/nova/api-paste.ini file is a middleware configuration file used by the EC2 API and
|
||||
OpenStack Compute API. You should not need to edit it.</para>
|
||||
<literallayout class="monospaced"> <xi:include parse="text" href="samples/api-paste.ini"/></literallayout></section>
|
||||
|
@ -25,10 +25,10 @@
|
||||
<year>2013</year>
|
||||
<holder>OpenStack Foundation</holder>
|
||||
</copyright>
|
||||
<releaseinfo>Grizzly, Compute 2013.1, Network 2013.1, Object Storage
|
||||
1.7.6</releaseinfo>
|
||||
<releaseinfo>Grizzly, 2013.1 (Object Storage
|
||||
1.8.0)</releaseinfo>
|
||||
<productname>OpenStack</productname>
|
||||
<pubdate>2013-03-26</pubdate>
|
||||
<pubdate>2013-04-03</pubdate>
|
||||
<legalnotice role="apache2">
|
||||
<annotation>
|
||||
<remark>Copyright details are filled in by the template.</remark>
|
||||
@ -53,6 +53,18 @@
|
||||
as well as sample configuration files. </para>
|
||||
</abstract>
|
||||
<revhistory>
|
||||
<revision>
|
||||
<date>2013-04-03</date>
|
||||
<revdescription>
|
||||
<itemizedlist spacing="compact">
|
||||
<listitem>
|
||||
<para>Updates RHEL/CentOS/Fedora
|
||||
information for Grizzly
|
||||
release.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</revdescription>
|
||||
</revision>
|
||||
<revision>
|
||||
<date>2013-03-26</date>
|
||||
<revdescription>
|
||||
|
@ -3,10 +3,13 @@
|
||||
xmlns="http://docbook.org/ns/docbook"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0">
|
||||
<title>Installing the Cloud Controller</title>
|
||||
<para>Install the required nova- packages, and dependencies are automatically
|
||||
installed.</para>
|
||||
<screen os="ubuntu">sudo apt-get install nova-novncproxy novnc nova-api nova-ajax-console-proxy nova-cert nova-consoleauth nova-doc nova-scheduler nova-network</screen>
|
||||
<title>Installing Compute Services</title>
|
||||
<para>On both the controller and compute nodes install the required nova- packages, and
|
||||
dependencies are automatically installed.</para>
|
||||
<para os="ubuntu">On the controller node: </para>
|
||||
<screen os="ubuntu">sudo apt-get install nova-novncproxy novnc nova-api nova-ajax-console-proxy nova-cert nova-consoleauth nova-doc nova-scheduler nova-network nova-conductor</screen>
|
||||
<para os="ubuntu">On the compute node: </para>
|
||||
<screen os="ubuntu">sudo apt-get install nova-compute nova-network</screen>
|
||||
<para os="ubuntu">If you see the error:
|
||||
<screen>E: Unable to locate package nova-novncproxy</screen>ensure
|
||||
that you have installed the Ubuntu Cloud Archive packages by
|
||||
|
@ -6,6 +6,10 @@
|
||||
<para>Create the tables in your backend data store by running
|
||||
the following command:</para>
|
||||
<literallayout class="monospaced">sudo nova-manage db sync</literallayout>
|
||||
<para>
|
||||
<screen os="ubuntu">sudo nova-manage db sync</screen>
|
||||
</para>
|
||||
<screen os="rhel;fedora;centos"> <prompt>#</prompt>nova-manage db sync</screen>
|
||||
<para>If you see any response, you can look in
|
||||
/var/log/nova/nova-manage.log to see the problem. No
|
||||
response means the command completed correctly and your
|
||||
@ -13,11 +17,11 @@
|
||||
<note><title>Deprecation warnings</title>
|
||||
<para>Note that if while running this command you see warnings such as <literal> SADeprecationWarning: The 'listeners' argument to Pool (and create_engine()) is deprecated. Use event.listen().</literal>, these will be fixed in future version of the libraries and can be safely ignored.</para></note>
|
||||
|
||||
<para>Restart all services in total, just to cover the entire
|
||||
spectrum: </para>
|
||||
<para>Restart all services in total, just to cover the entire spectrum. On the controller node
|
||||
run:</para>
|
||||
<para>
|
||||
<screen os="ubuntu">sudo start nova-api
|
||||
sudo start nova-compute
|
||||
sudo start nova-conductor
|
||||
sudo start nova-network
|
||||
sudo start nova-scheduler
|
||||
sudo start nova-novncproxy
|
||||
@ -26,7 +30,15 @@ sudo start libvirt-bin
|
||||
sudo /etc/init.d/rabbitmq-server restart </screen>
|
||||
</para>
|
||||
<screen os="rhel;fedora;centos">
|
||||
<prompt>$></prompt> <userinput>for svc in api objectstore compute network volume scheduler cert; do sudo service openstack-nova-$svc start ; sudo chkconfig openstack-nova-$svc on ; done</userinput>
|
||||
<prompt>#</prompt> <userinput>for svc in api objectstore conductor network volume scheduler cert; do sudo service openstack-nova-$svc start; done</userinput>
|
||||
</screen>
|
||||
<para>On the compute node run:</para>
|
||||
<para>
|
||||
<screen os="ubuntu">sudo start nova-compute
|
||||
sudo start nova-network</screen>
|
||||
</para>
|
||||
<screen os="rhel;fedora;centos">
|
||||
<prompt>#</prompt> <userinput>for svc in compute network; do sudo service openstack-nova-$svc start; done</userinput>
|
||||
</screen>
|
||||
<para>All nova services are now installed and started. If the
|
||||
"start" command doesn't work, your services may not be
|
||||
|
@ -1,65 +1,14 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<section xml:id="compute-minimum-configuration-settings"
|
||||
xmlns="http://docbook.org/ns/docbook"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0">
|
||||
<section xml:id="compute-minimum-configuration-settings" xmlns="http://docbook.org/ns/docbook"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
version="5.0">
|
||||
<title>Configuring OpenStack Compute</title>
|
||||
<simplesect><title>Overview</title>
|
||||
<para>This section describes the relevant <filename>api-paste.ini</filename> and
|
||||
<filename>nova.conf</filename> settings for getting a minimal install running. Refer to
|
||||
the OpenStack Compute Administration Manual for guidance on more configuration
|
||||
options.</para>
|
||||
</simplesect>
|
||||
<simplesect>
|
||||
<title>api-paste.ini</title>
|
||||
<para>OpenStack Compute uses an <filename>/etc/nova/api-paste.ini</filename> file to
|
||||
configure various middleware components. In general, you should not need to modify this
|
||||
file, with one important exception, described below.</para>
|
||||
<para>Configuration options for authenticating against the OpenStack Identity Service can be
|
||||
specified in either the <filename>api-paste.ini</filename> file
|
||||
(<literal>filter:authtoken</literal> section) in or the
|
||||
<filename>nova.conf</filename> file (<literal>keystone_authtoken</literal> section).
|
||||
We recommend you specify this information in the <filename>nova.conf</filename> file so
|
||||
that all of your deployment-specific configuration options are contained in a single
|
||||
file. Unfortunately, the default <filename>api-paste.ini</filename> file is pre-filled
|
||||
with authentication fields. If these fields are not removed, OpenStack Compute services
|
||||
will not function properly even if the authentication configuration has been specified
|
||||
in <filename>nova.conf</filename>.</para>
|
||||
<para>Therefore, we recommend that you delete authentication options from your
|
||||
<filename>api-paste.ini</filename> file. The following options should be deleted
|
||||
from the <literal>filter:authtoken</literal> section of <literal>api-paste.ini</literal>.<itemizedlist>
|
||||
<listitem>
|
||||
<para><literal>auth_host</literal></para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para><literal>auth_port</literal></para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para><literal>auth_protocol</literal></para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para><literal>admin_tenant_name</literal></para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para><literal>admin_user</literal></para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para><literal>admin_password</literal></para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para><literal>signing_dirname</literal></para>
|
||||
</listitem>
|
||||
</itemizedlist>After deleting these options, the <literal>filter:authtoken</literal>
|
||||
section should contain only the following
|
||||
options:<programlisting>[filter:authtoken]
|
||||
paste.filter_factory = keystone.middleware.auth_token:filter_factory
|
||||
# Workaround for https://bugs.launchpad.net/nova/+bug/1154809
|
||||
auth_version = v2.0</programlisting></para>
|
||||
</simplesect>
|
||||
<simplesect>
|
||||
<title>nova.conf</title>
|
||||
<para>In general, you can use the same <filename>nova.conf</filename> file across the controller and compute nodes.
|
||||
However, the following configuration options need to be changed on each compute host: <itemizedlist>
|
||||
<para>This section describes the relevant <filename>nova.conf</filename> settings for getting a
|
||||
minimal install running. Refer to the OpenStack Compute Administration Manual for guidance
|
||||
on more configuration options.</para>
|
||||
<para>In general, you can use the same <filename>nova.conf</filename> file across the controller
|
||||
and compute nodes. However, the following configuration options need to be changed on each
|
||||
compute host: <itemizedlist>
|
||||
<listitem>
|
||||
<para><literal>my_ip</literal></para>
|
||||
</listitem>
|
||||
@ -70,50 +19,45 @@ auth_version = v2.0</programlisting></para>
|
||||
<para><literal>vncserver_proxyclient_address</literal></para>
|
||||
</listitem>
|
||||
</itemizedlist>For the above configuration options, you must use the IP address of the
|
||||
specific compute host, not the cloud controller.
|
||||
</para>
|
||||
<para>The packages automatically do these steps for a user
|
||||
named nova, but if you are installing as another user you
|
||||
should ensure that the <filename>nova.conf</filename> file should have its
|
||||
owner set to <literal>root:nova</literal>, and mode set to <literal>0640</literal>, since the
|
||||
file contains your MySQL server’s username and password.
|
||||
</para>
|
||||
<note><para>If you are installing as another user, you should set permissions correctly.
|
||||
This packaged install ensures that the nova user belongs
|
||||
to the nova group and that the .conf file permissions are
|
||||
set, but here are the manual commands, which should be run as root:</para>
|
||||
<screen>
|
||||
specific compute host, not the cloud controller. </para>
|
||||
<para>The packages automatically do these steps for a user named nova, but if you are installing
|
||||
as another user you should ensure that the <filename>nova.conf</filename> file should have
|
||||
its owner set to <literal>root:nova</literal>, and mode set to <literal>0640</literal>,
|
||||
since the file contains your MySQL server’s username and password. </para>
|
||||
<note>
|
||||
<para>If you are installing as another user, you should set permissions correctly. This
|
||||
packaged install ensures that the nova user belongs to the nova group and that the .conf
|
||||
file permissions are set, but here are the manual commands, which should be run as
|
||||
root:</para>
|
||||
<screen>
|
||||
<prompt># </prompt><userinput>groupadd nova</userinput>
|
||||
<prompt># </prompt><userinput>usermod -g nova nova</userinput>
|
||||
<prompt># </prompt><userinput>chown -R nova:nova /etc/nova</userinput>
|
||||
<prompt># </prompt><userinput>chmod 640 /etc/nova/nova.conf</userinput>
|
||||
</screen>
|
||||
</note>
|
||||
<para>The hypervisor is set by editing <filename>/etc/nova/nova.conf</filename>.
|
||||
The hypervisor defaults to <literal>kvm</literal>, but if you are
|
||||
working within a VM already, switch to <literal>qemu</literal> on the <literal>libvirt_type=</literal> line. To use Xen, refer
|
||||
<para>The hypervisor is set by editing <filename>/etc/nova/nova.conf</filename>. The hypervisor
|
||||
defaults to <literal>kvm</literal>, but if you are working within a VM already, switch to
|
||||
<literal>qemu</literal> on the <literal>libvirt_type=</literal> line. To use Xen, refer
|
||||
to the overview in this book for where to install nova components. </para>
|
||||
<note><para>You can also configure the nova-compute service
|
||||
(and, for example configure a hypervisor-per-compute-node) with a
|
||||
separate <filename>nova-compute.conf</filename> file and then referring to
|
||||
<filename>nova-compute.conf</filename> in the <filename>nova.conf</filename> file.
|
||||
</para></note>
|
||||
|
||||
<para>Ensure the database connection defines your backend data
|
||||
store by adding a <literal>sql_connection</literal> line to <filename>nova.conf</filename>:
|
||||
<literal>sql_connection=mysql://<replaceable>[user]</replaceable>:<replaceable>[pass]</replaceable>@<replaceable>[primary IP]</replaceable>/<replaceable>[db
|
||||
name]</replaceable></literal>, such as
|
||||
<literal>sql_connection=mysql://nova:yourpassword@192.168.206.130/nova</literal>.</para>
|
||||
<para>Add these settings to
|
||||
<filename>/etc/nova/nova.conf</filename> for the network
|
||||
configuration assumptions made for this installation scenario.
|
||||
You can place comments in the <filename>nova.conf</filename>
|
||||
file by entering a new line with a <literal>#</literal> sign
|
||||
at the beginning of the line. To see a listing of all possible
|
||||
configuration option settings, see <link
|
||||
<note>
|
||||
<para>You can also configure the nova-compute service (and, for example configure a
|
||||
hypervisor-per-compute-node) with a separate <filename>nova-compute.conf</filename> file
|
||||
and then referring to <filename>nova-compute.conf</filename> in the
|
||||
<filename>nova.conf</filename> file. </para>
|
||||
</note>
|
||||
<para>Ensure the database connection defines your backend data store by adding a
|
||||
<literal>sql_connection</literal> line to <filename>nova.conf</filename>:
|
||||
<literal>sql_connection=mysql://<replaceable>[user]</replaceable>:<replaceable>[pass]</replaceable>@<replaceable>[primary
|
||||
IP]</replaceable>/<replaceable>[db name]</replaceable></literal>, such as
|
||||
<literal>sql_connection=mysql://nova:yourpassword@192.168.206.130/nova</literal>.</para>
|
||||
<para>Add these settings to <filename>/etc/nova/nova.conf</filename> for the network
|
||||
configuration assumptions made for this installation scenario. You can place comments in the
|
||||
<filename>nova.conf</filename> file by entering a new line with a <literal>#</literal>
|
||||
sign at the beginning of the line. To see a listing of all possible configuration option
|
||||
settings, see <link
|
||||
xlink:href="http://docs.openstack.org/trunk/openstack-compute/admin/content/compute-options-reference.html"
|
||||
>the reference in the OpenStack Compute Administration Manual</link>.
|
||||
</para>
|
||||
>the reference in the OpenStack Compute Administration Manual</link>. </para>
|
||||
<programlisting>
|
||||
auth_strategy=keystone
|
||||
network_manager=nova.network.manager.FlatDHCPManager
|
||||
@ -121,30 +65,40 @@ fixed_range=192.168.100.0/24
|
||||
public_interface=eth0
|
||||
flat_interface=eth0
|
||||
flat_network_bridge=br100</programlisting>
|
||||
<para>Here is an example <filename>nova.conf</filename> with commented
|
||||
sections:</para>
|
||||
<para><programlisting><xi:include parse="text" href="samples/nova.conf"/>
|
||||
</programlisting></para>
|
||||
<para>Here is an example <filename>nova.conf</filename> with commented sections:</para>
|
||||
<para>
|
||||
<programlisting os="ubuntu"><xi:include parse="text" href="samples/nova.conf"/>
|
||||
</programlisting>
|
||||
<programlisting os="rhel;centos;fedora"><xi:include parse="text" href="samples/nova.conf-yum"/>
|
||||
</programlisting>
|
||||
</para>
|
||||
<para>
|
||||
<note>
|
||||
<para>The <literal>my_ip</literal> configuration option will be different for each host,
|
||||
edit it accordingly.</para>
|
||||
</note>
|
||||
</para>
|
||||
<para>Stop the nova- services prior to running db sync, by running
|
||||
stop commands as root. Otherwise your logs show errors because
|
||||
the database has not yet been populated:</para>
|
||||
|
||||
<screen os="ubuntu">
|
||||
<para>The controller node will run the nova-api, nova-scheduler, nova-cert, nova-consoleauth,
|
||||
nova-conductor and optionally nova-network services. The compute node will run the
|
||||
nova-compute and nova-network services. Stop the nova- services prior to running db sync, by
|
||||
running stop commands as root. Otherwise your logs show errors because the database has not
|
||||
yet been populated. On the controller node run:</para>
|
||||
<screen os="ubuntu">
|
||||
<prompt>#</prompt> <userinput>stop nova-api</userinput>
|
||||
<prompt>#</prompt> <userinput>stop nova-compute</userinput>
|
||||
<prompt>#</prompt> <userinput>stop nova-conductor</userinput>
|
||||
<prompt>#</prompt> <userinput>stop nova-network</userinput>
|
||||
<prompt>#</prompt> <userinput>stop nova-scheduler</userinput>
|
||||
<prompt>#</prompt> <userinput>stop nova-novncproxy</userinput>
|
||||
<prompt>#</prompt> <userinput>stop nova-volume</userinput>
|
||||
</screen>
|
||||
<screen os="rhel;fedora;centos">
|
||||
<prompt>$></prompt> <userinput>for svc in api objectstore compute network volume scheduler cert; do sudo service openstack-nova-$svc stop ; sudo chkconfig openstack-nova-$svc on ; done</userinput>
|
||||
<prompt>$></prompt> <userinput>for svc in api objectstore conductor network volume scheduler cert; do sudo service openstack-nova-$svc stop ; sudo chkconfig openstack-nova-$svc on ; done</userinput>
|
||||
</screen>
|
||||
<para>On the compute node run:</para>
|
||||
<screen os="ubuntu"><prompt>#</prompt> <userinput>stop nova-compute</userinput>
|
||||
<prompt>#</prompt> <userinput>stop nova-network</userinput>
|
||||
</screen>
|
||||
<screen os="rhel;fedora;centos">
|
||||
<prompt>$></prompt> <userinput>for svc in api compute network; do sudo service openstack-nova-$svc stop ; sudo chkconfig openstack-nova-$svc on ; done</userinput>
|
||||
</screen>
|
||||
</simplesect>
|
||||
</section>
|
||||
|
@ -51,13 +51,12 @@
|
||||
</imageobject>
|
||||
</inlinemediaobject></para>
|
||||
|
||||
<para>An alternative architecture would be to add more messaging servers
|
||||
if you notice a lot of back up in the messaging queue causing performance
|
||||
problems. In that case you would add an additional RabbitMQ server in
|
||||
addition to or instead of scaling up the database server. Your
|
||||
installation can run any nova- service on any server as long as the
|
||||
<filename>nova.conf</filename> is configured to point to the RabbitMQ
|
||||
server and the server can send messages to the server.</para>
|
||||
<para>An alternative architecture would be to add more messaging servers if you notice a lot of
|
||||
back up in the messaging queue causing performance problems. In that case you would add an
|
||||
additional messaging server in addition to or instead of scaling up the database server.
|
||||
Your installation can run any nova- service on any server as long as the
|
||||
<filename>nova.conf</filename> is configured to point to the messaging server and the
|
||||
server can send messages to the server.</para>
|
||||
|
||||
<para>Multiple installation architectures are possible, here is another
|
||||
example illustration.</para>
|
||||
|
@ -91,8 +91,16 @@
|
||||
<programlisting>admin_token = 012345SECRET99TOKEN012345</programlisting>
|
||||
<screen os="rhel;centos;fedora"><prompt>$</prompt> <userinput>export ADMIN_TOKEN=$(openssl rand -hex 10)</userinput>
|
||||
<prompt>$</prompt> <userinput>sudo openstack-config --set /etc/keystone/keystone.conf DEFAULT admin_token $ADMIN_TOKEN</userinput></screen>
|
||||
<para>Next, restart the keystone service so that it picks up the new
|
||||
database configuration.</para>
|
||||
<para>By default the keystone will use ssl encryption between it and all of the other services. To
|
||||
create the encryption certificates run:</para>
|
||||
<para>
|
||||
<screen os="ubuntu">sudo keystone-manage pki_setup
|
||||
sudo chown -R keystone:keystone /etc/keystone/*</screen>
|
||||
</para>
|
||||
<screen os="rhel;fedora;centos"><prompt>#</prompt> <userinput>keystone-manage pki_setup</userinput>
|
||||
<prompt>#</prompt> <userinput>chown -R keystone:keystone /etc/keystone/*</userinput></screen>
|
||||
<para> Next, restart the keystone service so that it picks up the new database
|
||||
configuration.</para>
|
||||
<screen os="ubuntu"><prompt>#</prompt> <userinput>sudo service keystone restart</userinput></screen>
|
||||
<screen os="rhel;fedora;centos"><prompt>$</prompt> <userinput>sudo service openstack-keystone start && sudo chkconfig openstack-keystone on</userinput></screen>
|
||||
<para>Lastly, initialize the new keystone database, as root:</para>
|
||||
|
@ -10,7 +10,7 @@
|
||||
|
||||
<para>Install the Image service, as root:</para>
|
||||
<screen os="ubuntu"><prompt>#</prompt> <userinput>sudo apt-get install glance</userinput></screen>
|
||||
<screen os="rhel;centos;fedora"><prompt>$</prompt> <userinput>sudo yum install openstack-nova openstack-glance</userinput></screen>
|
||||
<screen os="rhel;centos;fedora"><prompt>#</prompt> <userinput>yum install openstack-glance</userinput></screen>
|
||||
<note os="ubuntu"><para>10/10/12: When using the Ubuntu Cloud Archive, you need to
|
||||
re-install the <literal>python-keystoneclient</literal> after installing the
|
||||
glance packages listed above, otherwise you see an
|
||||
|
Loading…
Reference in New Issue
Block a user