diff --git a/pkg/compute/guestdrivers/esxi.go b/pkg/compute/guestdrivers/esxi.go index 7ca419a5e9..eef2a8d7a3 100644 --- a/pkg/compute/guestdrivers/esxi.go +++ b/pkg/compute/guestdrivers/esxi.go @@ -54,6 +54,8 @@ func (self *SESXiGuestDriver) DoScheduleMemoryFilter() bool { return true } func (self *SESXiGuestDriver) DoScheduleSKUFilter() bool { return false } +func (self *SESXiGuestDriver) DoScheduleStorageFilter() bool { return true } + func (self *SESXiGuestDriver) GetHypervisor() string { return api.HYPERVISOR_ESXI } diff --git a/pkg/multicloud/esxi/host.go b/pkg/multicloud/esxi/host.go index c48f921649..af753d8aaf 100644 --- a/pkg/multicloud/esxi/host.go +++ b/pkg/multicloud/esxi/host.go @@ -565,12 +565,16 @@ func (self *SHost) getStorages() []*SHostStorageAdapterInfo { } func (self *SHost) GetStorageSizeMB() int { - size := 0 - storages := self.GetStorageInfo() - for i := 0; i < len(storages); i += 1 { - size += storages[i].Size + storages, err := self.GetIStorages() + if err != nil { + log.Errorf("SHost.GetStorageSizeMB: SHost.GetIStorages: %s", err) + return 0 } - return size + var size int64 + for _, stor := range storages { + size += stor.GetCapacityMB() + } + return int(size) } func (self *SHost) GetStorageType() string {