mirror of
https://github.com/yunionio/cloudpods.git
synced 2026-05-06 21:52:54 +08:00
fix(host): deploy nics config defore do add nics (#24278)
This commit is contained in:
@@ -659,6 +659,12 @@ func (n *SGuestNetworkSyncTask) Start(callback func(...error)) {
|
||||
}
|
||||
n.addNicMacs = addNicMacs
|
||||
n.addNicConfs = addNicConfs
|
||||
|
||||
// deploy nics configure before do add nics
|
||||
allNics := append(n.guest.Desc.Nics, n.addNics...)
|
||||
if err := n.guest.QgaDeployNicsConfigure(allNics); err != nil {
|
||||
log.Errorf("failed do QgaDeployNicsConfigure %s", err)
|
||||
}
|
||||
}
|
||||
|
||||
n.delNicCnt = len(n.delNics)
|
||||
@@ -677,6 +683,7 @@ func (n *SGuestNetworkSyncTask) syncNetworkConf() {
|
||||
} else {
|
||||
func() {
|
||||
if len(n.addNicMacs) > 0 || n.delNicCnt > 0 {
|
||||
// redeploy nics config after add/del nics
|
||||
if err := n.guest.QgaDeployNicsConfigure(n.guest.Desc.Nics); err != nil {
|
||||
log.Errorf("failed do QgaDeployNicsConfigure %s", err)
|
||||
return
|
||||
@@ -684,7 +691,7 @@ func (n *SGuestNetworkSyncTask) syncNetworkConf() {
|
||||
}
|
||||
if len(n.addNicMacs) > 0 {
|
||||
// try restart added nics, wait for added nic ready
|
||||
time.Sleep(3 * time.Second)
|
||||
time.Sleep(6 * time.Second)
|
||||
if err := n.qgaRestartAddedNics(); err != nil {
|
||||
log.Errorf("failed qgaRestartAddedNics %s", err)
|
||||
return
|
||||
|
||||
@@ -470,6 +470,9 @@ type GuestMetrics struct {
|
||||
func (d *GuestMetrics) mapToStatStr(m map[string]interface{}) string {
|
||||
var statArr = []string{}
|
||||
for k, v := range m {
|
||||
if vs, ok := v.(string); ok && len(vs) == 0 {
|
||||
continue
|
||||
}
|
||||
statArr = append(statArr, fmt.Sprintf("%s=%v", k, v))
|
||||
}
|
||||
return strings.Join(statArr, ",")
|
||||
@@ -480,6 +483,9 @@ func (d *GuestMetrics) netioToTelegrafData(measurement string, tagStr string) []
|
||||
for i := range d.VmNetio {
|
||||
netTagMap := d.VmNetio[i].ToTag()
|
||||
for k, v := range netTagMap {
|
||||
if len(k) == 0 || len(v) == 0 {
|
||||
continue
|
||||
}
|
||||
tagStr = fmt.Sprintf("%s,%s=%s", tagStr, k, v)
|
||||
}
|
||||
res = append(res, fmt.Sprintf("%s,%s %s", measurement, tagStr, d.mapToStatStr(d.VmNetio[i].ToMap())))
|
||||
|
||||
Reference in New Issue
Block a user