For reliability’s sake you may want to have more than one proxy server. You can set up the additional proxy node in the same manner that you set up the first proxy node but with additional configuration steps.
Once you have more than two proxies, you also want to load balance between the two, which means your storage endpoint also changes. You can select from different strategies for load balancing. For example, you could use round robin dns, or an actual load balancer (like pound) in front of the two proxies, and point your storage url to the load balancer.
Configure an initial proxy node for the initial setup, and then follow these additional steps for more proxy servers.
Update the list of memcache servers in /etc/swift/proxy-server.conf for all the added proxy servers. If you run multiple memcache servers, use this pattern for the multiple IP:port listings:
10.1.2.3:11211,10.1.2.4:11211
in each proxy server’s conf file.:
[filter:cache] use = egg:swift#memcache memcache_servers = <PROXY_LOCAL_NET_IP>:11211
Change the default_cluster_url to point to the load balanced url, rather than the first proxy server you created in /etc/swift/proxy-server.conf:
[app:auth-server] use = egg:swift#auth default_cluster_url = https://<LOAD_BALANCER_HOSTNAME>/v1 # Highly recommended to change this key to something else! super_admin_key = devauth
After you change the default_cluster_url setting, you have to delete the auth database and recreate the OpenStack Object Storage users, or manually update the auth database with the correct URL for each account.
Next, copy all the ring information to all the nodes, including your new proxy nodes, and ensure the ring info gets to all the storage nodes as well.
After you sync all the nodes, make sure the admin has the keys in /etc/swift and the ownership for the ring file is correct.

