From 36935a2b5dffba99107414b37b8d152242d8eb48 Mon Sep 17 00:00:00 2001 From: Anne Gentle Date: Tue, 30 Nov 2010 12:24:55 -0600 Subject: [PATCH 1/2] Adding Citrix contributions to Admin Guide --- doc/source/admin_guide.rst | 26 ++++++++++++++++++++++++++ doc/source/development_saio.rst | 2 +- 2 files changed, 27 insertions(+), 1 deletion(-) diff --git a/doc/source/admin_guide.rst b/doc/source/admin_guide.rst index 99cd9c2446..c7a6b4ff03 100644 --- a/doc/source/admin_guide.rst +++ b/doc/source/admin_guide.rst @@ -6,6 +6,8 @@ Administrator's Guide Managing the Rings ------------------ +You need to build the storage rings on the proxy server node, and distribute them to all the servers in the cluster. Storage rings contain information about all the Swift storage partitions and how they are distributed between the different nodes and disks. For more information see :doc:`overview_ring`. + Removing a device from the ring:: swift-ring-builder remove / @@ -30,6 +32,30 @@ Once you are done with all changes to the ring, the changes need to be Once the new rings are built, they should be pushed out to all the servers in the cluster. +------------------------- +Scripting Ring Management +------------------------- +You can create scripts for the account and container ring management. Here's an example for the Account ring. + +1. Create a script file called make-account-ring.sh on the proxy server node with the following content:: + + #!/bin/bash + cd /etc/swift + rm -f account.builder account.ring.gz backups/account.builder backups/account.ring.gz + swift-ring-builder account.builder create 18 3 1 + swift-ring-builder account.builder add z1-:6002/sdb1 1 + swift-ring-builder account.builder add z2-:6002/sdb1 1 + swift-ring-builder account.builder rebalance + +You need to replace the values of , , etc. with the IP addresses of the account servers used in your setup. You can have as many account servers as you need. All account servers are assumed to be listening on port 6002, and have a storage device called "sdb1" (this is a directory name created under /drives when we setup the account server). The "z1", "z2", etc. designate zones, and you can choose whether you put devices in the same or different zones. + +2. Make the script file executable and run it to create the account ring file:: + + chmod +x make-account-ring.sh + sudo ./make-account-ring.sh + +3. Copy the resulting ring file /etc/swift/account.ring.gz to all the account server nodes in your Swift environment, and put them in the /etc/swift directory on these nodes. Make sure that every time you change the account ring configuration, you copy the resulting ring file to all the account nodes. + ----------------------- Handling System Updates ----------------------- diff --git a/doc/source/development_saio.rst b/doc/source/development_saio.rst index a270753338..7b9e0c780c 100644 --- a/doc/source/development_saio.rst +++ b/doc/source/development_saio.rst @@ -33,7 +33,7 @@ Installing dependencies and the core code python-xattr sqlite3 xfsprogs python-webob python-eventlet python-greenlet python-pastedeploy` #. Install anything else you want, like screen, ssh, vim, etc. - #. Next, choose either see :ref:`partition-section` or :ref:`loopback-section`. + #. Next, choose either :ref:`partition-section` or :ref:`loopback-section`. .. _partition-section: From 45c59e06539ad813a11c3080708c1ade8755fd2f Mon Sep 17 00:00:00 2001 From: Anne Gentle Date: Tue, 30 Nov 2010 14:15:41 -0600 Subject: [PATCH 2/2] Edited to reflect ring creation not management --- doc/source/admin_guide.rst | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/doc/source/admin_guide.rst b/doc/source/admin_guide.rst index c7a6b4ff03..31c5f17123 100644 --- a/doc/source/admin_guide.rst +++ b/doc/source/admin_guide.rst @@ -32,10 +32,10 @@ Once you are done with all changes to the ring, the changes need to be Once the new rings are built, they should be pushed out to all the servers in the cluster. -------------------------- -Scripting Ring Management -------------------------- -You can create scripts for the account and container ring management. Here's an example for the Account ring. +----------------------- +Scripting Ring Creation +----------------------- +You can create scripts to create the account and container rings and rebalance. Here's an example script for the Account ring. Use similar commands to create a make-container-ring.sh script on the proxy server node. 1. Create a script file called make-account-ring.sh on the proxy server node with the following content::