In this post, we give you a short preview of OpenStack. In the next post, we show how OpenStack fits in OVH cloud offer.
OpenStack, a framework to build your own private cloud
Openstack is an open source project initiated by NASA. OpenStack offers services to instantiate and manage a cloud infrastructure.
Components of a cloud infrastructure management service
- Standardized interfaces to hardware and middleware components
Suppose that, like many organizations still do, your organization manages its datacenter, built upon the well-known entities, servers, storage, network, hypervisors. And suppose that every node included in this infrastructure exposes a standardized interface, the openstack interface for instance. You may deploy a centralized service, the controller, that will connect to each node, configure and monitor it. - A central point to register every resource of your datacenter
The controller will register every resource of your datacenter in a central secured registry. - Orchestration scripts
The controller lets you manage and configure the various resources, network switches and routers, servers, storage node, in a coherent and synchronized way. It will provide you with an abstraction layer so that you won't deal with atomic entities but trigger actions at a larger scale, deploying network, server, storage and security in a coherent and orchestrated way to deliver your application.
Cloud management platform such as OpenStack get you to this level of abstraction and automation.
OpenStack parts
OpenStack includes the following parts:
- Standardized API that must be exposed by hardware and middleware that constitue the cloud infrastructure
- Software modules that substitute hardware nodes when deployed in a virtualized or software defined environment
- Software services that are the core of the framework
- Template configuration to deploy infrastructure
- Documentation, design guidelines, cloud architect guide, administrator guide
The complete list of openstack modules is accessibles here. The main modules are:
Module name | Role |
---|---|
Keystone | Authentication and authorization |
Swift | Object storage |
Cinder | Block storage |
Manila | File storage |
Nova | Compute |
Neutron | Network |
Glance | Image registry |
Heat | Orchestration |
Ceilometer, Aodh, and Gnocchi | Telemetry |
Horizon | Dashboard |
Hands on OpenStack / OpenStack in a (virtual) box
To get your feet wet with OpenStack, you should try to install one of the specific configuration for developers. We test two of them in a tutorial you may read here. These configurations are designed to deploy openstack on a single virtual machine. The resulting environment is useful to test, and for development.
Implementing a production grade environment requires a significant investment in hardware, engineering and integration.
OpenStack versus Kubernetes
We think that the comparison doesn't really make sense. OpenStack is more hardware (or VM) centric; Kubernetes is container centric. You may do without OpenStack and implements Kubernetes on bare metal but Kubernetes is a paradigm shift from traditional infrastructure based on Virtual Machine. You can't run a legacy infrastructure on Kubernetes without major changes in the way you manage compute and storage.
OpenStack adoption
OpenStack adoption is relatively slow.
We think that the following factors may explain this slow rate:
- OpenStack initial complexity
- Fast-growing public cloud (with private interfaces) offering
- Proprietary solutions simpler and less disruptive to deploy
In a nutshell, OpenStack deployment business case is:
- a big infrastructure (> 1000 VMs?) where investing in the technology makes sense and vendor lock-in is a real threat
- a multi-tenant environment where automation and isolation are paramount
Regional cloud providers such as OVH are good candidates to deploy this technology.
Openstack alternatives
Alternatives are available such as:
- a private cloud strategy laid on another opensource CMP solution like Apache Cloudstack
- a strategy that meet specific needs, based on either full-containerization or bare-metal provisioning
- proprietary solutions implemented by hardware, hyperconverged and hypverisor vendors:
What's the point with OVH?
OVH deploys openstack as its public cloud management platform. If you know how to work with openstack, you know how to switch your cloud to OVH public cloud smoothly. We show you the very first steps to use OpenStack on OVH in the next post.