Tuesday 23 February 2016 17:45 : Anthony Doncaster
With such an array of options when it comes to building a cloud infrastructure, it can be hard to determine the best route to take. OpenStack is a relatively new kid on the block but this open source cloud operating system is gaining good ground – and it has every reason to do so. The OpenStack site itself is a great resource to understand its architecture and services. In this article we will focus on specific use cases to help determine whether OpenStack is right for you.
A set of technologies for infrastructure-as-a-service, it can manage your object storage and compute either combined or individually. Having been active in this sphere for quite some time, we’ve seen strong growth over the past 18 months in the number of organisations opting for dedicated deployments of our OpenStack private cloud.
In particular, the strongest take-up has been from software development companies and those offering software-as-a-service although some organisations run their corporate data centre applications on it as a production cloud too. There are a number of reasons for choosing OpenStack:
High level of scalability, supporting huge data volumes and numbers of users
Open source with a large active community; there’s no licence fee to pay
High degree of flexibility over the architecture and hypervisor, including cost benefits
Constantly growing feature-set which is frequently updated; it has a solid API so plenty of scope here
Strong automation capabilities to scale automatically and make deployments programmatically
Abstraction of compute resources to end users, such as development teams, so they can manage their own VMs from within a dedicated interface, including load balancing and firewalls
OpenStack is a strong fit in particular for those enterprises that want to run a dev ops infrastructure-as-a-service where the virtual machines (VMs) running the software are very disposable and scalable. Deploying and cloning VM Instances is straightforward via the self-service portal, or using the API for those with the technical know-how. Users can create virtual networks to isolate VM’s or groups of VMs behind a fully functional virtual firewall.
One of the key factors for companies looking to go down the OpenStack route is the perceived lack of support. However, we’ve been helping clients in this area for quite some time now by partnering with Mirantis, who are a key contributor to the OpenStack community, to offer production level support. By using Mirantis Openstack, this means our private clouds are fully supported environments with 24/7 support so clients can have that cutting edge technology knowing the support is there when they need it.
One of the benefits of Openstack from our point of view is the flexibility with which the storage and the compute resources can be designed. Rather than having to deploy servers with expensive storage area networks (SANs) and storage arrays we can use converged compute and storage servers. For smaller deployments this means you can aggregate storage across multiple servers, striping storage effectively with the compute resources. For larger deployments or for deployments with large object storage requirements the compute and storage roles can be separated amongst different server clusters. It is possible to tier compute resources, one group of hypervisors may have faster processors and more memory and another cluster may have slower processors and slower memory but a lower cost associated with it. Mirantis Openstack also enables the use of Ceph, a distributed file system that stripes data across multiple nodes for redundancy. Built in file system redundancy on commodity hardware allows us to keep the cost of storage to a minimum while retaining enterprise level SLAs.
We have seen some real life benefits of using Openstack for our customers. One example is a software-as-a-service client who runs OpenStack to create an image of their application and then deploys multiple instances of that application server programmatically using the API depending on the load of the system; the higher the load, the greater the number of instances. Another client has a lot of video data, (in the region of tens of terabytes) so the object storage is very useful to them because it’s very easy to upload and download images from it as a low cost shared storage resource.
OpenStack is clearly a powerful option for both software-as-a-service and infrastructure-as-a-service use cases. It gives complete control over who is deploying what resources, whilst allowing individuals and departments to set permissions on their own images, alongside the ability to create sandbox environments and isolated networks with dedicated firewalls per tenant. For many businesses, it’s proving the perfect fit for a multi-department or multi-tenant system.