seaweed.proto 885 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. syntax = "proto3";
  2. package master_pb;
  3. //////////////////////////////////////////////////
  4. service Seaweed {
  5. rpc SendHeartbeat(stream Heartbeat) returns (stream HeartbeatResponse) {}
  6. }
  7. //////////////////////////////////////////////////
  8. message Heartbeat {
  9. string ip = 1;
  10. uint32 port = 2;
  11. string public_url = 3;
  12. uint32 max_volume_count = 4;
  13. uint64 max_file_key = 5;
  14. string data_center = 6;
  15. string rack = 7;
  16. uint32 admin_port = 8;
  17. repeated VolumeInformationMessage volumes = 9;
  18. }
  19. message HeartbeatResponse {
  20. uint64 volumeSizeLimit = 1;
  21. string secretKey = 2;
  22. string leader = 3;
  23. }
  24. message VolumeInformationMessage {
  25. uint32 id = 1;
  26. uint64 size = 2;
  27. string collection = 3;
  28. uint64 file_count = 4;
  29. uint64 delete_count = 5;
  30. uint64 deleted_byte_count = 6;
  31. bool read_only = 7;
  32. uint32 replica_placement = 8;
  33. uint32 version = 9;
  34. uint32 ttl = 10;
  35. }