Skip to content

gRPC API

Package clusdr.v1alpha1. Sources: proto/clusdr/v1alpha1/. Generated Go stubs: module github.com/odurgut/clusdr/api.

Applications should use the SDKs. This section is the wire contract.

All application RPCs go to the Runtime TCP server. Node-to-node uses the same server. There is no HTTP/JSON API.

Services

ServiceAudiencePage
HealthServiceProbes, SDK ready checkhealth
MembershipServiceApps, CLImembership
WatchServiceApps, CLIwatch
EventServiceApps, CLI, peer relayevents
LockServiceAppslocks
LeaseServiceApps, presenceleases
ControlServiceCLI → local daemoncontrol
JoinServiceDaemon → daemonjoin
HeartbeatServiceDaemon → daemonheartbeat

grpcurl (TLS off)

bash
CLUSDR_TLS=disabled clusdr start --bootstrap   # dev only
grpcurl -plaintext 127.0.0.1:7947 list
grpcurl -plaintext 127.0.0.1:7947 clusdr.v1alpha1.MembershipService/ListMembers

With TLS, use the PEMs in data.dir. Server identity is the node id (SAN), not the dial hostname.

Documentation is sourced from the clusdr/docs tree.