garage/src/rpc/lib.rs
Max Audron 9d44127245
add support for kubernetes service discovery
This commit adds support to discover garage instances running in
kubernetes.

Once enabled by setting `kubernetes_namespace` and
`kubernetes_service_name` garage will create a Custom Resources
`garagenodes.deuxfleurs.fr` with nodes public key as the resource name.
and IP and Port information as spec in the namespace configured by
`kubernetes_namespace`.

For discovering nodes the resources are filtered with the optionally set
`kubernetes_service_name` which sets a label
`garage.deuxfleurs.fr/service` on the resources.

This allows to separate multiple garage deployments in a single
namespace.

the `kubernetes_skip_crd` variable allows to disable the creation of the
CRD by garage itself. The user must deploy this manually.
2022-03-12 13:05:52 +01:00

16 lines
221 B
Rust

//! Crate containing rpc related functions and types used in Garage
#[macro_use]
extern crate log;
mod consul;
mod kubernetes;
pub mod layout;
pub mod ring;
pub mod system;
pub mod rpc_helper;
pub use rpc_helper::*;