-
Notifications
You must be signed in to change notification settings - Fork 47
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Alibaba error in testing VM creation for multiple regions #660
Comments
spec: t2.small 로 했을 때는 아래와 같은 에러메시지들이 나왔었습니다.
이미지 세부 정보에 관련 항목이 있는 듯한데, 이미지와의 조합 이슈일 수도 있겠습니다.
|
"systemMessage": "{"message":"SDK.ServerError\nErrorCode: InvalidResourceType.NotSupported\nRecommend: https://next.api.aliyun.com/troubleshoot?q=InvalidResourceType.NotSupported\\u0026product=Ecs\\nRequestId: 6C3C6DE3-2C18-3F26-B0FB-F34127A65B46\nMessage: user order resource type [vpc][ecs.g7.large] not exists in [us-west-1a]"}\n", 해당 메시지는 아마도 잘못생성된 메시지 인 것 같습니다. [spec][ecs.g7.large] 또는 [vpc][VPC-idxxx] 형태이어야 할 것 같네요. |
Spec: ecs.g7.large 로 하면 아래 메시지가 주로 나옵니다. (g7, 범용 인스턴스 제품군) "systemMessage": "{"message":"SDK.ServerError\nErrorCode: InvalidParameter.Conflict\nRecommend: https://next.api.aliyun.com/troubleshoot?q=InvalidParameter.Conflict\\u0026product=Ecs\\nRequestId: A594C567-C11C-3B30-BBAA-5155BCB9285C\nMessage: The specified disk category (cloud_efficiency) is not support the specified instance type."}\n", |
@seokho-son @powerkimhub 그 외에는 생성할 지역과 서버 타입에 맞는 디스크 타입과 사이즈를 지정해주셔야 하는데 맞지 않아서 그런 것 같습니다. 참고로, Alibaba 드라이버에 아래의 두 값을 전달 하지 않거나 "default"라는 문자열을 전달하면 관련 로직이 동작하지 않고 API 기본 값으로 생성됩니다. (cb-spider가 중간에 default 값을 변경하기 때문에 cb-spider에서 드라이버에 두 파라메터의 값을 전달하지 않도록 수정하면 될 것같네요.) vmReqInfo.RootDiskType == "" 190 라인
|
|
|
@dev4unet @powerkimhub 정보 감사합니다. :) 일단 CB-SP에서 코드가 수정되어도, 바로 CB-TB와 연동하여 테스트가 어려운 시점이라 살짝 우회하고 있다가, 향후에 업데이트된 SP와 연동해보도록 하겠습니다. |
storage type과 instance type 관련 사항 참고 |
https://github.com/cloud-barista/cb-spider/blob/master/cloud-driver-libs/cloudos_meta.yaml#L37 현재 활성화 되어 있는 cloud_efficiency / cloud / cloud_ssd 중에서 cloud_ssd 는 deprecated 되는 것으로 보입니다. (#rootdisktype: cloud_efficiency / cloud / cloud_ssd / cloud_essd) 주석 처리된 cloud_essd 를 추가하는 것이 좋을 것 같습니다. 특히, 범용 vm 사양에 해당하는 g6, g7 패밀리가 모두 essd 만 지원하고 있네요.
참고하시기 바랍니다.
|
일단, CB-TB에서 Alibaba 리전(24개)별로 가용한, 관련 PR: cloud-barista/cb-tumblebug#1120 가용한 조합 예시가 필요하신 경우 참고하시기 바랍니다.
|
@dev4unet @dogfootman @choryang [Alibaba/AWS/Tencent/GCP]
|
|
@dev4unet @dogfootman @choryang [Alibaba] RootDiskType 및 RootDiskSize 설정 처리 부분에서...
[관련 code block] 202 if vmReqInfo.RootDiskSize == "" || strings.EqualFold(vmReqInfo.RootDiskSize, "default") {
203 //▒뵒▒뒪▒겕 ▒젙蹂닿▒ ▒뾾▒쑝硫▒ 嫄대뱶由ъ▒ ▒븡▒쓬.
204 } else {
205
206 iDiskSize, err := strconv.ParseInt(vmReqInfo.RootDiskSize, 10, 64)
207 if err != nil {
208 cblogger.Error(err)
209 return irs.VMInfo{}, err
210 }
211
212 // cloudos_meta ▒뿉 DiskType, min, max 媛▒ ▒젙▒쓽
213 cloudOSMetaInfo, err := cim.GetCloudOSMetaInfo("ALIBABA")
214 arrDiskSizeOfType := cloudOSMetaInfo.RootDiskSize
215
216 fmt.Println("arrDiskSizeOfType: ", arrDiskSizeOfType)
217
218 type diskSize struct {
219 diskType string
220 diskMinSize int64
221 diskMaxSize int64
222 unit string
223 }
224
225 diskSizeValue := diskSize{}
226 // DiskType▒씠 ▒뾾▒쑝硫▒ 泥ル쾲吏멸컪▒쓣 ▒궗▒슜
227 if vmReqInfo.RootDiskType == "" || strings.EqualFold(vmReqInfo.RootDiskType, "default") {
228 diskSizeArr := strings.Split(arrDiskSizeOfType[0], "|")
229 diskSizeValue.diskType = diskSizeArr[0]
230 diskSizeValue.unit = diskSizeArr[3]
231 diskSizeValue.diskMinSize, err = strconv.ParseInt(diskSizeArr[1], 10, 64)
232 if err != nil {
233 cblogger.Error(err)
234 return irs.VMInfo{}, err
235 }
236
237 diskSizeValue.diskMaxSize, err = strconv.ParseInt(diskSizeArr[2], 10, 64)
238 if err != nil {
239 cblogger.Error(err)
240 return irs.VMInfo{}, err
241 }
242 } else { |
@dev4unet @dogfootman @choryang
|
|
@powerkimhub 네, 둘 다 확인해 보니까 202라인의 if문에서 처리해야 할 부분이 GCP하고 Alibaba 모두 말씀하신 부분의 로직이 추가되어 있었네요-_-;;; |
|
@powerkimhub @dev4unet @dogfootman
Disk Type이 비어있는 경우, Disk Type을 알 수 없어서 사용자가 설정한 Size에 대한 Min/Max 체크를 할 수가 없습니다. |
@choryang @dogfootman @dev4unet
|
Tencent, Alibaba Rootdisk type, size 로직 보완 - 이슈#660 반영
@dev4unet @dogfootman @choryang
|
What happened
로 VM 생성 요청시, 많은 리전에서 오류 발생
What you expected to happen
How to reproduce it (as minimally and precisely as possible)
CB-TB 스크립트를 이용하여, 알리바바로 구성된 VM 생성
Anything else we need to know?
결과에서, failed 된 vm 항목의 systemMessage 참고.
Environment
The text was updated successfully, but these errors were encountered: