As with previous Field Day events I’ve participated in I always like to do a little research on the companies presenting so I don’t simply go in blind not knowing what they do. First up for this year is StorageOS – a company I’ve not heard of up until this very minute of writing! Now in terms of IT time StorageOS has been been around only for a brief second, so my ignorance is maybe a little justified – It was just in 2013 that four men (Chris Brandon, Alex Chircop, Simon Croome, and Frank Black), all from the financial services industry united their frustrations with the way the ‘all to legacy’ storage industry was intermingling with the ‘all the rage’ container industry and with that, StorageOS was born.
So what’s the big deal?
Containers Containers Containers – that’s the big deal! We know that containers is a big buzz word in the industry right now – we see it all over the place. As soon as the Docker project first hit the scene, interest began to spark up everywhere – and just recently we’ve seen the godfathers come into the space – with Microsoft partnering up with Docker to introduce supports for Windows 2016 container support and VMware doing much the same with their latest announcements around vSphere Integrated Containers. With all of this happening I’m sure we are about to see a rise in the number of containers being deployed – but with this will come new challenges, challenges which are indeed already present today…
When we think about a container we think of it as being stateless, or ethereal in nature – meaning if one instance goes down we can simply spin another one up. If we need to scale, we simply spin another one up. If we need to move a container from one spot to another we simply destroy one and create another. No dependencies, no worries about conflicting packages, just pure developer zen. This flexibility is a big part of the benefits of containers. But, taking this attitude and applying it enterprise applications, or pretty much most any application creates some problems. I think we all agree that most application require some sort of persistence – some sort of data that needs to be stored somewhere, be it a database or persistent storage – with containers being destroyed and instantiated all the time where does this persistent storage reside?
Where does this persistent storage reside? This is the question that StorageOS has the answer for! StorageOS in its basics aims to bring an enterprise-class persistent storage platform to our existing containers, but deliver it in a agile, automated container-like way! In fact, StorageOS runs itself as a container within a Linux based system and locates any storage available to it at the time, whether that be direct attached, network attached, or cloud attached. All of this storage gets added to a pool – obviously, support for scale up is there by simply adding more local/network storage to a node – or scale-out is fully supported by instantiating new StorageOS nodes. This storage is then made available to our container engines, be them Docker, VMware, AWS, Google Cloud, etc via plugins. From there, we simply specify our StorageOS Volume Driver flag during container run commands and we have ourselves some persistent data storage shared out to our containers.
As we can see above StorageOS provides us with a number of features that we would expect to see in a storage array as well – think of things such as High Availability, Failover, Encryption, Caching, and Deduplication – but due to its design it also brings to the table a number of things that other storage arrays simply don’t have! First up, let’s think about where it runs – if our containers are running within our four walls of our datacenter then hey, instantiate StorageOS storage in the same spot! Instantiating container instances in the cloud – well, why not instantiate your storage right next it as well. It’s data locality like this that provides the low-latency, high performing storage that we all need! It’s traditional persistent storage but with the flexibility and efficiency of containers!
I find what StorageOS is doing very interesting and can see a lot of other “use-cases” that can pop up due to their architectural design. Certainly migration of data to the cloud is one of them. This will be StorageOS’ first Tech Field Day presentation and I’m happy I’ll be a part of it and excited to learn more about their technology. They are up at 2PM on Tuesday, November 15 – so keep tabs on the official event page as well as my Field Day page here where I hope to have the live-stream up and running for folks!