h1. Why
The managed services broker translates user requests for slices or binding to existing slices into sharedservice resources that the shared service operators will be able to perform actions upon. This is required to allow the user to interact with operators in a namespace which they have no access to but that the broker does have access to.
h1. What
The managed services broker will be responsible for: - exposing sliced plans to the catalog - Allowing the provision of slice plans - Allowing deprovision of slice plans - Allow binding of slices - Allow deleting of slice bindings.
h1. How h2. Exposing Slice Plans to the Catalog When the catalog makes a request to the catalog end-point of this broker. When this end-point is called, the broker will scan all sharedservices and for any that are status ready, it will look for a matching SharedServicePlan resource and parse that resource into a set of service classes to return to the service catalog.
h2. Allowing Provision of Slice Plans When a provision of a shared service slice is requested, the broker will create a SharedServiceSlice resource for the requested sharedservice type.
It will also enable the catalog to retrieve the last_operation for the provision of a slice.
h2. Allow Deprovision of Slice Plans When a user requests the deprovision of a SharedServiceSlice, the broker will delete the SharedServiceSlice object, and expose a last_operation to the catalog for the progress of the deletion of the slice.
h2. Allow Binding of Slices When the user requests a binding to the running Slice, the binding params in the service class will show input for the required user parameters (e.g. binding type for keycloak).
The broker will then take these parameters and convert them into a SharedServiceAction which contains the servicename and the user parameters.
This can be implemented as sync or async - async is preferred and if chosen this end-point needs to also handle the fact that it will be polled for progress reports on an in progress binding.
h2. Allow Unbinding of Slices When the user deletes a binding, the broker will delete the SharedServiceAction resource.
This can be implemented as sync or async - async is preferred and if chosen this end-point needs to also handle the fact that it will be polled for progress reports on an in progress unbinding. |
|