Shared File Systems
The goal of the Shared File Systems program is to provide a set of services for management of shared file systems in a multitenant cloud environment, similar to how OpenStack provices for block-based storage management through the Block Storage program.
We aim to provide a vendor neutral management interface that allows for provisioning and attaching shared file systems such as NFS, CIFS, and more. To the extent possible we aim to mirror the architecture of Block Storage program, with support for a public REST API, multiple backends, and a scheduler that performs resource assignment decisions. When differences are unavoidable, we plan to design solutions that are compatible with the OpenStack ideals of modularity and scalability.
- A set of services (API server, scheduler, and share manager) that provide an infrastructure for self-sevice provisioning and managing shared file systems in a multi-tenant cloud
- A CLI-based client for users and administrators to interact with the API
- A Horizon GUI plugin
- A "generic" sorfware-only driver that runs on any hardware, allowing people to use the service without specialized equipment
- An example image (cirros-based) that implements part of the "generic" storage service, with documentation on how admins can create their own
- A set of drivers for commercial NAS storage servers
- API documentation, Administrator documentation, and Developer documentation
- Project code: https://github.com/stackforge/manila
- Python client: https://github.com/stackforge/python-manilaclient
The program grants Active Technical Contributor (ATC) status to anyone completing a commit to any program repository during the previous two release cycles. Core project team members may grant ATC to significant, non code-contributors for two cycles.
- Ben Swartzlander
The core teamː
- Yulia Portnova
- Valeriy Ponomaryov
- Xing Yang
- Alex Meade
- Rushil Chugh
- Clinton Knight
- Vitaly Kostenko
- Andrei Ostapenko
- Aleksandr Chirko
- Ramama Raja
- Christian Berendt
Why a new program?
We started a new program for two main reasons:
- Initially we tried to address the above needs by expanding the scope of the Block Storage program, but the Cinder core team didn't want the additional responsibility. This left us with no option other than to start a new program.
- While there is significantly overlap between Block Storage and Shared Filesystems, the differences are large enough to require a dedicated group of developers to solve the unique problems related to Shared Filesystems. Keeping the programs separate has been greatly advantageous as it allows each group to focus on different problems and ultimately get more done.