mirror of
				https://github.com/TeaOSLab/EdgeCommon.git
				synced 2025-11-04 05:00:24 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			265 lines
		
	
	
		
			6.1 KiB
		
	
	
	
		
			Protocol Buffer
		
	
	
	
	
	
			
		
		
	
	
			265 lines
		
	
	
		
			6.1 KiB
		
	
	
	
		
			Protocol Buffer
		
	
	
	
	
	
syntax = "proto3";
 | 
						|
option go_package = "./pb";
 | 
						|
 | 
						|
package pb;
 | 
						|
 | 
						|
import "models/model_ns_node.proto";
 | 
						|
import "models/model_node_install_status.proto";
 | 
						|
import "models/rpc_messages.proto";
 | 
						|
import "models/model_node_login.proto";
 | 
						|
 | 
						|
// 域名服务器节点服务
 | 
						|
service NSNodeService {
 | 
						|
	// 根据集群查找所有节点
 | 
						|
	rpc findAllEnabledNSNodesWithNSClusterId (FindAllEnabledNSNodesWithNSClusterIdRequest) returns (FindAllEnabledNSNodesWithNSClusterIdResponse);
 | 
						|
 | 
						|
	// 所有可用的节点数量
 | 
						|
	rpc countAllEnabledNSNodes (CountAllEnabledNSNodesRequest) returns (RPCCountResponse);
 | 
						|
 | 
						|
	// 计算匹配的节点数量
 | 
						|
	rpc countAllEnabledNSNodesMatch (CountAllEnabledNSNodesMatchRequest) returns (RPCCountResponse);
 | 
						|
 | 
						|
	// 列出单页节点
 | 
						|
	rpc listEnabledNSNodesMatch (ListEnabledNSNodesMatchRequest) returns (ListEnabledNSNodesMatchResponse);
 | 
						|
 | 
						|
	// 计算需要升级的节点数量
 | 
						|
	rpc countAllUpgradeNSNodesWithNSClusterId (CountAllUpgradeNSNodesWithNSClusterIdRequest) returns (RPCCountResponse);
 | 
						|
 | 
						|
	// 创建节点
 | 
						|
	rpc createNSNode (CreateNSNodeRequest) returns (CreateNSNodeResponse);
 | 
						|
 | 
						|
	// 删除节点
 | 
						|
	rpc deleteNSNode (DeleteNSNodeRequest) returns (RPCSuccess);
 | 
						|
 | 
						|
	// 获取单个节点信息
 | 
						|
	rpc findEnabledNSNode (FindEnabledNSNodeRequest) returns (FindEnabledNSNodeResponse);
 | 
						|
 | 
						|
	// 修改节点
 | 
						|
	rpc updateNSNode (UpdateNSNodeRequest) returns (RPCSuccess);
 | 
						|
 | 
						|
	// 安装节点
 | 
						|
	rpc installNSNode (InstallNSNodeRequest) returns (InstallNSNodeResponse);
 | 
						|
 | 
						|
	// 读取节点安装状态
 | 
						|
	rpc findNSNodeInstallStatus (FindNSNodeInstallStatusRequest) returns (FindNSNodeInstallStatusResponse);
 | 
						|
 | 
						|
	// 修改节点安装状态
 | 
						|
	rpc updateNSNodeIsInstalled (UpdateNSNodeIsInstalledRequest) returns (RPCSuccess);
 | 
						|
 | 
						|
	// 更新节点状态
 | 
						|
	rpc updateNSNodeStatus (UpdateNSNodeStatusRequest) returns (RPCSuccess);
 | 
						|
 | 
						|
	// 获取当前节点信息
 | 
						|
	rpc findCurrentNSNodeConfig (FindCurrentNSNodeConfigRequest) returns (FindCurrentNSNodeConfigResponse);
 | 
						|
 | 
						|
	// 检查新版本
 | 
						|
	rpc checkNSNodeLatestVersion (CheckNSNodeLatestVersionRequest) returns (CheckNSNodeLatestVersionResponse);
 | 
						|
 | 
						|
	// 下载最新DNS节点安装文件
 | 
						|
	rpc downloadNSNodeInstallationFile (DownloadNSNodeInstallationFileRequest) returns (DownloadNSNodeInstallationFileResponse);
 | 
						|
 | 
						|
	// 节点stream
 | 
						|
	rpc nsNodeStream (stream NSNodeStreamMessage) returns (stream NSNodeStreamMessage);
 | 
						|
 | 
						|
	// 向节点发送命令
 | 
						|
	rpc sendCommandToNSNode (NSNodeStreamMessage) returns (NSNodeStreamMessage);
 | 
						|
 | 
						|
	// 更改节点连接的API节点信息
 | 
						|
	rpc updateNSNodeConnectedAPINodes (UpdateNSNodeConnectedAPINodesRequest) returns (RPCSuccess);
 | 
						|
 | 
						|
	// 修改节点登录信息
 | 
						|
	rpc updateNSNodeLogin (UpdateNSNodeLoginRequest) returns (RPCSuccess);
 | 
						|
 | 
						|
	// 启动节点
 | 
						|
	rpc startNSNode (StartNSNodeRequest) returns (StartNSNodeResponse);
 | 
						|
 | 
						|
	// 停止节点
 | 
						|
	rpc stopNSNode (StopNSNodeRequest) returns (StopNSNodeResponse);
 | 
						|
}
 | 
						|
 | 
						|
// 根据集群查找所有节点
 | 
						|
message FindAllEnabledNSNodesWithNSClusterIdRequest {
 | 
						|
	int64 nsClusterId = 1;
 | 
						|
}
 | 
						|
 | 
						|
message FindAllEnabledNSNodesWithNSClusterIdResponse {
 | 
						|
	repeated NSNode nsNodes = 1;
 | 
						|
}
 | 
						|
 | 
						|
// 所有可用的节点数量
 | 
						|
message CountAllEnabledNSNodesRequest {
 | 
						|
 | 
						|
}
 | 
						|
 | 
						|
// 计算匹配的节点数量
 | 
						|
message CountAllEnabledNSNodesMatchRequest {
 | 
						|
	int64 nsClusterId = 1;
 | 
						|
	int32 installState = 2;
 | 
						|
	int32 activeState = 3;
 | 
						|
	string keyword = 4;
 | 
						|
	//int64 nodeGroupId = 5;
 | 
						|
	//int64 nodeRegionId = 6;
 | 
						|
}
 | 
						|
 | 
						|
// 列出单页节点
 | 
						|
message ListEnabledNSNodesMatchRequest {
 | 
						|
	int64 offset = 1;
 | 
						|
	int64 size = 2;
 | 
						|
	int64 nsClusterId = 3;
 | 
						|
	int32 installState = 4;
 | 
						|
	int32 activeState = 5;
 | 
						|
	string keyword = 6;
 | 
						|
	//int64 nodeGroupId = 7;
 | 
						|
	//int64 nodeRegionId = 8;
 | 
						|
}
 | 
						|
 | 
						|
message ListEnabledNSNodesMatchResponse {
 | 
						|
	repeated NSNode nsNodes = 1;
 | 
						|
}
 | 
						|
 | 
						|
// 计算需要升级的节点数量
 | 
						|
message CountAllUpgradeNSNodesWithNSClusterIdRequest {
 | 
						|
	int64 nsClusterId = 1;
 | 
						|
}
 | 
						|
 | 
						|
// 创建节点
 | 
						|
message CreateNSNodeRequest {
 | 
						|
	string name = 1;
 | 
						|
	int64 nodeClusterId = 2;
 | 
						|
	NodeLogin nodeLogin = 3;
 | 
						|
}
 | 
						|
 | 
						|
message CreateNSNodeResponse {
 | 
						|
	int64 nsNodeId = 1;
 | 
						|
}
 | 
						|
 | 
						|
// 删除节点
 | 
						|
message DeleteNSNodeRequest {
 | 
						|
	int64 nsNodeId = 1;
 | 
						|
}
 | 
						|
 | 
						|
// 获取单个节点信息
 | 
						|
message FindEnabledNSNodeRequest {
 | 
						|
	int64 nsNodeId = 1;
 | 
						|
}
 | 
						|
 | 
						|
message FindEnabledNSNodeResponse {
 | 
						|
	NSNode nsNode = 1;
 | 
						|
}
 | 
						|
 | 
						|
// 修改节点
 | 
						|
message UpdateNSNodeRequest {
 | 
						|
	int64 nsNodeId = 1;
 | 
						|
	string name = 2;
 | 
						|
	int64 nsClusterId = 3;
 | 
						|
	NodeLogin nodeLogin = 4;
 | 
						|
	bool isOn = 6;
 | 
						|
}
 | 
						|
 | 
						|
// 安装节点
 | 
						|
message InstallNSNodeRequest {
 | 
						|
	int64 nsNodeId = 1;
 | 
						|
}
 | 
						|
 | 
						|
message InstallNSNodeResponse {
 | 
						|
 | 
						|
}
 | 
						|
 | 
						|
// 读取节点安装状态
 | 
						|
message FindNSNodeInstallStatusRequest {
 | 
						|
	int64 nsNodeId = 1;
 | 
						|
}
 | 
						|
 | 
						|
message FindNSNodeInstallStatusResponse {
 | 
						|
	NodeInstallStatus installStatus = 1;
 | 
						|
}
 | 
						|
 | 
						|
// 修改节点安装状态
 | 
						|
message UpdateNSNodeIsInstalledRequest {
 | 
						|
	int64 nsNodeId = 1;
 | 
						|
	bool isInstalled = 2;
 | 
						|
}
 | 
						|
 | 
						|
// 更新节点状态
 | 
						|
message UpdateNSNodeStatusRequest {
 | 
						|
	int64 nodeId = 1;
 | 
						|
	bytes statusJSON = 2;
 | 
						|
}
 | 
						|
 | 
						|
// 获取当前节点信息
 | 
						|
message FindCurrentNSNodeConfigRequest {
 | 
						|
 | 
						|
}
 | 
						|
 | 
						|
message FindCurrentNSNodeConfigResponse {
 | 
						|
	bytes nsNodeJSON = 1;
 | 
						|
}
 | 
						|
 | 
						|
// 检查新版本
 | 
						|
message CheckNSNodeLatestVersionRequest {
 | 
						|
	string os = 1;
 | 
						|
	string arch = 2;
 | 
						|
	string currentVersion = 3;
 | 
						|
}
 | 
						|
 | 
						|
message CheckNSNodeLatestVersionResponse {
 | 
						|
	bool hasNewVersion = 1;
 | 
						|
	string newVersion = 2;
 | 
						|
}
 | 
						|
 | 
						|
// 下载最新DNS节点安装文件
 | 
						|
message DownloadNSNodeInstallationFileRequest {
 | 
						|
	string os = 1;
 | 
						|
	string arch = 2;
 | 
						|
	int64 chunkOffset = 3;
 | 
						|
}
 | 
						|
 | 
						|
message DownloadNSNodeInstallationFileResponse {
 | 
						|
	bytes chunkData = 1;
 | 
						|
	string sum = 2; // 文件的md5sum
 | 
						|
	int64 offset = 3;
 | 
						|
	string version = 4;
 | 
						|
	string filename = 5;
 | 
						|
}
 | 
						|
 | 
						|
// 节点stream
 | 
						|
message NSNodeStreamMessage {
 | 
						|
	int64 nsNodeId = 1;
 | 
						|
	int64 requestId = 2;
 | 
						|
	int32 timeoutSeconds = 3;
 | 
						|
	string code = 4;
 | 
						|
	bytes dataJSON = 5;
 | 
						|
	bool isOk = 6;
 | 
						|
	string message = 7;
 | 
						|
}
 | 
						|
 | 
						|
// 更改节点连接的API节点信息
 | 
						|
message UpdateNSNodeConnectedAPINodesRequest {
 | 
						|
	repeated int64 apiNodeIds = 1;
 | 
						|
}
 | 
						|
 | 
						|
// 修改节点登录信息
 | 
						|
message UpdateNSNodeLoginRequest {
 | 
						|
	int64 nsNodeId = 1;
 | 
						|
	NodeLogin nodeLogin = 2;
 | 
						|
}
 | 
						|
 | 
						|
// 启动节点
 | 
						|
message StartNSNodeRequest {
 | 
						|
	int64 nsNodeId = 1;
 | 
						|
}
 | 
						|
 | 
						|
message StartNSNodeResponse {
 | 
						|
	bool isOk = 1;
 | 
						|
	string error = 2;
 | 
						|
}
 | 
						|
 | 
						|
// 停止节点
 | 
						|
message StopNSNodeRequest {
 | 
						|
	int64 nsNodeId = 1;
 | 
						|
}
 | 
						|
 | 
						|
message StopNSNodeResponse {
 | 
						|
	bool isOk = 1;
 | 
						|
	string error = 2;
 | 
						|
} |