https://blueprints.launchpad.net/cinder/+spec/non-eventlet-wsgi-app.
Cinder API uses eventelt as a webserver and WSGI application managing. Eventlet provides own WSGI application to provide web server functionality.
Provide WSGI application based on used web-framework instead of eventlet. Leave eventlet-based WSGI application as a default option and make it configurable.
Leave as is and use eventlet for REST API web serving. Use something like haproxy for API requests load balancing and some watchdog to restart Cinder API service after shutdown.
None.
None.
None
None
None
Potential performance impact could be present if we will have a lot of requests to Cinder API. Performance impact will be tested with Rally.
Deployers should configure Apache/Nginx/etc and WSGI module to handle requests to Cinder API. By default, Cinder API will use eventlet and no deployer impact will be.
No new configuration options for Cinder will be introduced.
New deployment mode should be supported by Chef cookbooks and Puppet manifests.
None
None
Functional tests for new deployment mode will be implemented. We need to test this feature on every commit on infra with CI.
Administrators Guide will be updated.
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.