multycloud / multy

Multy - Easily deploy multi cloud infrastructure. Write cloud-agnostic config deployed across multiple clouds
https://multy.dev
Apache License 2.0
641 stars 34 forks source link

Support more sizes in Virtual Machines #188

Open goncalo-rodrigues opened 2 years ago

goncalo-rodrigues commented 2 years ago

Unify the following types:

Not all types / sizes are available in all regions, so ideally we'd catch that and return an unified error message.

mattvella07 commented 2 years ago

@goncalo-rodrigues I'll give this one a try

mattvella07 commented 2 years ago

I see the current sizes have just a micro, medium, and large, so should there be micro, medium, and large for each type? Ex) COMPUTE_MICRO, COMPUTE_MEDIUM, COMPUTE_LARGE, etc.

goncalo-rodrigues commented 2 years ago

For general purpose CPUs, both AWS and Azure seem to go to 8 cores and 32 GB (AWS is t2.2xlarge and Azure is Standard_B8ms). So you can add nano, large, xlarge and 2xlarge.

For general purpose these are https://aws.amazon.com/ec2/instance-types/ (t2) and https://docs.microsoft.com/en-us/azure/virtual-machines/sizes-b-series-burstable. You have to check what the other categories look like and add all the sizes that are similar between both clouds

mattvella07 commented 2 years ago

@goncalo-rodrigues Is this what you were thinking? I did it for General Purpose and Compute so far and wanted to see if this was on the right track https://github.com/multycloud/multy/compare/main...mattvella07:feat-vm-sizes?expand=1

goncalo-rodrigues commented 2 years ago

Yap, that's going in the right direction!

I see you chose C7g for AWS but C4 is more similar to azure's offering. I recommend you use this calculator to get the mapping: https://www.justaftermidnight247.com/insights/aws-to-azure-instance-mapping-for-easy-comparison/

Also, rename the previous ones to GENERAL_ as well so that the naming convention is uniform

mattvella07 commented 2 years ago

Thanks for that link, it is very helpful! There doesn't seem to be any overlap for Storage and GPU instance types, according to that link

goncalo-rodrigues commented 2 years ago

Yea you're right. I think we can leave those off for now and reassess when someone needs them