diff --git a/doc/install-guide/object-storage/section_object-storage-install.xml b/doc/install-guide/object-storage/section_object-storage-install.xml index a1d7897cbe..e7119bbad4 100644 --- a/doc/install-guide/object-storage/section_object-storage-install.xml +++ b/doc/install-guide/object-storage/section_object-storage-install.xml @@ -4,50 +4,52 @@ xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0"> Install Object Storage - Though you can install OpenStack Object Storage for - development or testing purposes on one server, a - multiple-server installation enables the high availability and - redundancy you want in a production distributed object storage - system. - To perform a single-node installation for development - purposes from source code, use the Swift All In One - instructions (Ubuntu) or DevStack (multiple distros). See - Though you can install OpenStack Object Storage for development or + testing purposes on one server, a multiple-server installation enables + the high availability and redundancy you want in a production + distributed object storage system. + To perform a single-node installation for development purposes from + source code, use the Swift All In One instructions (Ubuntu) or DevStack + (multiple distros). See http://swift.openstack.org/development_saio.html - for manual instructions or http://devstack.org for all-in-one including - authentication with the Identity Service (keystone). + >http://swift.openstack.org/development_saio.html for manual + instructions or http://devstack.org for all-in-one including authentication + with the Identity Service (keystone) v2.0 API. + + In this guide we recommend installing and configuring the Identity + service so that it implements Identity API v2.0. The Object Storage + service is unaware of domains when implementing Access Control Lists + (ACLs), so you must use the v2.0 API to avoid having identical user + names in different domains, which would enable two users to access + the same objects. +
Before you begin - Have a copy of the operating system installation media - available if you are installing on a new server. - These steps assume you have set up repositories for - packages for your operating system as shown in OpenStack - Packages. - This document demonstrates how to install a cluster by - using the following types of nodes: + Have a copy of the operating system installation media available + if you are installing on a new server. + These steps assume you have set up repositories for packages for + your operating system as shown in OpenStack Packages. + This document demonstrates how to install a cluster by using the + following types of nodes: One proxy node which runs the swift-proxy-server - processes. The proxy server proxies requests to - the appropriate storage nodes. + processes. The proxy server proxies 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 + 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 five is recommended for a production - cluster. + Fewer storage nodes can be used initially, but a minimum of + five is recommended for a production cluster.
@@ -55,17 +57,18 @@ Create a swift user that the Object - Storage Service can use to authenticate with the Identity Service. - Choose a password and specify an email address for the - swift user. Use the - service tenant and give the user the - admin role: + Storage Service can use to authenticate with the Identity + Service. Choose a password and specify an email address for + the swift user. Use the + service tenant and give the user the + admin role: $ keystone user-create --name=swift --pass=SWIFT_PASS \ --email=swift@example.com $ keystone user-role-add --user=swift --tenant=service --role=admin - Create a service entry for the Object Storage Service: + Create a service entry for the Object Storage + Service: $ keystone service-create --name=swift --type=object-store \ --description="OpenStack Object Storage" +-------------+----------------------------------+ @@ -76,15 +79,17 @@ | name | swift | | type | object-store | +-------------+----------------------------------+ - The service ID is randomly generated and is different from - the one shown here. + + The service ID is randomly generated and is different + from the one shown here. + - Specify an API endpoint for the Object Storage Service by using - the returned service ID. When you specify an endpoint, you - provide URLs for the public API, internal API, and admin API. - In this guide, the controller host name is - used: + Specify an API endpoint for the Object Storage Service by + using the returned service ID. When you specify an endpoint, + you provide URLs for the public API, internal API, and admin + API. In this guide, the controller host + name is used: $ keystone endpoint-create \ --service-id=$(keystone service-list | awk '/ object-store / {print $2}') \ --publicurl='http://controller:8080/v1/AUTH_%(tenant_id)s' \ @@ -102,27 +107,22 @@ +-------------+---------------------------------------------------+ - Create the configuration directory on - all nodes: + Create the configuration directory on all nodes: # mkdir -p /etc/swift - Create - /etc/swift/swift.conf on - all nodes: + Create /etc/swift/swift.conf on all + nodes: - 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 must be the same on every node in the - cluster! + 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 must + be the same on every node in the cluster! - Next, set up your storage nodes and proxy node. This - example uses the Identity Service for the common - authentication piece. + Next, set up your storage nodes and proxy node. This example uses + the Identity Service for the common authentication piece.