mirror of
https://github.com/TeaOSLab/EdgeCommon.git
synced 2025-11-04 05:00:24 +08:00
379 lines
8.8 KiB
Protocol Buffer
379 lines
8.8 KiB
Protocol Buffer
syntax = "proto3";
|
||
option go_package = "./pb";
|
||
|
||
package pb;
|
||
|
||
import "model_node.proto";
|
||
import "model_node_login.proto";
|
||
import "model_node_install_status.proto";
|
||
import "model_dns_route.proto";
|
||
import "rpc_messages.proto";
|
||
|
||
service NodeService {
|
||
// 创建节点
|
||
rpc createNode (CreateNodeRequest) returns (CreateNodeResponse);
|
||
|
||
// 注册集群节点
|
||
rpc registerClusterNode (RegisterClusterNodeRequest) returns (RegisterClusterNodeResponse);
|
||
|
||
// 节点数量
|
||
rpc countAllEnabledNodes (CountAllEnabledNodesRequest) returns (RPCCountResponse);
|
||
|
||
// 计算匹配的节点数量
|
||
rpc countAllEnabledNodesMatch (CountAllEnabledNodesMatchRequest) returns (RPCCountResponse);
|
||
|
||
// 列出单页节点
|
||
rpc listEnabledNodesMatch (ListEnabledNodesMatchRequest) returns (ListEnabledNodesMatchResponse);
|
||
|
||
// 根据集群查找所有节点
|
||
rpc findAllEnabledNodesWithClusterId (FindAllEnabledNodesWithClusterIdRequest) returns (FindAllEnabledNodesWithClusterIdResponse);
|
||
|
||
// 删除节点
|
||
rpc deleteNode (DeleteNodeRequest) returns (RPCSuccess);
|
||
|
||
// 修改节点
|
||
rpc updateNode (UpdateNodeRequest) returns (RPCSuccess);
|
||
|
||
// 查看单个节点
|
||
rpc findEnabledNode (FindEnabledNodeRequest) returns (FindEnabledNodeResponse);
|
||
|
||
// 获取当前节点配置
|
||
rpc findCurrentNodeConfig (FindCurrentNodeConfigRequest) returns (FindCurrentNodeConfigResponse);
|
||
|
||
// 节点stream
|
||
rpc nodeStream (stream NodeStreamMessage) returns (stream NodeStreamMessage);
|
||
|
||
// 向节点发送命令
|
||
rpc sendCommandToNode (NodeStreamMessage) returns (NodeStreamMessage);
|
||
|
||
// 更新节点状态
|
||
rpc updateNodeStatus (UpdateNodeStatusRequest) returns (RPCSuccess);
|
||
|
||
// 同步集群中的节点版本
|
||
rpc syncNodesVersionWithCluster (SyncNodesVersionWithClusterRequest) returns (SyncNodesVersionWithClusterResponse);
|
||
|
||
// 修改节点安装状态
|
||
rpc updateNodeIsInstalled (UpdateNodeIsInstalledRequest) returns (RPCSuccess);
|
||
|
||
// 安装节点
|
||
rpc installNode (InstallNodeRequest) returns (InstallNodeResponse);
|
||
|
||
// 升级节点
|
||
rpc upgradeNode (UpgradeNodeRequest) returns (UpgradeNodeResponse);
|
||
|
||
// 启动节点
|
||
rpc startNode (StartNodeRequest) returns (StartNodeResponse);
|
||
|
||
// 停止节点
|
||
rpc stopNode (StopNodeRequest) returns (StopNodeResponse);
|
||
|
||
// 更改节点连接的API节点信息
|
||
rpc updateNodeConnectedAPINodes (UpdateNodeConnectedAPINodesRequest) returns (RPCSuccess);
|
||
|
||
// 计算使用某个认证的节点数量
|
||
rpc countAllEnabledNodesWithGrantId (CountAllEnabledNodesWithGrantIdRequest) returns (RPCCountResponse);
|
||
|
||
// 查找使用某个认证的所有节点
|
||
rpc findAllEnabledNodesWithGrantId (FindAllEnabledNodesWithGrantIdRequest) returns (FindAllEnabledNodesWithGrantIdResponse);
|
||
|
||
// 列出所有未安装的节点
|
||
rpc findAllNotInstalledNodesWithClusterId (FindAllNotInstalledNodesWithClusterIdRequest) returns (FindAllNotInstalledNodesWithClusterIdResponse);
|
||
|
||
// 计算需要升级的节点数量
|
||
rpc countAllUpgradeNodesWithClusterId (CountAllUpgradeNodesWithClusterIdRequest) returns (RPCCountResponse);
|
||
|
||
// 列出所有需要升级的节点
|
||
rpc findAllUpgradeNodesWithClusterId (FindAllUpgradeNodesWithClusterIdRequest) returns (FindAllUpgradeNodesWithClusterIdResponse);
|
||
|
||
// 读取节点安装状态
|
||
rpc findNodeInstallStatus (FindNodeInstallStatusRequest) returns (FindNodeInstallStatusResponse);
|
||
|
||
// 修改节点登录信息
|
||
rpc updateNodeLogin (UpdateNodeLoginRequest) returns (RPCSuccess);
|
||
|
||
// 计算某个节点分组内的节点数量
|
||
rpc countAllEnabledNodesWithGroupId (CountAllEnabledNodesWithGroupIdRequest) returns (RPCCountResponse);
|
||
|
||
// 取得某个集群下的所有节点DNS信息
|
||
rpc findAllEnabledNodesDNSWithClusterId (FindAllEnabledNodesDNSWithClusterIdRequest) returns (FindAllEnabledNodesDNSWithClusterIdResponse);
|
||
|
||
// 查找单个节点的域名解析信息
|
||
rpc findEnabledNodeDNS (FindEnabledNodeDNSRequest) returns (FindEnabledNodeDNSResponse);
|
||
|
||
// 修改节点的DNS解析信息
|
||
rpc updateNodeDNS (UpdateNodeDNSRequest) returns (RPCSuccess);
|
||
}
|
||
|
||
// 创建节点
|
||
message CreateNodeRequest {
|
||
string name = 1;
|
||
int64 clusterId = 2;
|
||
NodeLogin Login = 3;
|
||
int64 groupId = 4;
|
||
int64 dnsDomainId = 5;
|
||
repeated string dnsRoutes = 6;
|
||
}
|
||
|
||
message CreateNodeResponse {
|
||
int64 nodeId = 1;
|
||
}
|
||
|
||
// 注册集群节点
|
||
message RegisterClusterNodeRequest {
|
||
string name = 1;
|
||
}
|
||
|
||
message RegisterClusterNodeResponse {
|
||
string uniqueId = 1;
|
||
string secret = 2;
|
||
repeated string endpoints = 3;
|
||
}
|
||
|
||
// 节点数量
|
||
message CountAllEnabledNodesRequest {
|
||
|
||
}
|
||
|
||
// 列出单页节点
|
||
message ListEnabledNodesMatchRequest {
|
||
int64 offset = 1;
|
||
int64 size = 2;
|
||
int64 clusterId = 3;
|
||
int32 installState = 4;
|
||
int32 activeState = 5;
|
||
string keyword = 6;
|
||
int64 groupId = 7;
|
||
}
|
||
|
||
message ListEnabledNodesMatchResponse {
|
||
repeated Node nodes = 1;
|
||
}
|
||
|
||
// 根据集群查找所有节点
|
||
message FindAllEnabledNodesWithClusterIdRequest {
|
||
int64 clusterId = 1;
|
||
}
|
||
|
||
message FindAllEnabledNodesWithClusterIdResponse {
|
||
repeated Node nodes = 1;
|
||
}
|
||
|
||
// 删除节点
|
||
message DeleteNodeRequest {
|
||
int64 nodeId = 1;
|
||
}
|
||
|
||
// 修改节点
|
||
message UpdateNodeRequest {
|
||
int64 nodeId = 1;
|
||
string name = 2;
|
||
int64 clusterId = 3;
|
||
NodeLogin Login = 4;
|
||
int32 maxCPU = 5;
|
||
bool isOn = 6;
|
||
int64 groupId = 7;
|
||
int64 dnsDomainId = 8;
|
||
repeated string dnsRoutes = 9;
|
||
}
|
||
|
||
// 查找节点
|
||
message FindEnabledNodeRequest {
|
||
int64 nodeId = 1;
|
||
}
|
||
|
||
message FindEnabledNodeResponse {
|
||
Node node = 1;
|
||
}
|
||
|
||
// 组合单个节点配置
|
||
message FindCurrentNodeConfigRequest {
|
||
// 由于登录信息中已经包含了节点信息,所以这里不需要nodeId
|
||
}
|
||
|
||
message FindCurrentNodeConfigResponse {
|
||
bytes nodeJSON = 1;
|
||
}
|
||
|
||
// 节点stream
|
||
message NodeStreamMessage {
|
||
int64 nodeId = 1;
|
||
int64 requestId = 2;
|
||
int32 timeoutSeconds = 3;
|
||
string code = 4;
|
||
bytes dataJSON = 5;
|
||
bool isOk = 6;
|
||
string message = 7;
|
||
}
|
||
|
||
// 更新节点状态
|
||
message UpdateNodeStatusRequest {
|
||
int64 nodeId = 1;
|
||
bytes statusJSON = 2;
|
||
}
|
||
|
||
// 同步集群中的节点版本
|
||
message SyncNodesVersionWithClusterRequest {
|
||
int64 clusterId = 1;
|
||
}
|
||
|
||
message SyncNodesVersionWithClusterResponse {
|
||
}
|
||
|
||
// 计算匹配的节点数量
|
||
message CountAllEnabledNodesMatchRequest {
|
||
int64 clusterId = 1;
|
||
int32 installState = 2;
|
||
int32 activeState = 3;
|
||
string keyword = 4;
|
||
int64 groupId = 5;
|
||
}
|
||
|
||
// 修改节点安装状态
|
||
message UpdateNodeIsInstalledRequest {
|
||
int64 nodeId = 1;
|
||
bool isInstalled = 2;
|
||
}
|
||
|
||
// 安装节点
|
||
message InstallNodeRequest {
|
||
int64 nodeId = 1;
|
||
}
|
||
|
||
message InstallNodeResponse {
|
||
|
||
}
|
||
|
||
// 升级节点
|
||
message UpgradeNodeRequest {
|
||
int64 nodeId = 1;
|
||
}
|
||
|
||
message UpgradeNodeResponse {
|
||
}
|
||
|
||
// 启动节点
|
||
message StartNodeRequest {
|
||
int64 nodeId = 1;
|
||
}
|
||
|
||
message StartNodeResponse {
|
||
bool isOk = 1;
|
||
string error = 2;
|
||
}
|
||
|
||
// 停止节点
|
||
message StopNodeRequest {
|
||
int64 nodeId = 1;
|
||
}
|
||
|
||
message StopNodeResponse {
|
||
bool isOk = 1;
|
||
string error = 2;
|
||
}
|
||
|
||
// 更改节点连接的API节点信息
|
||
message UpdateNodeConnectedAPINodesRequest {
|
||
repeated int64 apiNodeIds = 1;
|
||
}
|
||
|
||
// 计算使用某个认证的节点数量
|
||
message CountAllEnabledNodesWithGrantIdRequest {
|
||
int64 grantId = 1;
|
||
}
|
||
|
||
// 查找使用某个认证的所有节点
|
||
message FindAllEnabledNodesWithGrantIdRequest {
|
||
int64 grantId = 1;
|
||
}
|
||
|
||
message FindAllEnabledNodesWithGrantIdResponse {
|
||
repeated Node nodes = 1;
|
||
}
|
||
|
||
// 列出所有未安装的节点
|
||
message FindAllNotInstalledNodesWithClusterIdRequest {
|
||
int64 clusterId = 1;
|
||
}
|
||
|
||
message FindAllNotInstalledNodesWithClusterIdResponse {
|
||
repeated Node nodes = 1;
|
||
}
|
||
|
||
// 计算需要升级的节点数量
|
||
message CountAllUpgradeNodesWithClusterIdRequest {
|
||
int64 clusterId = 1;
|
||
}
|
||
|
||
// 列出所有需要升级的节点
|
||
message FindAllUpgradeNodesWithClusterIdRequest {
|
||
int64 clusterId = 1;
|
||
}
|
||
|
||
message FindAllUpgradeNodesWithClusterIdResponse {
|
||
repeated NodeUpgrade nodes = 1;
|
||
|
||
message NodeUpgrade {
|
||
Node node = 1;
|
||
string os = 2;
|
||
string arch = 3;
|
||
string oldVersion = 4;
|
||
string newVersion = 5;
|
||
}
|
||
}
|
||
|
||
// 读取节点安装状态
|
||
message FindNodeInstallStatusRequest {
|
||
int64 nodeId = 1;
|
||
}
|
||
|
||
message FindNodeInstallStatusResponse {
|
||
NodeInstallStatus installStatus = 1;
|
||
}
|
||
|
||
// 修改节点登录信息
|
||
message UpdateNodeLoginRequest {
|
||
int64 nodeId = 1;
|
||
NodeLogin Login = 2;
|
||
}
|
||
|
||
// 计算某个节点分组内的节点数量
|
||
message CountAllEnabledNodesWithGroupIdRequest {
|
||
int64 groupId = 1;
|
||
}
|
||
|
||
// 取得某个集群下的所有节点
|
||
message FindAllEnabledNodesDNSWithClusterIdRequest {
|
||
int64 nodeClusterId = 1;
|
||
}
|
||
|
||
message FindAllEnabledNodesDNSWithClusterIdResponse {
|
||
repeated NodeDNSInfo nodes = 1;
|
||
}
|
||
|
||
message NodeDNSInfo {
|
||
int64 id = 1;
|
||
string name = 2;
|
||
string ipAddr = 3;
|
||
repeated DNSRoute routes = 4;
|
||
int64 clusterId = 5;
|
||
int64 dnsDomainId = 6;
|
||
string dnsDomainName = 7;
|
||
}
|
||
|
||
// 查找单个节点的域名解析信息
|
||
message FindEnabledNodeDNSRequest {
|
||
int64 nodeId = 1;
|
||
}
|
||
|
||
message FindEnabledNodeDNSResponse {
|
||
NodeDNSInfo node = 1;
|
||
}
|
||
|
||
// 修改节点的DNS信息
|
||
message UpdateNodeDNSRequest {
|
||
int64 nodeId = 1;
|
||
string ipAddr = 2;
|
||
int64 dnsDomainId = 3;
|
||
repeated string routes = 4;
|
||
}
|