Hi Paul,

I am sorry for that I'm not an expert on Cinder, I‘ll try to tell you what I think. If I was wrong, please correct me. From my perspective, Cinder cares more about the capacity of the pool whose pool capabilities reporting interface is fixed, whereas, in addition to the capacity, Cyborg also cares about the fine-grained accelerator capabilities (e.g. iops, queue, etc.). These capabilities, reported  from the Cyborg, can be dynamic configured and handled through the OpenSDS’ profile. For this reason, it provides a more flexible and simple configuration which can be called conveniently.

Thx,
Helloway

On 06/13/2018 22:46Luse, Paul E<paul.e.luse@intel.com> wrote:

Hi Helloway,

 

That’s a great start but I still have the same open questions below, maybe you can try and address those directly? Also, below is the link for adding SPDK based NVMeOF as a Cinder plug-in.  In addition to the question below can you please explain for everyone how you see the approach of using Cyborg and OpenSDS compares with the seemingly simpler approach of providing a Cinder plug-in?

 

https://review.openstack.org/#/c/564229/

 

Thanks!!

Paul

 

 

From: SPDK [mailto:spdk-bounces@lists.01.org] On Behalf Of helloway
Sent: Tuesday, June 12, 2018 5:22 PM
To: Storage Performance Development Kit <spdk@lists.01.org>
Cc: Storage Performance Development Kit <spdk@lists.01.org>
Subject: Re: [SPDK] Integrate OpenStack/Cyborg into SPDK Architecture

 

Hi Paul,

Thank you for your response, I have submitted a trello [0] titled  “Integrate OpenStack/Cyborg into SPDK Architecture”. I am trying to answer your questions from this trello, do I make sense? I really hope to receive your feedback.

 

 

Thx,

Helloway

On 06/12/2018 08:16Luse, Paul E<paul.e.luse@intel.com> wrote

Hi Helloway,

 

I was actually just wondering what had happened with this.  Looking at the OpenStack patch it looks like it’s close to landing. Somewhere out there we have a Cinder driver that’s also getting fairly close I believe so for sure integration with OpenStack is interesting to many in the community.

 

Would you be able to summarize more specifically how your patch would work once it lands? I of course see your high level description below that some questions that I have, I’m assuming others as well, include:

 

- what else is required to be pushed into OpenStack for this to work

- is anything required in the SPDK repo for this to work

- how will the necessary SPDK components be associated with the VM in question and subsequently configured

 

Thanks for continuing to work on this!

 

-Paul

 

From: SPDK [mailto:spdk-bounces@lists.01.org] On Behalf Of helloway
Sent: Monday, June 11, 2018 1:35 AM
To: Storage Performance Development Kit <spdk@lists.01.org>
Subject: [SPDK] Integrate OpenStack/Cyborg into SPDK Architecture

 

Hi Jim and all,

 

Do you know OpenStack/Cyborg? It is OpenStack acceleration service which provides a management framework for accelerator devices (e.g. FPGA, GPU, NVMe SSD). There is a strong demand for OpenStack to support hardware accelerated devices in a dynamic model(mentioned in OpenStack Summit Vancouver 2018 [0]). 

 

For this reason, we can use Cyborg to interactive with nvmf_tgt to realize the management of the user space accelerator NVMe SSD device, which can badly promote the efficiency. It is worth mentioning that the Cyborg_SPDK_Driver I summitted has been merged into the OpenStack version Q [1]. The driver can report the detailed information of the device to the Cyborg agent. When user requests a vm with a user space NVMe SSD, Cyborg agent will update the Nova/Placement inventory on available NVMe devices. This is a complete process to describe the connection of Cyborg and SPDK.

 

I wonder whether you guys are interested in integrating OpenStack/Cyborg into SPDK architecture? Do I make sense? Please let me know what your thoughts.

 

 

 

Thx,

Helloway