-
Notifications
You must be signed in to change notification settings - Fork 22
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
Sovereign Cloud/NS2: Configurable HAP mode per plan #1520
Comments
1 ) Result of my analysis:
Above rules are hardcoded in the KEB code. 2 ) Lets check if proposal from Wojciech would work, implementation proposal: https://github.com/kyma-project/kyma-environment-broker/pull/1609/files which keeps hardcoded rules + adds configuration option that is resolved at the end. Configuration from the above PR:
3 ) Example configurations and results Example 1:
Result 1: Example 2:
Result 2: Example 3:
Result 3: Example 4: Let say we want to remove hardcoded rules |
The example no 2 from #1520 (comment) has been dismissed because shared pools do not use euAccess functionality. To address the above comments and cover all cases (especially about removing hardcoded configuration) I have analyzed the existing pools thinking how we can implement it starting from "zero". Let's imaging that HAP pool functionality does not exist yet and we are doing selection of pools based only on simple HAP type (without any regions). The environment is populated with SecretBindings with label 'hyperscaler-type' (a new label, the same name as existing hyperscaler-type just for convenience, name can be tailored later) forming a pool of dedicated bindings per hyperscaler type that the plan is provisioned on: In this case KEB selects a binding based on region that is a physical attribute known during the provisioning process. This might be simple label construction process without any complicated implementation. Now adding KEB can simplify its logic and use the rules only the deciding if To make the selection replicate the current implementation we need to add euAccess pools selection. All of them are currently based on region selection, however, we do use another label Because region selection is not only need for euAccess I recommend using the first approach, below shows the final configuration for all of our pools by adding KSA and open stack regional pools: When selecting second or hybrid approach we could implement dynamic pool labels evaluation (aka. knowing what labels to add to the secret bindings query) based on helm values but I not recommend such approach since it is harder to maintain. The selection algorithm might look like this: Additional options include adding third configuration value for mapping of |
🎨 NEW DESIGN CHANGES 🎨 Initial functionality reorganization in POC PR together with new configuration examples: https://github.com/kyma-project/kyma-environment-broker/pull/1609/files#diff-6927a77757e4fe1d3078c5b81ce28e6d78d9623a161eab6f806f906d8494c0ecR245. |
If there is any sorting involved when calculating priority we should be absolutely sure that only one item has the highest priority and the selection is unambiguous. To avoid the case where we have two top priority items and select one of them kind of randomly. Two top priority rules (rule1 and rule 16) Moreover we should consider checking this not only while parsing configuration but also when we try to find secret binding (having the actual values of plan, provider, hyperscaler region and platform region). |
Description
Currently it is hardcoded in KEB provisioning process whether to use "shared" or "dedicated" hyperscaler account pool (HAP) via account provider. For trial and sap-converged-cloud plans, shared pool, while for others, the "dedicated" account pool is used.
The pool mode (i.e. "shared" or "dedicated") shall be made configurable per plan in KEB , or otherwise it shall be made configurable which plans should use shared HAP. The provision process shall be adjusted to consider the pool mode configuration for the given plan of the Kyma runtime when interacting with the account provider.
Reasons
Kyma runtime Sovereign Cloud / NS2 would work using shared pools for all supported plans.
Attachments
See how HAP works now: https://github.com/kyma-project/kyma-environment-broker/blob/main/docs/contributor/03-10-hyperscaler-account-pool.md
AC
Progress:
The text was updated successfully, but these errors were encountered: