Installing OpenStack Object Storage on UbuntuThough 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.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 or DevStack. See http://swift.openstack.org/development_saio.html
for manual instructions or http://devstack.org for all-in-one
including authentication and a dashboard.Before You BeginHave a copy of the Ubuntu Server installation media on
hand if you are installing on a new server.This document demonstrates installing a cluster using the following
types of nodes:One Proxy node which runs the swift-proxy-server
processes and may also run the optional swauth or
tempauth services, this walkthrough uses the
Identity service code-named Keystone. The proxy
server serves proxy requests to the appropriate
Storage nodes.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.Fewer Storage nodes can be used initially, but a minimum of 5
is recommended for a production cluster.General Installation StepsInstall the baseline operating system, such as
Ubuntu Server (12.04) or RHEL, CentOS, or Fedora,
on all nodes.Add Cloud Archive for grizzly updates.#apt-get install ubuntu-cloud-keyring#echo "deb http://ubuntu-cloud.archive.canonical.com/ubuntu precise-updates/grizzly main" >> /etc/apt/sources.list.d/cloud-archive.list#apt-get update#apt-get upgrade#apt-get dist-upgradeInstall core Swift files and openSSH.#apt-get install swift openssh-server rsync memcached python-netifaces python-xattr python-memcache#yum install openstack-swift openstack-swift-proxy openstack-swift-account openstack-swift-container openstack-swift-object memcachedCreate and populate configuration directories on all nodes:#mkdir -p /etc/swift#chown -R swift:swift /etc/swift/Create /etc/swift/swift.conf: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!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.