85 lines
4.6 KiB
XML
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>
|