Hi all,

I wrote this email to introduce Fuxi [1], a Kuryr sub-project for providing 
container persistency by leveraging existing OpenStack infrastructure (i.e. 
Cinder, Manila, etc.). As a brief introduction, Fuxi is for bridging container 
storage models to existing OpenStack storage abstractions (As you might know, 
Kuryr is for bridging container networking models to OpenStack networking 
abstractions. You could consider Fuxi is the storage equivalent). At current 
stage, the Fuxi team wanted to get more inputs from the broader community to 
shape its roadmap. If you have any use cases about container persistency on 
OpenStack, we would love to hear. You are welcome to write down your inputs to 
the etherpad below or reply to this thread.

https://etherpad.openstack.org/p/container-storage-openstack

tldr;
The Fuxi team was found at 2016-03-04, and joined OpenStack as a Kuryr 
sub-project at 2016-08-02. Thanks to the hard work of our team members, we 
implemented a basic Docker volume plugin that interfaces with Cinder. In the 
review queue, there is a patch that adds support for Manila as Cinder 
alternative. Generally speaking, how Fuxi works is to implement a remote Docker 
volume plugin API. As a result, once the Docker daemon wanted to 
create/mount/remove a data volume, it will invoke the API of the Fuxi-provided 
plugin. The plugin will receive the request from Docker daemon and translate it 
to a set of API calls to Cinder (or others). Fuxi has two important concepts: 
volume provider and volume connector. A volume provider represents a backend 
service who provides the volumes. Currently, Cinder is the only supported 
volume provider. Volume connector is the framework to connect to the created 
volume. There are two implementation of volume connector: os-brick connector 
and OpenStack connector. The os-brick connector leverages the os-brick library 
to connect apparently. The OpenStack connector leverages the standard APIs of 
OpenStack services (i.e. Cinder, Nova, etc.) to attach volumes to container 
hosts.

At current stage, the Fuxi team is committed to enhance the existing 
implementations. At the mean time, we would like to collect more feedback from 
community to decide the roadmap. In particular, there are several ideas that 
have been brainstormed by different people:
* Implement an OpenStack volume plugin for Kubernetes (it seems k8s already 
talked to Cinder so we need to revisit if this is a good idea).
* Implement an OpenStack volume plugin for Mesos.
* Implement volume plugin for other container runtimes (i.e. rkt, oci 
containers, etc.).
* Support external volume providers (i.e. AWS EBS).

We would like to hear your feedback to determinate if the above ideas fits into 
the project roadmap. In addition, you are more than welcome to contribute more 
ideas, use cases, or comments. Last but not least, the Fuxi team is looking for 
more contributors. You are welcome to join the team if you find this project 
exciting. There will be a lot of items that need an owner.

[1] https://wiki.openstack.org/wiki/Fuxi

Best regards,
Hongbin
__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

Reply via email to