Why
We saw in the recent spike #1591 that Raft (via etcd) provides benefits over our present approach: it allows for more instability in the client connections, and more transparency in what is happening.
We would like a resiliant and reliable networking layer, and this seems like a viable approach.
What
How
Why
We saw in the recent spike #1591 that Raft (via etcd) provides benefits over our present approach: it allows for more instability in the client connections, and more transparency in what is happening.
We would like a resiliant and reliable networking layer, and this seems like a viable approach.
What
etcdcluster binaryetcdctlbinary to send client requests; use a Haskell (client) library insteadHow
raft-networkbranchPeerConnectedDisconnectedVersionMismatchversionkv and transactionsetcdctlclient with thegrapesygrpc client, see Create grapesy-etcd library #1843Alternative: useetcdHTTP APIHydra.Node.Network,Hydra.Network.OuroborosandHydra.Network.ReliabilitymodulesNodeIdfromConnected)snappy)Etcdcomponent works (and maps things toetcddomain)