Skip to content
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

Add RootDiskType, RootDiskSize handling feature #974

Conversation

jihoon-seo
Copy link
Member

@jihoon-seo jihoon-seo commented Nov 15, 2021

[Related links]

[사용 방법]
MCIS/VM 생성 시, VM 명세에 다음과 같이 명시

				"rootDiskType": "",
				"rootDiskSize": "77"

[테스트 결과]
AWS 에 대해
TB -> SP 통해서 VM 만들 때
RootDiskSize 를 명시하면 적용이 되는 것은 확인했습니다.
image
(참고: cloud-barista/cb-spider#531 )

@jihoon-seo
Copy link
Member Author

[Disk 와 관련된 field 관련]

Spider:
VMInfo struct
기존에는 VMBootDisk, VMBlockDisk 만 있었으나

	VMBootDisk  string // ex) /dev/sda1
	VMBlockDisk string // ex)

이번RootDiskType, RootDiskSize, RootDeviceName 를 추가하시면서
VMBootDisk 는 deprecate 예정이라고 주석을 다셨습니다.

	RootDiskType	string  // "SSD(gp2)", "Premium SSD", ...
        RootDiskSize	string  // "default", "50", "1000" (GB)
	RootDeviceName	string // "/dev/sda1", ...
	VMBootDisk  	string // Deprecated soon

	VMBlockDisk string // ex)

Tumblebug:
TbVmInfo struct
현재VMBootDisk, VMBlockDisk 가 있으며

	VMBootDisk  string     `json:"vmBootDisk"` // ex) /dev/sda1
	VMBlockDisk string     `json:"vmBlockDisk"`

이 PR에서 RootDiskType, RootDiskSize, RootDeviceName 를 추가하고 있습니다.

	RootDiskType   string     `json:"rootDiskType"`
	RootDiskSize   string     `json:"rootDiskSize"`
	RootDeviceName string     `json:"rootDeviceName"`
	VMBootDisk     string     `json:"vmBootDisk"` // ex) /dev/sda1
	VMBlockDisk    string     `json:"vmBlockDisk"`

[TB 정책]
필드 존재 여부 및 이름을 SP와 동일하게 할 필요는 없으며
오히려 TB 에서 독립적/자체적으로 정의 및 사용해 오고 있었습니다.

[TB 향후 방향]
TbVmInfo struct 에 있는 5개 필드에 대해

	RootDiskType   string     `json:"rootDiskType"`
	RootDiskSize   string     `json:"rootDiskSize"`
	RootDeviceName string     `json:"rootDeviceName"`
	VMBootDisk     string     `json:"vmBootDisk"` // ex) /dev/sda1
	VMBlockDisk    string     `json:"vmBlockDisk"`

중복성, API 하위호환성 등을 고려하여
추후 정리/통폐합 하면 좋을 것 같습니다. 😊

@seokho-son
Copy link
Member

@jihoon-seo
감사합니다.. ^^

음... 일단 제 생각에는..
해당 기능은 CB-Spider에서도 아직 미완성이 아닐까 싶습니다.
CB-TB 입장에선 어느 정도 안정화가 진행되고 나면 통합하면 좋을 것 같기도 합니다.

다만 요청 필드에 omit 처리를 해주셔서, 사용자가 굳이 입력하지 않으면, 동작하지 않긴 하겠군요..^^

테스트 스크립트에 관련 필드에 대한 예시 값이 입력되어 있는데,
릴리스 타겟하고 있는 6종 CSP에 대해서 오류는 발생하지 않는 상황이려나요?

@jihoon-seo
Copy link
Member Author

@seokho-son

해당 기능은 CB-Spider에서도 아직 미완성이 아닐까 싶습니다.

네 그런 것 같습니다 😊

테스트 스크립트에 관련 필드에 대한 예시 값이 입력되어 있는데,
릴리스 타겟하고 있는 6종 CSP에 대해서 오류는 발생하지 않는 상황이려나요?

일단 이 PR에서는 AWS만 테스트해 보았으며
cloud-barista/cb-spider#348 (comment) 를 보면
현 상황은 다음과 같습니다.

CSP Status
1. AWS 완료
2. Azure 완료
(Size변경제외)
3. GCP 완료
4. Alibaba 완료
5. Tencent 완료
6. IBM 적용불가

위의 상황을 고려하여,

CB-TB 입장에선 어느 정도 안정화가 진행되고 나면 통합하면 좋을 것 같기도 합니다.

이렇게 하는 것이 좋을 것 같습니다. 😊

@jihoon-seo jihoon-seo added the hold Need to hold merge label Nov 17, 2021
@seokho-son seokho-son added wip working in progress (do not merge) and removed hold Need to hold merge labels Dec 7, 2021
@jihoon-seo
Copy link
Member Author

최신 upstream/main 으로 rebase 한 뒤
cloud-barista/cb-spider#536 (comment) 에 따라
TB에서는 AWS에 대해서 테스트해 보았더니
RootDiskSize 를 명시했을 때 적용이 되는 것을 확인했습니다.

image

@jihoon-seo jihoon-seo force-pushed the 211115_Add_RootDiskType_RootDiskSize_handling_feature branch from 81ef8a6 to e83ad67 Compare March 24, 2022 09:21
Comment on lines 205 to 206
RootDiskType string `json:"rootDiskType,omitempty"`
RootDiskSize string `json:"rootDiskSize,omitempty"`
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
RootDiskType string `json:"rootDiskType,omitempty"`
RootDiskSize string `json:"rootDiskSize,omitempty"`
RootDiskType string `json:"rootDiskType,omitempty" example:"default, TYPE1, ..."` // "", "default", "TYPE1", AWS: ["standard", "gp3"], Azure: ["PremiumSSD", "StandardHHD"], GCP: ["pd-standard", "pd-extreme"], ALIBABA: ["cloud_efficiency", "cloud_ssd"], TENCENT: ["CLOUD_PREMIUM", "CLOUD_SSD"]
RootDiskSize string `json:"rootDiskSize,omitempty" example:"default, 30, 42, ..."` // "default", Integer (GB): ["50", ..., "1000"]

이런 식으로 라도 예시를 제공해줘야 할 것 같습니다. :)

https://docs.google.com/spreadsheets/d/1Y-GoZhr9DwCSJ8IhZk4tEPvbplQeQ3lUiKyOMjHO14Q/edit#gid=413527211

@seokho-son
Copy link
Member

@jihoon-seo

예시 제공 관련 내용만 추가한 다음에 머지하고,
(혹시 모르니 최신 main으로 리베이스 필요)

다른 CSP도 시험해보면 어떨까 합니다.

@seokho-son seokho-son removed the wip working in progress (do not merge) label Mar 25, 2022
@jihoon-seo jihoon-seo force-pushed the 211115_Add_RootDiskType_RootDiskSize_handling_feature branch from e83ad67 to 4e32295 Compare March 25, 2022 09:13
@jihoon-seo
Copy link
Member Author

jihoon-seo commented Mar 25, 2022

@seokho-son rebase 하였고,
다음 링크들을 참고하여 RootDiskType 예시를 좀 더 추가했습니다.

[Swagger 화면]
image

Copy link
Member

@seokho-son seokho-son left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM :0

@seokho-son seokho-son merged commit dd2274f into cloud-barista:main Mar 28, 2022
@jihoon-seo jihoon-seo deleted the 211115_Add_RootDiskType_RootDiskSize_handling_feature branch March 28, 2022 02:26
@jihoon-seo
Copy link
Member Author

jihoon-seo commented Mar 28, 2022

Alibaba 이용 시 주의 사항: cloud-barista/cb-spider#586

  • 최신 Image ID 를 사용해야 오류가 나지 않음
  • 현재 (2022-03-28), ubuntu_18_04_x64_20G_alibase_20220208.vhd 도 최신이 아닐 수도 있음
  • 앞으로도 주기적인 업데이트가 필요할 것임

  • ap-northeast-1a
  • ap-northeast-1b

에 대해서
The resource in the specified zone is no longer available for sale. Please try other regions and zones. 에러가 나네요..

  • ap-northeast-1c 시도해보면 불가능하다고 나옵니다.

Resource you requested is not available in this region or zone.

@seokho-son
Copy link
Member

@jihoon-seo

https://www.alibabacloud.com/help/en/doc-detail/89155.htm

c가 없어졌어요;

Japan (Tokyo)

Tokyo Zone A ap-northeast-1a
Tokyo Zone B ap-northeast-1b

@jihoon-seo
Copy link
Member Author

GCP:
cloud-barista/cb-spider#592
이러한 이슈가 있으며,

해당 문제에 해당되지 않은 경우 VM 생성이 되는 것을 확인했습니다.
image

@jihoon-seo
Copy link
Member Author

Azure: VM 생성이 되는 것을 확인했습니다.
image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Make user can specify DiskType and DiskSize when creating VM
2 participants