2021-01-13 12:47:54 +00:00
|
|
|
syntax = "proto3";
|
|
|
|
|
2021-01-13 13:46:39 +00:00
|
|
|
package control;
|
2021-01-13 12:47:54 +00:00
|
|
|
|
2021-01-15 06:23:21 +00:00
|
|
|
import "pkg/services/control/types.proto";
|
2021-01-13 12:47:54 +00:00
|
|
|
|
2021-01-13 13:46:39 +00:00
|
|
|
option go_package = "github.com/nspcc-dev/neofs-node/pkg/services/control";
|
2021-01-13 12:47:54 +00:00
|
|
|
|
2021-01-13 13:46:39 +00:00
|
|
|
// `ControlService` provides an interface for internal work with the storage node.
|
|
|
|
service ControlService {
|
2021-01-13 12:47:54 +00:00
|
|
|
// Performs health check of the storage node.
|
|
|
|
rpc HealthCheck (HealthCheckRequest) returns (HealthCheckResponse);
|
2021-01-14 16:06:49 +00:00
|
|
|
|
|
|
|
// Returns network map snapshot of the current NeoFS epoch.
|
|
|
|
rpc NetmapSnapshot (NetmapSnapshotRequest) returns (NetmapSnapshotResponse);
|
2021-01-15 11:51:15 +00:00
|
|
|
|
|
|
|
// Sets status of the storage node in NeoFS network map.
|
|
|
|
rpc SetNetmapStatus (SetNetmapStatusRequest) returns (SetNetmapStatusResponse);
|
2021-01-13 12:47:54 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
// Health check request.
|
|
|
|
message HealthCheckRequest {
|
|
|
|
// Health check request body.
|
|
|
|
message Body {
|
|
|
|
}
|
|
|
|
|
|
|
|
// Body of health check request message.
|
|
|
|
Body body = 1;
|
|
|
|
|
|
|
|
// Body signature.
|
|
|
|
Signature signature = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
// Health check request.
|
|
|
|
message HealthCheckResponse {
|
|
|
|
// Health check response body
|
|
|
|
message Body {
|
2021-01-15 09:42:31 +00:00
|
|
|
// Status of the storage node in NeoFS network map.
|
|
|
|
NetmapStatus netmap_status = 1;
|
2021-01-15 10:18:03 +00:00
|
|
|
|
|
|
|
// Health status of storage node application.
|
|
|
|
HealthStatus health_status = 2;
|
2021-01-13 12:47:54 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
// Body of health check response message.
|
|
|
|
Body body = 1;
|
|
|
|
|
|
|
|
// Body signature.
|
|
|
|
Signature signature = 2;
|
|
|
|
}
|
2021-01-14 16:06:49 +00:00
|
|
|
|
|
|
|
// Get netmap snapshot request.
|
|
|
|
message NetmapSnapshotRequest {
|
|
|
|
// Get netmap snapshot request body.
|
|
|
|
message Body {
|
|
|
|
}
|
|
|
|
|
|
|
|
// Body of get netmap snapshot request message.
|
|
|
|
Body body = 1;
|
|
|
|
|
|
|
|
// Body signature.
|
|
|
|
Signature signature = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
// Get netmap snapshot request.
|
|
|
|
message NetmapSnapshotResponse {
|
|
|
|
// Get netmap snapshot response body
|
|
|
|
message Body {
|
|
|
|
// Structure of the requested network map.
|
|
|
|
Netmap netmap = 1 [json_name = "netmap"];
|
|
|
|
}
|
|
|
|
|
|
|
|
// Body of get netmap snapshot response message.
|
|
|
|
Body body = 1;
|
|
|
|
|
|
|
|
// Body signature.
|
|
|
|
Signature signature = 2;
|
|
|
|
}
|
2021-01-15 11:51:15 +00:00
|
|
|
|
|
|
|
// Set netmap status request.
|
|
|
|
message SetNetmapStatusRequest {
|
|
|
|
// Set netmap status request body.
|
|
|
|
message Body {
|
|
|
|
// New storage node status in NeoFS network map.
|
|
|
|
NetmapStatus status = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
// Body of set netmap status request message.
|
|
|
|
Body body = 1;
|
|
|
|
|
|
|
|
// Body signature.
|
|
|
|
Signature signature = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
// Set netmap status response.
|
|
|
|
message SetNetmapStatusResponse {
|
|
|
|
// Set netmap status response body
|
|
|
|
message Body {
|
|
|
|
}
|
|
|
|
|
|
|
|
// Body of set netmap status response message.
|
|
|
|
Body body = 1;
|
|
|
|
|
|
|
|
// Body signature.
|
|
|
|
Signature signature = 2;
|
|
|
|
}
|