Closed garloff closed 1 year ago
Just my two cents:
Thanks a lot for coming up with those suggestions!
Hi@all,
Suggestion 1 - agree Suggestion 2 - agree Suggestion 3 26/28 are to much it is hard to fit all use cases. so a set of flavors with 2 and 4 CPU could be mandatory and more are recommandations Suggestion 4 speaking names instead of cryptic names both schemes need an explanation but speaking names could be a better first user experience (the first user is often a manager instead of an administrator) for more details please have a look to the metadata i made an example for a scheme Suggestion 5 - agree with a look to note 2 Suggestion 6 - agree Suggestion 7 disk size only as recommendation Suggestion 8 - agree Suggestion 9 Suggestion 10 Suggestion 11 longer duality Suggestion 12
i hope you can understand my bullet points
Suggestion 3: Number of flavors discussion. (@PSwatchmen)
Idea: Split mandatory list into a mandatory and recommended list.
26 seems completely reasonable (and convenient for user, @tibeer), commercial CSPs have more. But these are just general-purpose, if we start with special features, we'll could have many more.
Input @PSwatchmen @frosty-geek:
If we go for flavors without disks (i.e. downgrade the ones with disk to recommended), we should then push for usability of the diskless. Improve/document terraform, openstackclient, ansible.
Recommendation 4: cryptic names SCS-4V-16-50 vs. SCS-standard-medium-V-50 SCS-4V-16 vs. SCS-standard-medium-V
Long-term goal: Names don't matter any more, as we select flavors by discoverable properties (and the tools all have nice support for that, which is not currently the case). Agreement.
Medium-term: PS prefers the speaking names "-standard-medium" over "-4V-16", the SCS team does not.
A good approach to avoid the decision would be to have flavor aliases. Could be implemented by extra API (in front of nova) or by a nova improvement. (PoC exists #228) We could then even support a scheme that emulates AWS, StackIT, .... (@tibeer).
PS: Invest into discoverability and tool support for it to get quickly to a state where names are irrelevant instead of name aliases.
The SCS community had agreed on a standard flavor naming scheme and standard flavors back in 2021. The discussion was somewhat lengthy. In the process a document explaining the logic and a v1 flavor naming specification were agreed upon. This was considered to be a mandatory SCS standard on the IaaS layer since then. The software engineering rule that something that is not tested is (almost) always broken also hit us here: In summer 2022, we observed SCS cloud providers not implementing the standard fully correctly. Since then a checker tool has been created that can validate a flavor or generate a flavor name from parameters. A tool to check all flavors has been added and it is called from the compliance check test suite whose results are displayed on github. Our CSP partners were successful in becoming fully compliant in fall 2022.
Unfortunately, the original v1 proposal contains
:
in their names and certain k8s tools (OpenShift) use the infra flavor names as labels in Kubernetes, where:
is not allowed. This causes trouble running OpenShift on top of SCS IaaS with v1 flavor names. A v2 scheme was discussed and created.Unfortunately, the migration causes some pain for providers. In the Nuremberg Hackathon, we found out that not all SCS IaaS providers have a clear commitment to implement the v2 flavors and work with us to minimize the pain. This would be unfortunate, stripping SCS from one of the benefits where flavor related pain points for migrations and/or simultaneous multi-cloud deployments are addressed.
Currently, the SCS compliance specification allows for both v1 and v2 compliance and the clouds are checked for both. However, this is currently scheduled to end on October 2023. The SCS project leader wants to have an agreed strategy long before October comes and has thus written a discussion document: Why do we need to standardize flavors and flavor names.
The document breaks down the discussion into 12 suggestions. Some of them might not be controversial at all, some may be. The author would like to invite everyone to comment on the suggestions. He would also like to suggest that anyone expressing his/her agreement or disagreement or extra consideration does relate it to a specific suggestion (or set of suggestions). For this, issues on each suggestion have been created, so the discussion does not get confusing. Of course the author might have overlooked important aspects for this discussion, so it is possible that discussion topics beyond the 12 suggestions pop up. Additional issues might be opened up and linked here then. Global discussion (comments affecting many of the suggestions at once) can happen here, would still be good to be precise on what aspect is being commented on.