An basic implmentation of the Raft consensus algorithm
To run the server locally, set the port and at least 2 other peers:
cargo run -- -p 8001 --peer 127.0.0.1:8002 --peer 127.0.0.1:8003
Calling the API for testing can be done using grpcurl
:
grpcurl -plaintext -import-path ./proto -proto cluster_management.proto -d '{"entries": ["test"]}' '[::1]:8001' railyard.ClusterManagement/AppendEntries
Usage: railyard --port <PORT> --peer <PEER_ADDRESS>
Options:
-p, --port <PORT> Port used for management API
--peer <PEER_ADDRESS> The address of a peer node
-h, --help Print help
-V, --version Print version
This project is licensed under the MIT license.