mirror of
https://github.com/TeaOSLab/EdgeAPI.git
synced 2025-11-15 09:10:24 +08:00
节点因阈值切换到备用IP时保持在线状态
This commit is contained in:
@@ -443,6 +443,7 @@ func (this *NodeIPAddressDAO) UpdateAddressBackupIP(tx *dbs.Tx, addressId int64,
|
|||||||
return errors.New("invalid addressId")
|
return errors.New("invalid addressId")
|
||||||
}
|
}
|
||||||
var op = NewNodeIPAddressOperator()
|
var op = NewNodeIPAddressOperator()
|
||||||
|
op.IsUp = true // IP必须在线备用IP才会有用
|
||||||
op.Id = addressId
|
op.Id = addressId
|
||||||
op.BackupThresholdId = thresholdId
|
op.BackupThresholdId = thresholdId
|
||||||
op.BackupIP = ip
|
op.BackupIP = ip
|
||||||
|
|||||||
@@ -146,6 +146,26 @@ func (this *HealthCheckExecutor) Run() ([]*HealthCheckResult, error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if isChanged {
|
if isChanged {
|
||||||
|
// 发送消息
|
||||||
|
var message = ""
|
||||||
|
var messageType string
|
||||||
|
var messageLevel string
|
||||||
|
if result.IsOk {
|
||||||
|
message = "健康检查成功,节点\"" + result.Node.Name + "\",IP\"" + result.NodeAddr + "\"已恢复上线"
|
||||||
|
messageType = models.MessageTypeHealthCheckNodeUp
|
||||||
|
messageLevel = models.MessageLevelSuccess
|
||||||
|
} else {
|
||||||
|
message = "健康检查失败,节点\"" + result.Node.Name + "\",IP\"" + result.NodeAddr + "\"已自动下线"
|
||||||
|
messageType = models.MessageTypeHealthCheckNodeDown
|
||||||
|
messageLevel = models.MessageLevelError
|
||||||
|
}
|
||||||
|
|
||||||
|
err = models.NewMessageDAO().CreateNodeMessage(nil, nodeconfigs.NodeRoleNode, this.clusterId, int64(result.Node.Id), messageType, messageLevel, message, message, nil, false)
|
||||||
|
if err != nil {
|
||||||
|
remotelogs.Error("HEALTH_CHECK_EXECUTOR", err.Error())
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
// 触发阈值
|
// 触发阈值
|
||||||
err = models.SharedNodeIPAddressDAO.FireThresholds(nil, nodeconfigs.NodeRoleNode, int64(result.Node.Id))
|
err = models.SharedNodeIPAddressDAO.FireThresholds(nil, nodeconfigs.NodeRoleNode, int64(result.Node.Id))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@@ -153,6 +173,9 @@ func (this *HealthCheckExecutor) Run() ([]*HealthCheckResult, error) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 我们只处理IP的上下线,不修改节点的状态
|
||||||
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
// 修改节点状态
|
// 修改节点状态
|
||||||
|
|||||||
Reference in New Issue
Block a user