ViPR needs an API to manage the underlying array for example we are using SMI-S for VMAX and VNX. Cinder provides ViPR with a common language to talk to any array that has a qualified Cinder driver. Note that ViPR does not need the entire OpenStack deployed. It just needs the Cinder software with Cinder Drivers and Keystone service. In fact we have packaged OpenStack installation as a VM so customers do not have to download elsewhere.  The model remains the same i.e., ViPR abstractions such as Virtual Pools and Virtual Array. Under ViPR, just like it uses SMI-S provider, ViPR will talk to Cinder provider to do storage functions on 3PAR for example.  Over time based on customer feedback we will add native support for certain arrays but Cinder was a good way for us quickly increase ViPR’s support matrix
Is the only way to have a non-natively supported arrays working is by having an OpenStack deployment with Cinder driver on top of it and then adding the Cinder driver as a physical asset in ViPR? And if so, does this mean I need to have an OpenStack base installation (no Swift or other unnecessary components) but only have Cinder component installed with the desired array’s plugin?
API for non-natively supported arrays in ViPR