fix: update server desc host_id after migration

This commit is contained in:
Qiu Jian
2022-01-02 12:28:30 +08:00
parent 3555090f41
commit 690bc4c3d1
3 changed files with 11 additions and 3 deletions
+1 -1
View File
@@ -3997,7 +3997,7 @@ func (self *SGuest) GetJsonDescAtHypervisor(ctx context.Context, host *SHost) *a
BootOrder: self.BootOrder,
SrcIpCheck: self.SrcIpCheck.Bool(),
SrcMacCheck: self.SrcMacCheck.Bool(),
HostId: self.HostId,
HostId: host.Id,
}
if len(self.BackupHostId) > 0 {
+1 -2
View File
@@ -25,10 +25,9 @@ import (
"sync"
"time"
"github.com/pkg/errors"
"yunion.io/x/jsonutils"
"yunion.io/x/log"
"yunion.io/x/pkg/errors"
"yunion.io/x/pkg/util/regutils"
"yunion.io/x/pkg/util/seclib"
+9
View File
@@ -35,6 +35,7 @@ import (
"yunion.io/x/onecloud/pkg/appctx"
deployapi "yunion.io/x/onecloud/pkg/hostman/hostdeployer/apis"
"yunion.io/x/onecloud/pkg/hostman/hostdeployer/deployclient"
"yunion.io/x/onecloud/pkg/hostman/hostinfo"
"yunion.io/x/onecloud/pkg/hostman/hostinfo/hostbridge"
"yunion.io/x/onecloud/pkg/hostman/hostutils"
"yunion.io/x/onecloud/pkg/hostman/monitor"
@@ -314,6 +315,14 @@ func (s *SKVMGuestInstance) GetStopScriptPath() string {
}
func (s *SKVMGuestInstance) ImportServer(pendingDelete bool) {
// verify host_id consistency
hostId, _ := s.Desc.GetString("host_id")
if hostId != hostinfo.Instance().HostId {
// fix host_id
s.Desc.Set("host_id", jsonutils.NewString(hostinfo.Instance().HostId))
s.SaveDesc(s.Desc)
}
s.manager.SaveServer(s.Id, s)
s.manager.RemoveCandidateServer(s)