Quota increase request/approval workflow
In an OpenStack deployment, it is common that a user needs a larger resource quota. This requires intervention of a cloud administrator. Exosphere could support the request and approval workflow:
- User clicks a button to request an increased quota for a given project/allocation, perhaps completes a form specifying additional resources that are needed and why.
- Idea: if user tries to launch an instance size/quantity that is too large for current quota, the app pre-populates the quota request form with the resources that would be required to fulfill the user's request.
- Perhaps a notification is sent (or a webhook is fired to Slack, or something) to an administrator, alerting them of the new request
- Exosphere exposes an "administrator view" to OpenStack users with
admin
role in Keystone (or equivalent). An administrator can log into Exosphere and review pending requests for an increased quota. These requests can be approved (in which case the quota is increased), or denied, perhaps with a reason specified in either case. - Perhaps there is some record of whether the request was approved or denied, and why.
- Perhaps the user is notified of the request approval/denial, in the app and/or via email.
Devil in these details:
- Where to store the "backend" for this? It would be awesome to use one of OpenStack's metadata services. Failing that, custom backend, SQL/NoSQL or something like Firebase? Distributed peer-to-peer backend between Exosphere instances (@julianpistorius to elaborate)?
- Project-user quotas. Does anyone use them? CyVerse did but only with a 1:1 project-user relationship.