Recommendations for Openstack
Due to Openstack’s modularity, recommendations would be given on a per-component basis. Overall, Openstack should be treated no different than any other virtualized environment.
Openstack Components/Projects
At a minimum, we require the following Openstack components to deploy Aerospike:
| Component | Purpose |
|---|---|
| Nova | Compute |
The following additional components are highly suggested to enhance or augment your Openstack deployment.
| Component | Purpose |
|---|---|
| Neutron | Networking/VPC |
| Glance | VM Imaging |
| Cinder | Block Storage |
| Keystone | Identity |
| Horizon | Dashboard |
| Heat | Resource Templating |
OS
We recommend using the latest Debian or Redhat based OSs for your base install.
For installation instructions, see our install page.
Network Setup
Private, self-service networks are recommended for intra-cluster networking.
In addition, due to the relatively high levels of traffic expected within a busy cluster, it is also recommended to utilize separate physical NICs and a separate network.
Storage
Cinder provides flexible block storage. We highly suggest utilizing SSDs for Cinder block stores.
** Cinder + Ceph **
Ceph is a distributed object store which can be used as the underlying block device that powers Cinder. Being distributed, each disk operation entails a subsequent network operation. This introduces latency.
As such, we do not recommend Ceph deployments with regular HDDs or high IO demands.
Data-in-memory configurations are a good compromise to provide increased read performance without hitting the storage subsystem.
Deployment and Configuration Management
Due to the modular nature of Openstack, there is not a universal deployment and configuration management tool within Openstack.
Until the Openstack ecosystem has a widely adopted module for configuration management, we recommend using an external third-party tool such as Ansible, Puppet, Chef, or Salt to manage your cluster configurations.