The winery backend (T3533) can be used as a library from the objstorage and storage servers, which is helpful to reduce latency and increase bandwidth. It however has drawbacks such as:
- Increasing the attack surface
- Requiring the machines running obstorage / storage have elevated access to the postgresql server and the Ceph cluster
- Inability to separate read workers from write workers and control how many of them there are, which may be necessary for I/O throttling
To address these problems, the winery backend could be run on a standalone server exposing an API identical to the objstorage server (that would be the winery server). The objstorage server and the storage servers could then be configured to use the RemoteObjStorage backend and delegate requests to the winery server. It would provide the required isolation and configuration flexibility.