How to configure two proxy-auth node

Asked by Salvatore Piccolo

I've installed openstack in a multiserver environment: 1 proxy-auth node, 5 storage node in 5 different zones that runs Account, Container, and Object services. I'd like to have another proxy-auth node for my environment: is it possible? How can I configure this scenario? I've to install the second proxy-auth node as the first?

Question information

Language:
English Edit question
Status:
Solved
For:
OpenStack Object Storage (swift) Edit question
Assignee:
No assignee Edit question
Solved by:
Salvatore Piccolo
Solved:
Last query:
Last reply:
Revision history for this message
Chuck Thier (cthier) said :
#1

There are two questions.

1. Adding another auth node? The dev auth is not meant for production, and thus not written to run on more than one server, so you should only run auth on run server.

2. Adding another proxy node? Yes, you can set up the proxy node in the same manner that you set up the first proxy node. I think the only proxy config change that you will need to make is to update the list of memcache servers in your proxy-server.conf on both proxies. Once you have more than two proxies, you will also want to load balance between the two, which means your storage endpoint will also change. You will need to change the default_cluster_url in your auth-server.conf for the auth server to point to the load balanced url, rather than the first proxy server you created.

Revision history for this message
Salvatore Piccolo (spiccolo) said :
#2

So I can have only one auth node, right?
Instead, I may have 2 proxy node with memcache listed in proxy-server.conf on both.
How can I manage the load balanced url?

Revision history for this message
Chuck Thier (cthier) said :
#3

Yes there can be only one auth node. And you are correct about the proxy servers. The are a lot of 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.

Revision history for this message
Salvatore Piccolo (spiccolo) said :
#4

I've another question about the configuration of two or more proxy node. When I configure a proxy node I've to copy the account.ring.gz, container.ring.gz, and object.ring.gz files to each of the Proxy and Storage nodes in /etc/swift. With more proxy-node, which account.ring.gz, container.ring.gz, and object.ring.gz files copy? I've see that these files changed in the proxy ... but they remain the same on other nodes ... is it correct?

Revision history for this message
Chuck Thier (cthier) said :
#5

Rings should be administered on one node, and then distributed to every node (proxy and storage node). Every node will have the same rings.

Revision history for this message
Salvatore Piccolo (spiccolo) said :
#6

And so ... if I've millions of storage node, I've to copy the *ring.gz to all nodes?

Revision history for this message
Chuck Thier (cthier) said :
#7

Yes.

Though I use copy very loosely here. Some quick options off the top of my head are:

1. Write a script that will scp the rings to all of the nodes
2. Set up some cron jobs on the nodes that rsync the rings from somewhere
3. Set up a simple web server that serves the rings so that you can do a wget on the storage nodes to pull new rings.

etc. etc.

Revision history for this message
Salvatore Piccolo (spiccolo) said :
#8

Ok, I understand. I only hope in more doc for installation with multiple proxy in the bugs section.