mirror of
https://github.com/TeaOSLab/EdgeAdmin.git
synced 2025-11-14 20:30:25 +08:00
IP地址支持手动上线和从备用IP中恢复
This commit is contained in:
@@ -69,7 +69,7 @@ func (this *DetailAction) RunGet(params struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// IP地址
|
// IP地址
|
||||||
ipAddressesResp, err := this.RPC().NodeIPAddressRPC().FindAllEnabledIPAddressesWithNodeId(this.AdminContext(), &pb.FindAllEnabledIPAddressesWithNodeIdRequest{
|
ipAddressesResp, err := this.RPC().NodeIPAddressRPC().FindAllEnabledNodeIPAddressesWithNodeId(this.AdminContext(), &pb.FindAllEnabledNodeIPAddressesWithNodeIdRequest{
|
||||||
NodeId: params.NodeId,
|
NodeId: params.NodeId,
|
||||||
Role: nodeconfigs.NodeRoleNode,
|
Role: nodeconfigs.NodeRoleNode,
|
||||||
})
|
})
|
||||||
@@ -77,9 +77,9 @@ func (this *DetailAction) RunGet(params struct {
|
|||||||
this.ErrorPage(err)
|
this.ErrorPage(err)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
var ipAddresses = ipAddressesResp.Addresses
|
var ipAddresses = ipAddressesResp.NodeIPAddresses
|
||||||
ipAddressMaps := []maps.Map{}
|
ipAddressMaps := []maps.Map{}
|
||||||
for _, addr := range ipAddressesResp.Addresses {
|
for _, addr := range ipAddressesResp.NodeIPAddresses {
|
||||||
thresholds, err := ipaddressutils.InitNodeIPAddressThresholds(this.Parent(), addr.Id)
|
thresholds, err := ipaddressutils.InitNodeIPAddressThresholds(this.Parent(), addr.Id)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
this.ErrorPage(err)
|
this.ErrorPage(err)
|
||||||
|
|||||||
@@ -47,7 +47,7 @@ func (this *UpdateAction) RunGet(params struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// IP地址
|
// IP地址
|
||||||
ipAddressesResp, err := this.RPC().NodeIPAddressRPC().FindAllEnabledIPAddressesWithNodeId(this.AdminContext(), &pb.FindAllEnabledIPAddressesWithNodeIdRequest{
|
ipAddressesResp, err := this.RPC().NodeIPAddressRPC().FindAllEnabledNodeIPAddressesWithNodeId(this.AdminContext(), &pb.FindAllEnabledNodeIPAddressesWithNodeIdRequest{
|
||||||
NodeId: params.NodeId,
|
NodeId: params.NodeId,
|
||||||
Role: nodeconfigs.NodeRoleNode,
|
Role: nodeconfigs.NodeRoleNode,
|
||||||
})
|
})
|
||||||
@@ -56,7 +56,7 @@ func (this *UpdateAction) RunGet(params struct {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
ipAddressMaps := []maps.Map{}
|
ipAddressMaps := []maps.Map{}
|
||||||
for _, addr := range ipAddressesResp.Addresses {
|
for _, addr := range ipAddressesResp.NodeIPAddresses {
|
||||||
thresholds, err := ipaddressutils.InitNodeIPAddressThresholds(this.Parent(), addr.Id)
|
thresholds, err := ipaddressutils.InitNodeIPAddressThresholds(this.Parent(), addr.Id)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
this.ErrorPage(err)
|
this.ErrorPage(err)
|
||||||
@@ -391,7 +391,7 @@ func (this *UpdateAction) RunPost(params struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 禁用老的IP地址
|
// 禁用老的IP地址
|
||||||
_, err = this.RPC().NodeIPAddressRPC().DisableAllIPAddressesWithNodeId(this.AdminContext(), &pb.DisableAllIPAddressesWithNodeIdRequest{
|
_, err = this.RPC().NodeIPAddressRPC().DisableAllNodeIPAddressesWithNodeId(this.AdminContext(), &pb.DisableAllNodeIPAddressesWithNodeIdRequest{
|
||||||
NodeId: params.NodeId,
|
NodeId: params.NodeId,
|
||||||
Role: nodeconfigs.NodeRoleNode,
|
Role: nodeconfigs.NodeRoleNode,
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -123,7 +123,7 @@ func (this *NodesAction) RunGet(params struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// IP
|
// IP
|
||||||
ipAddressesResp, err := this.RPC().NodeIPAddressRPC().FindAllEnabledIPAddressesWithNodeId(this.AdminContext(), &pb.FindAllEnabledIPAddressesWithNodeIdRequest{
|
ipAddressesResp, err := this.RPC().NodeIPAddressRPC().FindAllEnabledNodeIPAddressesWithNodeId(this.AdminContext(), &pb.FindAllEnabledNodeIPAddressesWithNodeIdRequest{
|
||||||
NodeId: node.Id,
|
NodeId: node.Id,
|
||||||
Role: nodeconfigs.NodeRoleNode,
|
Role: nodeconfigs.NodeRoleNode,
|
||||||
})
|
})
|
||||||
@@ -132,7 +132,7 @@ func (this *NodesAction) RunGet(params struct {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
ipAddresses := []maps.Map{}
|
ipAddresses := []maps.Map{}
|
||||||
for _, addr := range ipAddressesResp.Addresses {
|
for _, addr := range ipAddressesResp.NodeIPAddresses {
|
||||||
ipAddresses = append(ipAddresses, maps.Map{
|
ipAddresses = append(ipAddresses, maps.Map{
|
||||||
"id": addr.Id,
|
"id": addr.Id,
|
||||||
"name": addr.Name,
|
"name": addr.Name,
|
||||||
|
|||||||
@@ -193,7 +193,7 @@ func (this *IndexAction) searchNodes(keyword string) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// IP
|
// IP
|
||||||
ipAddressesResp, err := this.RPC().NodeIPAddressRPC().FindAllEnabledIPAddressesWithNodeId(this.AdminContext(), &pb.FindAllEnabledIPAddressesWithNodeIdRequest{
|
ipAddressesResp, err := this.RPC().NodeIPAddressRPC().FindAllEnabledNodeIPAddressesWithNodeId(this.AdminContext(), &pb.FindAllEnabledNodeIPAddressesWithNodeIdRequest{
|
||||||
NodeId: node.Id,
|
NodeId: node.Id,
|
||||||
Role: nodeconfigs.NodeRoleNode,
|
Role: nodeconfigs.NodeRoleNode,
|
||||||
})
|
})
|
||||||
@@ -202,7 +202,7 @@ func (this *IndexAction) searchNodes(keyword string) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
ipAddresses := []maps.Map{}
|
ipAddresses := []maps.Map{}
|
||||||
for _, addr := range ipAddressesResp.Addresses {
|
for _, addr := range ipAddressesResp.NodeIPAddresses {
|
||||||
ipAddresses = append(ipAddresses, maps.Map{
|
ipAddresses = append(ipAddresses, maps.Map{
|
||||||
"id": addr.Id,
|
"id": addr.Id,
|
||||||
"name": addr.Name,
|
"name": addr.Name,
|
||||||
|
|||||||
@@ -81,7 +81,7 @@ func (this *IndexAction) RunGet(params struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// IP
|
// IP
|
||||||
ipAddressesResp, err := this.RPC().NodeIPAddressRPC().FindAllEnabledIPAddressesWithNodeId(this.AdminContext(), &pb.FindAllEnabledIPAddressesWithNodeIdRequest{
|
ipAddressesResp, err := this.RPC().NodeIPAddressRPC().FindAllEnabledNodeIPAddressesWithNodeId(this.AdminContext(), &pb.FindAllEnabledNodeIPAddressesWithNodeIdRequest{
|
||||||
NodeId: node.Id,
|
NodeId: node.Id,
|
||||||
Role: nodeconfigs.NodeRoleDNS,
|
Role: nodeconfigs.NodeRoleDNS,
|
||||||
})
|
})
|
||||||
@@ -90,7 +90,7 @@ func (this *IndexAction) RunGet(params struct {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
ipAddresses := []maps.Map{}
|
ipAddresses := []maps.Map{}
|
||||||
for _, addr := range ipAddressesResp.Addresses {
|
for _, addr := range ipAddressesResp.NodeIPAddresses {
|
||||||
ipAddresses = append(ipAddresses, maps.Map{
|
ipAddresses = append(ipAddresses, maps.Map{
|
||||||
"id": addr.Id,
|
"id": addr.Id,
|
||||||
"name": addr.Name,
|
"name": addr.Name,
|
||||||
|
|||||||
@@ -56,7 +56,7 @@ func (this *IndexAction) RunGet(params struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// IP地址
|
// IP地址
|
||||||
ipAddressesResp, err := this.RPC().NodeIPAddressRPC().FindAllEnabledIPAddressesWithNodeId(this.AdminContext(), &pb.FindAllEnabledIPAddressesWithNodeIdRequest{
|
ipAddressesResp, err := this.RPC().NodeIPAddressRPC().FindAllEnabledNodeIPAddressesWithNodeId(this.AdminContext(), &pb.FindAllEnabledNodeIPAddressesWithNodeIdRequest{
|
||||||
NodeId: params.NodeId,
|
NodeId: params.NodeId,
|
||||||
Role: nodeconfigs.NodeRoleDNS,
|
Role: nodeconfigs.NodeRoleDNS,
|
||||||
})
|
})
|
||||||
@@ -65,7 +65,7 @@ func (this *IndexAction) RunGet(params struct {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
ipAddressMaps := []maps.Map{}
|
ipAddressMaps := []maps.Map{}
|
||||||
for _, addr := range ipAddressesResp.Addresses {
|
for _, addr := range ipAddressesResp.NodeIPAddresses {
|
||||||
ipAddressMaps = append(ipAddressMaps, maps.Map{
|
ipAddressMaps = append(ipAddressMaps, maps.Map{
|
||||||
"id": addr.Id,
|
"id": addr.Id,
|
||||||
"name": addr.Name,
|
"name": addr.Name,
|
||||||
|
|||||||
@@ -46,7 +46,7 @@ func (this *UpdateAction) RunGet(params struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// IP地址
|
// IP地址
|
||||||
ipAddressesResp, err := this.RPC().NodeIPAddressRPC().FindAllEnabledIPAddressesWithNodeId(this.AdminContext(), &pb.FindAllEnabledIPAddressesWithNodeIdRequest{
|
ipAddressesResp, err := this.RPC().NodeIPAddressRPC().FindAllEnabledNodeIPAddressesWithNodeId(this.AdminContext(), &pb.FindAllEnabledNodeIPAddressesWithNodeIdRequest{
|
||||||
NodeId: params.NodeId,
|
NodeId: params.NodeId,
|
||||||
Role: nodeconfigs.NodeRoleDNS,
|
Role: nodeconfigs.NodeRoleDNS,
|
||||||
})
|
})
|
||||||
@@ -55,7 +55,7 @@ func (this *UpdateAction) RunGet(params struct {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
ipAddressMaps := []maps.Map{}
|
ipAddressMaps := []maps.Map{}
|
||||||
for _, addr := range ipAddressesResp.Addresses {
|
for _, addr := range ipAddressesResp.NodeIPAddresses {
|
||||||
ipAddressMaps = append(ipAddressMaps, maps.Map{
|
ipAddressMaps = append(ipAddressMaps, maps.Map{
|
||||||
"id": addr.Id,
|
"id": addr.Id,
|
||||||
"name": addr.Name,
|
"name": addr.Name,
|
||||||
@@ -213,7 +213,7 @@ func (this *UpdateAction) RunPost(params struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 禁用老的IP地址
|
// 禁用老的IP地址
|
||||||
_, err = this.RPC().NodeIPAddressRPC().DisableAllIPAddressesWithNodeId(this.AdminContext(), &pb.DisableAllIPAddressesWithNodeIdRequest{
|
_, err = this.RPC().NodeIPAddressRPC().DisableAllNodeIPAddressesWithNodeId(this.AdminContext(), &pb.DisableAllNodeIPAddressesWithNodeIdRequest{
|
||||||
NodeId: params.NodeId,
|
NodeId: params.NodeId,
|
||||||
Role: nodeconfigs.NodeRoleDNS,
|
Role: nodeconfigs.NodeRoleDNS,
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ func (this *NodeOptionsAction) RunPost(params struct {
|
|||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
addressesResp, err := this.RPC().NodeIPAddressRPC().FindAllEnabledIPAddressesWithNodeId(this.AdminContext(), &pb.FindAllEnabledIPAddressesWithNodeIdRequest{
|
addressesResp, err := this.RPC().NodeIPAddressRPC().FindAllEnabledNodeIPAddressesWithNodeId(this.AdminContext(), &pb.FindAllEnabledNodeIPAddressesWithNodeIdRequest{
|
||||||
NodeId: node.Id,
|
NodeId: node.Id,
|
||||||
Role: nodeconfigs.NodeRoleDNS,
|
Role: nodeconfigs.NodeRoleDNS,
|
||||||
})
|
})
|
||||||
@@ -36,7 +36,7 @@ func (this *NodeOptionsAction) RunPost(params struct {
|
|||||||
this.ErrorPage(err)
|
this.ErrorPage(err)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
var addresses = addressesResp.Addresses
|
var addresses = addressesResp.NodeIPAddresses
|
||||||
if len(addresses) == 0 {
|
if len(addresses) == 0 {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -14,10 +14,12 @@
|
|||||||
<span v-if="!addr.canAccess" class="red">不可访问</span>
|
<span v-if="!addr.canAccess" class="red">不可访问</span>
|
||||||
<span v-else-if="!addr.isOn" class="red">禁用</span>
|
<span v-else-if="!addr.isOn" class="red">禁用</span>
|
||||||
<span v-else-if="addr.isUp && addr.backupIP.length > 0" class="orange">备用
|
<span v-else-if="addr.isUp && addr.backupIP.length > 0" class="orange">备用
|
||||||
|
<a href="" @click.prevent="restoreBackup(addr.id)"><span class="small">[恢复]</span></a>
|
||||||
<br/><span class="grey small">{{addr.backupIP}}</span>
|
<br/><span class="grey small">{{addr.backupIP}}</span>
|
||||||
</span>
|
</span>
|
||||||
<span v-else-if="addr.isUp" class="green">在线</span>
|
<span v-else-if="addr.isUp" class="green">在线 <a href="" @click.prevent="updateUp(addr.id, false)"><span class="small">[下线]</span></a></span>
|
||||||
<span v-else class="red">离线</span>
|
<span v-else class="red">离线 <a href="" @click.prevent="updateUp(addr.id, true)"><span class="small">[上线]</span></a>
|
||||||
|
</span>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
|
|||||||
23
web/views/@default/clusters/ip-addrs/addr/index.js
Normal file
23
web/views/@default/clusters/ip-addrs/addr/index.js
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
Tea.context(function () {
|
||||||
|
this.updateUp = function (addrId, isUp) {
|
||||||
|
let status = isUp ? "在线" : "离线"
|
||||||
|
teaweb.confirm("确定要手动将节点设置为" + status + "吗?", function () {
|
||||||
|
this.$post(".up")
|
||||||
|
.params({
|
||||||
|
addrId: addrId,
|
||||||
|
isUp: isUp ? 1 : 0
|
||||||
|
})
|
||||||
|
.refresh()
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
this.restoreBackup = function (addrId) {
|
||||||
|
teaweb.confirm("确定要恢复IP地址吗?", function () {
|
||||||
|
this.$post(".restoreBackup")
|
||||||
|
.params({
|
||||||
|
addrId: addrId
|
||||||
|
})
|
||||||
|
.refresh()
|
||||||
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
Reference in New Issue
Block a user