With the OpenStack conference going on in San Francisco, we’re hearing about a number of very interesting announcements & developments around Swift especially the Essex release. There is a lot to discuss, but I’d like to focus on Zmanda, a cloud backup startup, that is tackling a very interesting problem – how does one select the right hardware for Swift.DISCLAIMER: The views expressed here are my own and don't necessarily represent my employer Emulex's positions, strategies or opinions.
Swift’s strength is that it is a scale-out modular system, but that also creates an interesting problem for users. How do you select hardware? Some questions that come up are:
· How many storage nodes? How to size them in terms of CPU:disk:memory:flash:I/O ratio? What types of disks – SAS, SATA? What RPM?
· How many proxy servers as a ratio of storage nodes? Same question on sizing. Software SSL, hardware SSL, no SSL, or external SSL appliance?
· Keep account & container servers separate or combined as part of the storage node? If separate how to size them?
· What switches should be used for connectivity amongst nodes? What kind of load balancer?
There are literally millions of permutations and as you can imagine the answer is “it depends”. It depends on the users’ cost, availability, security, and performance goals.
It is easy to imagine a calculator or a tool to figure this out. As it turns out, Zmanda has taken an excellent first step in this direction by introducing a methodology and initial results called “Swift Advisor” at http://www.zmanda.com/blogs/?p=567.