diff --git a/internal/web/actions/default/clusters/cluster/settings/index.go b/internal/web/actions/default/clusters/cluster/settings/index.go index 1517880c..7e1b0011 100644 --- a/internal/web/actions/default/clusters/cluster/settings/index.go +++ b/internal/web/actions/default/clusters/cluster/settings/index.go @@ -80,13 +80,14 @@ func (this *IndexAction) RunGet(params struct { } this.Data["cluster"] = maps.Map{ - "id": cluster.Id, - "name": cluster.Name, - "installDir": cluster.InstallDir, - "timeZone": cluster.TimeZone, - "nodeMaxThreads": cluster.NodeMaxThreads, - "autoOpenPorts": cluster.AutoOpenPorts, - "clock": clockConfig, + "id": cluster.Id, + "name": cluster.Name, + "installDir": cluster.InstallDir, + "timeZone": cluster.TimeZone, + "nodeMaxThreads": cluster.NodeMaxThreads, + "autoOpenPorts": cluster.AutoOpenPorts, + "clock": clockConfig, + "autoRemoteStart": cluster.AutoRemoteStart, } // 默认值 @@ -99,15 +100,16 @@ func (this *IndexAction) RunGet(params struct { // RunPost 保存设置 func (this *IndexAction) RunPost(params struct { - ClusterId int64 - Name string - GrantId int64 - InstallDir string - TimeZone string - NodeMaxThreads int32 - AutoOpenPorts bool - ClockAutoSync bool - ClockServer string + ClusterId int64 + Name string + GrantId int64 + InstallDir string + TimeZone string + NodeMaxThreads int32 + AutoOpenPorts bool + ClockAutoSync bool + ClockServer string + AutoRemoteStart bool Must *actions.Must }) { @@ -141,14 +143,15 @@ func (this *IndexAction) RunPost(params struct { } _, err = this.RPC().NodeClusterRPC().UpdateNodeCluster(this.AdminContext(), &pb.UpdateNodeClusterRequest{ - NodeClusterId: params.ClusterId, - Name: params.Name, - NodeGrantId: params.GrantId, - InstallDir: params.InstallDir, - TimeZone: params.TimeZone, - NodeMaxThreads: params.NodeMaxThreads, - AutoOpenPorts: params.AutoOpenPorts, - ClockJSON: clockConfigJSON, + NodeClusterId: params.ClusterId, + Name: params.Name, + NodeGrantId: params.GrantId, + InstallDir: params.InstallDir, + TimeZone: params.TimeZone, + NodeMaxThreads: params.NodeMaxThreads, + AutoOpenPorts: params.AutoOpenPorts, + ClockJSON: clockConfigJSON, + AutoRemoteStart: params.AutoRemoteStart, }) if err != nil { this.ErrorPage(err) diff --git a/web/views/@default/clusters/cluster/settings/index.html b/web/views/@default/clusters/cluster/settings/index.html index b2510d79..da83f8cc 100644 --- a/web/views/@default/clusters/cluster/settings/index.html +++ b/web/views/@default/clusters/cluster/settings/index.html @@ -78,6 +78,13 @@

可选项。默认使用pool.ntp.org

+ + 自动远程启动 + + +

当检测到节点离线时,自动尝试远程启动(前提是节点已经设置了SSH登录认证)。

+ +