From 4f8c883fc89c8562d30349905680dc7fa7d50fa7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B1=88=E8=BD=A9?= Date: Mon, 8 Jan 2024 11:18:03 +0800 Subject: [PATCH] fix(region): support aliyun essd entry (#19184) --- pkg/apis/compute/storage_const.go | 1 + pkg/compute/guestdrivers/aliyun.go | 6 ++++++ 2 files changed, 7 insertions(+) diff --git a/pkg/apis/compute/storage_const.go b/pkg/apis/compute/storage_const.go index ced8e0c373..aa81f4074b 100644 --- a/pkg/apis/compute/storage_const.go +++ b/pkg/apis/compute/storage_const.go @@ -44,6 +44,7 @@ const ( STORAGE_CLOUD_ESSD_PL2 = compute.STORAGE_CLOUD_ESSD_PL2 // 单盘最高随机读写IOPS 10万 STORAGE_CLOUD_ESSD_PL3 = compute.STORAGE_CLOUD_ESSD_PL3 // 单盘最高随机读写IOPS 100万 STORAGE_CLOUD_AUTO = compute.STORAGE_CLOUD_AUTO // ESSD AutoPL + STORAGE_CLOUD_ESSD_ENTRY = "cloud_essd_entry" // ESSD Entry云盘 STORAGE_EPHEMERAL_SSD = compute.STORAGE_EPHEMERAL_SSD // 单块本地SSD盘, 容量最大不能超过800 GiB STORAGE_LOCAL_HDD_PRO = compute.STORAGE_LOCAL_HDD_PRO // 实例规格族d1ne和d1搭载的SATA HDD本地盘 STORAGE_LOCAL_SSD_PRO = compute.STORAGE_LOCAL_SSD_PRO // 实例规格族i2、i2g、i1、ga1和gn5等搭载的NVMe diff --git a/pkg/compute/guestdrivers/aliyun.go b/pkg/compute/guestdrivers/aliyun.go index 79485d607d..af340786f2 100644 --- a/pkg/compute/guestdrivers/aliyun.go +++ b/pkg/compute/guestdrivers/aliyun.go @@ -76,6 +76,7 @@ func (self *SAliyunGuestDriver) GetStorageTypes() []string { api.STORAGE_CLOUD_ESSD, api.STORAGE_CLOUD_ESSD_PL2, api.STORAGE_CLOUD_ESSD_PL3, + api.STORAGE_CLOUD_ESSD_ENTRY, api.STORAGE_CLOUD_AUTO, api.STORAGE_PUBLIC_CLOUD, api.STORAGE_EPHEMERAL_SSD, @@ -153,6 +154,9 @@ func (self *SAliyunGuestDriver) ValidateCreateData(ctx context.Context, userCred case api.STORAGE_CLOUD_AUTO, api.STORAGE_CLOUD_ESSD_PL0: minGB = 40 maxGB = 32768 + case api.STORAGE_CLOUD_ESSD_ENTRY: + minGB = 10 + maxGB = 32768 } if i == 0 && (disk.SizeMb < 20*1024 || disk.SizeMb > 500*1024) { return nil, httperrors.NewInputParameterError("The system disk size must be in the range of 20GB ~ 500Gb") @@ -197,6 +201,7 @@ func (self *SAliyunGuestDriver) GetInstanceCapability() cloudprovider.SInstanceC {StorageType: api.STORAGE_CLOUD_ESSD, MaxSizeGb: 32768, MinSizeGb: 20, StepSizeGb: 1, Resizable: true}, {StorageType: api.STORAGE_CLOUD_ESSD_PL2, MaxSizeGb: 32768, MinSizeGb: 461, StepSizeGb: 1, Resizable: true}, {StorageType: api.STORAGE_CLOUD_ESSD_PL3, MaxSizeGb: 32768, MinSizeGb: 1261, StepSizeGb: 1, Resizable: true}, + {StorageType: api.STORAGE_CLOUD_ESSD_ENTRY, MaxSizeGb: 32768, MinSizeGb: 10, StepSizeGb: 1, Resizable: true}, {StorageType: api.STORAGE_CLOUD_AUTO, MaxSizeGb: 32768, MinSizeGb: 40, StepSizeGb: 1, Resizable: true}, {StorageType: api.STORAGE_PUBLIC_CLOUD, MaxSizeGb: 2000, MinSizeGb: 5, StepSizeGb: 1, Resizable: true}, {StorageType: api.STORAGE_EPHEMERAL_SSD, MaxSizeGb: 800, MinSizeGb: 5, StepSizeGb: 1, Resizable: true}, @@ -208,6 +213,7 @@ func (self *SAliyunGuestDriver) GetInstanceCapability() cloudprovider.SInstanceC {StorageType: api.STORAGE_CLOUD_ESSD, MaxSizeGb: 500, MinSizeGb: 20, StepSizeGb: 1, Resizable: true}, {StorageType: api.STORAGE_CLOUD_ESSD_PL2, MaxSizeGb: 32768, MinSizeGb: 461, StepSizeGb: 1, Resizable: true}, {StorageType: api.STORAGE_CLOUD_ESSD_PL3, MaxSizeGb: 32768, MinSizeGb: 1261, StepSizeGb: 1, Resizable: true}, + {StorageType: api.STORAGE_CLOUD_ESSD_ENTRY, MaxSizeGb: 32768, MinSizeGb: 10, StepSizeGb: 1, Resizable: true}, {StorageType: api.STORAGE_CLOUD_AUTO, MaxSizeGb: 32768, MinSizeGb: 40, StepSizeGb: 1, Resizable: true}, }, },