fix(region): huawei disk refresh (#19238)

This commit is contained in:
屈轩
2024-01-12 15:53:29 +08:00
committed by GitHub
parent d95380c6d1
commit 27a9fab7cb
8 changed files with 23 additions and 16 deletions
+1 -1
View File
@@ -88,7 +88,7 @@ require (
k8s.io/client-go v0.19.3
k8s.io/cluster-bootstrap v0.19.3
moul.io/http2curl/v2 v2.3.0
yunion.io/x/cloudmux v0.3.10-0-alpha.1.0.20240111122145-cb7fc83612a1
yunion.io/x/cloudmux v0.3.10-0-alpha.1.0.20240112065144-a608acb9c8fc
yunion.io/x/executor v0.0.0-20230705125604-c5ac3141db32
yunion.io/x/jsonutils v1.0.1-0.20230613121553-0f3b41e2ef19
yunion.io/x/log v1.0.1-0.20230411060016-feb3f46ab361
+2 -2
View File
@@ -1201,8 +1201,8 @@ sigs.k8s.io/structured-merge-diff/v4 v4.0.1/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK
sigs.k8s.io/yaml v1.1.0/go.mod h1:UJmg0vDUVViEyp3mgSv9WPwZCDxu4rQW1olrI1uml+o=
sigs.k8s.io/yaml v1.2.0 h1:kr/MCeFWJWTwyaHoR9c8EjH9OumOmoF9YGiZd7lFm/Q=
sigs.k8s.io/yaml v1.2.0/go.mod h1:yfXDCHCao9+ENCvLSE62v9VSji2MKu5jeNfTrofGhJc=
yunion.io/x/cloudmux v0.3.10-0-alpha.1.0.20240111122145-cb7fc83612a1 h1:owTUaCPLsoqJJpiqmWGEi942k1BOIbz2lg5QBfgbgHQ=
yunion.io/x/cloudmux v0.3.10-0-alpha.1.0.20240111122145-cb7fc83612a1/go.mod h1:aj1gR9PPb6eqqKOwvANe26CoZFY8ydmXy0fuvgKYXH0=
yunion.io/x/cloudmux v0.3.10-0-alpha.1.0.20240112065144-a608acb9c8fc h1:0BoVUB6SY4X1Y81wS64NSvrtFcZ2bFjDVQQmRaGxzY8=
yunion.io/x/cloudmux v0.3.10-0-alpha.1.0.20240112065144-a608acb9c8fc/go.mod h1:aj1gR9PPb6eqqKOwvANe26CoZFY8ydmXy0fuvgKYXH0=
yunion.io/x/executor v0.0.0-20230705125604-c5ac3141db32 h1:v7POYkQwo1XzOxBoIoRVr/k0V9Y5JyjpshlIFa9raug=
yunion.io/x/executor v0.0.0-20230705125604-c5ac3141db32/go.mod h1:Uxuou9WQIeJXNpy7t2fPLL0BYLvLiMvGQwY7Qc6aSws=
yunion.io/x/jsonutils v0.0.0-20190625054549-a964e1e8a051/go.mod h1:4N0/RVzsYL3kH3WE/H1BjUQdFiWu50JGCFQuuy+Z634=
@@ -681,6 +681,10 @@ func (drv *SManagedVirtualizedGuestDriver) RemoteDeployGuestForCreate(ctx contex
if ret >= expect { // 有可能自定义镜像里面也有磁盘,会导致返回的磁盘多于创建时的磁盘
return true, nil
}
err = iVM.Refresh()
if err != nil {
log.Warningf("refresh vm %s error: %v", guest.Name, err)
}
return false, nil
}, 10)
if err != nil {
+1 -1
View File
@@ -75,7 +75,7 @@ func resolveServerIPPortById(ctx context.Context, s *mcclient.ClientSession, id
if err != nil {
return "", 0, nil, errors.Wrap(err, "Unmarshal guest network info")
}
if len(ip) > 0 && ip != gn.EipAddr && ip != gn.IpAddr && ip != gn.Ip6Addr {
if len(ip) > 0 && ip != gn.EipAddr && ip != gn.IpAddr && ip != gn.Ip6Addr && ip != guestDetails.Eip {
return "", 0, nil, errors.Wrapf(httperrors.ErrInputParameter, "ip %s not match with server", ip)
}
guestNicDetails = &gn
+1 -1
View File
@@ -1465,7 +1465,7 @@ sigs.k8s.io/structured-merge-diff/v4/value
# sigs.k8s.io/yaml v1.2.0
## explicit; go 1.12
sigs.k8s.io/yaml
# yunion.io/x/cloudmux v0.3.10-0-alpha.1.0.20240111122145-cb7fc83612a1
# yunion.io/x/cloudmux v0.3.10-0-alpha.1.0.20240112065144-a608acb9c8fc
## explicit; go 1.18
yunion.io/x/cloudmux/pkg/apis
yunion.io/x/cloudmux/pkg/apis/billing
@@ -419,7 +419,8 @@ func (self *SRegion) CreateElasticcache(opts *cloudprovider.SCloudElasticCacheIn
"vpc_id": opts.VpcId,
"subnet_id": opts.NetworkId,
"product_id": opts.InstanceType,
"zone_codes": opts.ZoneIds,
"spec_code": opts.InstanceType,
"az_codes": opts.ZoneIds,
"no_password_access": true,
"enable_publicip": false,
}
+2
View File
@@ -241,6 +241,8 @@ func (self *SInstance) Refresh() error {
if err != nil {
return err
}
self.OSExtendedVolumesVolumesAttached = nil
self.SecurityGroups = nil
return jsonutils.Update(self, vm)
}
+10 -10
View File
@@ -201,35 +201,35 @@ func (self *SQcloudClient) GetRedisMetrics(opts *cloudprovider.MetricListOptions
ret := []cloudprovider.MetricValues{}
for metricType, metricNames := range map[cloudprovider.TMetricType]map[string]string{
cloudprovider.REDIS_METRIC_TYPE_CPU_USAGE: {
"CpuUsMin": "",
"CpuUtil": "",
},
cloudprovider.REDIS_METRIC_TYPE_MEM_USAGE: {
"StorageUsMin": "",
"MemUtil": "",
},
cloudprovider.REDIS_METRIC_TYPE_NET_BPS_RX: {
"InFlowMin": "",
"InFlow": "",
},
cloudprovider.REDIS_METRIC_TYPE_NET_BPS_TX: {
"OutFlowMin": "",
"OutFlow": "",
},
cloudprovider.REDIS_METRIC_TYPE_USED_CONN: {
"ConnectionsMin": "",
"Connections": "",
},
cloudprovider.REDIS_METRIC_TYPE_OPT_SES: {
"QpsMin": "",
"Commands": "",
},
cloudprovider.REDIS_METRIC_TYPE_CACHE_KEYS: {
"KeysMin": "",
"Keys": "",
},
cloudprovider.REDIS_METRIC_TYPE_CACHE_EXP_KEYS: {
"ExpiredKeysMin": "",
"Expired": "",
},
cloudprovider.REDIS_METRIC_TYPE_DATA_MEM_USAGE: {
"StorageMin": "",
"MemUsed": "",
},
} {
for metricName, tag := range metricNames {
metrics, err := self.GetMonitorData("QCE/REDIS", metricName, opts.StartTime, opts.EndTime, opts.RegionExtId, "instanceid", opts.ResourceIds)
metrics, err := self.GetMonitorData("QCE/REDIS_MEM", metricName, opts.StartTime, opts.EndTime, opts.RegionExtId, "instanceid", opts.ResourceIds)
if err != nil {
log.Errorf("GetMonitorData error: %v", err)
continue