openstack-manuals/doc/src/docbkx/openstack-install/object-storage-install-ubun...

85 lines
4.6 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<section xml:id="installing-openstack-object-storage-on-ubuntu"
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 OpenStack Object Storage on Ubuntu</title>
<para>Though you can install OpenStack Object Storage for development or testing purposes on a single server, a multiple-server installation enables the high availability and redundancy you want in a production distributed object storage system.</para>
<para>If you would like to perform a single node installation on Ubuntu for
development purposes from source code, use the Swift All In One
instructions. See
<link xlink:href="http://swift.openstack.org/development_saio.html">http://swift.openstack.org/development_saio.html</link>.</para>
<section xml:id="before-you-begin-swift-install">
<title>Before You Begin</title>
<para>Have a copy of the Ubuntu Server installation media on hand
if you are installing on a new server. The packages referred to support 10.10 maverick, 11.04 natty, or 11.10 oneiric.</para>
<para>This document demonstrates installing a cluster using the following
types of nodes:</para>
<itemizedlist>
<listitem>
<para>One Proxy node which runs the swift-proxy-server
processes and may also run optional swauth services.
It serves proxy requests to the appropriate Storage
nodes.</para>
</listitem>
<listitem>
<para>Five Storage nodes that run the swift-account-server,
swift-container-server, and swift-object-server
processes which control storage of the account
databases, the container databases, as well as the
actual stored objects.</para>
</listitem>
</itemizedlist>
<note>
<para>Fewer Storage nodes can be used initially, but a minimum of 5
is recommended for a production cluster.</para>
</note>
</section>
<section xml:id="general-installation-steps-swift">
<title>General Installation Steps </title>
<orderedlist>
<listitem>
<para>Install the baseline Ubuntu Server (either 10.10 maverick, 11.04 natty, or 11.10 oneiric) on all
nodes.</para>
</listitem>
<listitem>
<para>First, you need to add a signing key for the
Cloud Builders repository that contains packages
that are known and tested to work together, such
as diablo-d5 or diablo-final. Once you add the
signing key, you add a repository entry pointing
to it and update your repo pointer with an apt-get
command. </para>
<literallayout class="monospaced">sudo apt-key adv --keyserver hkp://subkeys.pgp.net --recv F87CBDE0</literallayout>
<literallayout class="monospaced">sudo echo "deb http://ops.rcb.me/packages maverick diablo-final" > /etc/apt/sources.list.d/rcb-sources.list</literallayout>
</listitem>
<listitem><para>Now, install the swift service and openSSH. </para>
<literallayout class="monospaced">sudo apt-get install swift openssh-server</literallayout>
</listitem>
<listitem><para>Create and populate configuration directories on all nodes:</para>
<para><literallayout class="monospaced">mkdir -p /etc/swift
chown -R swift:swift /etc/swift/</literallayout></para>
</listitem>
<listitem><para>Create /etc/swift/swift.conf:</para>
<para><literallayout class="monospaced">[swift-hash]
# random unique string that can never change, keep it secret and do NOT lose it
swift_hash_path_suffix = changeme
</literallayout></para>
</listitem>
</orderedlist>
<note>
<para>The suffix value in /etc/swift/swift.conf should be set to some random
string of text to be used as a salt when hashing to determine
mappings in the ring. This file should be the same on every node in
the cluster!</para>
</note>
<para>Next, set up your storage nodes, proxy node, and an auth
node, in this walkthrough we'll use the OpenStack Identity
Service, Keystone, for the common auth piece.</para>
</section>
</section>