ZeroStack – A Better Way to do OpenStack

ZeroStack – A Better Way to do OpenStack

Chris EvansCloud, DevOps

My first opportunity to see OpenStack in action was a 2011 event at Vinopolis in London (sadly Vinopolis closes at the end of this year, so that experience won’t be repeated).  Throughout the presentations I was surprised to see a focus on how fast code had been written (statements like, “we did that in 2 days”, “we did that overnight”) when really writing any software to the level expected of a platform like OpenStack should be about working with care and with the requisite amount of time and effort.  That being said, OpenStack was only a year old, so perhaps what we were seeing was the youthful exuberance of a new platform, originally created by NASA and Rackspace Inc, but now supported by an enormous range of contributors, including HPE, Hitachi Data Systems, Cisco, NetApp and EMC.

Today the main issue aimed at OpenStack is that of complexity.  The most successful deployments we hear about are implemented by large corporations like eBay, AT&T and PayPal.  These companies have the resources to deploy armies of programmers and talented sysadmins to understand, manage and curate the code, which seems to be the biggest consumer of effort for the project.  At the same time, OpenStack has diversified sideways into lots of sub-projects, many of which are justified but spread programming resources thinner and of course introduce the already mentioned complexity in ensuring all of the moving parts operate together.

So, as someone who is negative on the potential success (not the idea) of OpenStack, I was intrigued to see a presentation on the agenda at Virtualisation Field Day 6 (VFD6) from ZeroStack.  ZeroStack Inc is a startup company providing on-premises cloud appliances, based on the OpenStack platform, with one unique difference; the management and monitoring parts of the infrastructure are delivered as Software-as-a-Service (SaaS) by ZeroStack themselves.

The question that initially comes to mind is why split cloud into two components?  To understand the answer, we have to look at where customers are coming from and what they hope to achieve by implementing a cloud-based architecture in the first place.

With Private Cloud the end user has control over their own resources, providing a more predicable level of performance (plus they can choose specific hardware configurations) and control over the data for compliance and governance purposes.  The tradeoff is in the operational costs and effort already discussed; there’s a need for specialists to manage the operational complexity, even if using expensive software like that from VMware.

With Public Cloud, most of the administrative tasks of managing the infrastructure are removed.  Resources are consumed on demand, billed on usage, but the customer has little or no control about how that architecture is developed or where their applications sit with other customers, making compliance and security two of the biggest issues.

ZeroStack aims to separate out the operational aspects of managing cloud (user workflows, data collection & analytics, health monitoring and multi-site management) from the physical hardware; one runs in the public cloud as SaaS, the other sits in the customer’s data centre.  The result is a solution that can be deployed and operated within minutes of racking and powering on the hardware.  This means customers gain all the on-premises benefits (data ownership, single tenancy, better performance), while removing many of the common OpenStack issues (complexity, operational cost).  How are these benefits achieved?

  • Appliance-based model – hardware scales based on fixed configuration appliances; if more capacity is needed, add more appliances.  A new appliance can be powered up and integrated into a configuration within minutes.
  • Clustered Storage – storage is built in and managed across all of the nodes in a clustered configuration.
  • Separation of functionality – some functions, such as maintaining cluster health are managed locally with processes running on each appliance to ensure the standard OpenStack tasks (like spawning VMs and storage) operate correctly.  The remaining functionality (analytics and monitoring) is pushed into the cloud (in this case ZeroStack’s own private cloud), including the management GUI.  Separating functionality like this makes it easier to upgrade components, especially those in the cloud.  Analytics can also be based on the experiences of many customers, not just one.
  • Ease of Use – the entire platform can be driven through an intuitive GUI or API.  The initial configuration of a cluster of ZeroStack servers requires some input to design the configuration schema (sites, business units, projects), policies and roles for users, but once that is done, you’re up and running.

At VFD6, ZeroStack demonstrated how easily their solution could be deployed.  This included taking existing hardware and building a cluster during the presentation itself.  Check out the links at the end of this post to watch the five videos from the presentation.

The Architect’s View™

There’s no denying that the future of IT will be virtual and software-based.  Hardware will merely be a conduit for delivering virtual servers and eventually containers.  However, to date customers have been forced down the VMware route or spend a lot of money investing an OpenStack strategy that has no guarantee of success.  ZeroStack brings to the table the benefits of simplified management and operations with on-premises hardware, in a similar fashion to HC3 from Scale Computing.  There are still some gaps in the ZeroStack design, but these are easily resolvable and to be fair, the company has produced a much more consumable solution suitable for entry-level small businesses (and larger organisations) than OpenStack is ever likely to do.  It may seem a misstep to be looking at deploying hardware appliances in a software world (after all, Nebula couldn’t make it work), however many companies like the appliance approach and are more comfortable with it than deploying software-only themselves.

Going back a moment to the comparison with Scale Computing, the difference between Scale and ZeroStack is in the approach to the object of consumption – the VM and/or container.  Scale treats VMs as curated objects, with a distributed redundant file system; if a node dies, the VMs can come up elsewhere.  ZeroStack uses the OpenStack model of assuming VMs are expendable and by default offers non-resilient storage (although clouds can be defined as mirrored/replicated at installation time).  This is where an operational difference still lies between end users looking to move away from VMware to most cost effective platforms; ZeroStack (or more accurately OpenStack) requires a change in the application development mindset (although applications could simply be moved across from a VMware environment).  That said, the process of development is changing and ZeroStack offers a great solution for developers and production environments.  The company is definitely one to watch.

Additional Reading

Related Links

Comments are always welcome; please read our Comments Policy first.  If you have any related links of interest, please feel free to add them as a comment for consideration.  

Note: this post has been amended slightly following feedback from ZeroStack.

Copyright (c) 2007-2021 – Brookend Ltd, first published on https://www.architecting.it/blog, do not reproduce without permission.  Images from ZeroStack presentation at VFD6. Post #6e8a.

Disclaimers:  I was invited to attend VFD6 as a guest of GestaltIT and the Tech Field Day crew.  The company covered my flights, accommodation and meals, however I am not compensated for my time or obliged to blog (good or bad) on any of the event presenters.  The contents of this and other posts are not vetted or influenced by the presenting companies.  Scale Computing have provided a complimentary evaluation cluster for my use; this comes with no requirement to blog or write about the company.