FoundationDB / fdb-kubernetes-operator

A kubernetes operator for FoundationDB
Apache License 2.0
240 stars 83 forks source link

Add support for using the management API #1170

Open johscheuer opened 2 years ago

johscheuer commented 2 years ago

What would you like to be added/changed?

We should look into adopting the management and configuration API from FDB https://github.com/apple/foundationdb/blob/main/documentation/sphinx/source/special-keys.rst#management-module the API was added in 7.0 and should be support for all newer versions. The benefit of adopting those APIs is that we don't need to copy binaries like fdbcli into our container (wee probably still need the binary for backups if the operator should manage backups). In addition to that all requests that are made will be in the scope of the operator process from a memory perspective and we would not require to fork another process that should bring more robustness when he operator runs at a memory limit. The API usage should be disabled by default and can be activated by using a setting when everything works like expected we can change the default to true in a later version of the operator.

The following command can be replaced:

We probably can also remove some additional methods that we build around fdbcli once we remove the fdbcli support. This is intended as a tracking issue and I will create later for each change an issue.

johscheuer commented 2 years ago

We should also target https://github.com/FoundationDB/fdb-kubernetes-operator/issues/1002 as part of the implementation.