Kinetic drives are the first of their kind: key/value drives which communicate via Ethernet. The top question we’re getting asked is: What do they look like? What will the physical hardware look like with Seagate Kinetic drives?
First, let’s dispel some myths. Physically, the drives look just like any SAS or SATA drives available today. No, they do not have a RJ45 connector in the back. What you won’t see in the data center is a monster bundle of Cat 5/6 cables running up to a top of the rack switch!
Early in our development we had a PCB which plugged directly into the 3.5in drive. The traces on the PCB attached a surface mounted RJ45 jack. We just plugged the drives into the wall where cabling led back to one of the switches in the office.
After rummaging around in the lab for a power supply we were in business to begin development with a set of prototype drives. As with most revolutions, it started from humble beginnings. The pile of drives was labeled “Clay’s Lab (of awesome)” as he was leading the development effort on our end to integrate OpenStack Swift and flush-out the needed APIs with the Seagate Kinetic team.
No Really, Ethernet to a Hard Drive
Naturally while our initial prototypes were being directly plugged into a switch, that is not the typical way that the devices will be consumed. What is interesting here is that they can be plugged directly into a switch.
- Two 1GB Ethernet ports per drive
- Each drive has an independent IP address
- No bonding
- Active / Active (both interfaces can be simultaneously used)
- DHCP by default /configurable static IP assignment
- IPV6 and IPV4 compatible
So the question remains, what do these things plug into? A special connector? Nope! It’s the same pin-out as an existing SAS connector. The same 5v/12v pins that were formerly SAS are now dual Ethernet.
This means that they can be used in all kinds of configurations. At SwiftStack we are intending to use them at large-scale in a data center. However, it’s equally valid to be able to supply PoE (Power over Ethernet) to individual drives for certain applications.
Drives in a Box
This past week Jim Hugues came into the office and dropped-in with a developer box that he called the Developer Four Pack. This little unit is basically a 4-drive cluster. It is identical to what a larger version would hold, with individual power switches for each drive and an integrated low-cost switch. This is a great early demonstration of how these systems will ultimately be configured in a physical chassis.
Future Hardware Platforms
In the future these will be connected with the same drive trays that exist today, They’ll just have Ethernet connections, which are traces of copper, that go to an Ethernet switch rather than a SASswitch. The technology is “backplane ethernet” using the standard socket to connect to the drives.
How the hardware platforms will be built is likely with the switching integrated directly into the server chassis. Each drive has two Ethernet ports which will go to two different switches inside a server chassis. Those switches will provide two 10GbE ports.
Seagate has already announced many Kinetic ecosystem participants who will be providing products for this platform.
Where Does the Storage Application Live?
The storage application sits outside of the physical storage hardware. In our case with SwiftStack, we use a separate pool of compute nodes to provide OpenStack Swift services to API (HTTP) clients. The advantage here is that multiple storage boxes can be “multi-homed” if you will, to multiple compute nodes across separate switching fabrics.
The benefits include:
The entire system can be even more tolerant of failure. By separating the compute resources from the storage resources, we create much smaller failure domains and distribute the storage responsibility.
Better compute utilization. By creating a pool of compute nodes who have responsibility we can more accurately scale the capacity needed to manage the storage resources.
More to Come
Do take a look at the webinar we did with one of the Kinetic Architects at Seagate and our previous post on the Launch of Seagate Kinetic with OpenStack Swift as well as the code SwiftStack developed to run OpenStack Swift with Kinetic.
In future posts we’ll outline how we use the Kinetic API to build a storage application, specifically with OpenStack Swift, and how the devices can be managed. We are looking forward to this platform roll-out in the months ahead.