kyma-project / kyma-environment-broker

Kyma Environment Broker
Apache License 2.0
0 stars 21 forks source link

KEB: MIgrate from provisioner to Kyma Infrastructure Manager #791

Open PK85 opened 4 months ago

PK85 commented 4 months ago

Acceptance Criteria

Phase 1: (driving system Provisioner for creation, Runtime CR spec is not passed to gardener, Runtime CR status is already present)

Expected result from phase 1:

Phase 2: (driving system KIM for creation, Provioner spec is not passed to gardener, Runtime CR status is already present)

Expected result from phase 2:

Phase 3:

Expected result from phase 3:

piotrmiskiewicz commented 3 months ago

Technical detail: Do not use InputCreator for creating Runtime CR. All information we need to create the CR we have in the Operationb and Provisioning Parameters.

jaroslaw-pieszka commented 1 month ago

@kyma-project/framefrog We need to clarify some fields (presence, values):

Provider specific fields (sent to provisioner):

piotrmiskiewicz commented 1 month ago

@kyma-project/framefrog I have a questions regarding a time of migration and the update. Let's imagine a scenario:

  1. SKR is created using Provisioner.
  2. Migration to KIM is executed (runtime CR is created).
  3. The customer updates the SKR (for example changes the machine type)
  4. How KEB should know if the Provisioner should be called with an update mutation or not? Runtime CR will always be updated if exists.
akgalwas commented 1 month ago

@kyma-project/framefrog We need to clarify some fields (presence, values):

  • spec.shoot.provider.workers.name - described as optional, but required - what name should we provide, will we select workers group later on by name or index (assigning parameters to workers[0] or worker of specific name)
  • LicenceType - it is the CRD spec, do you use it, is it optional, should it be in the spec or should it be a label
  • Networking.Filter.Egress.Enabled - value based on LicenceType - is the value the same as ShootNetworkingFilterDisabled in provisioner contract?
  • euAccess - present in provisioner contract, not in Runtime CRD - should we add it as a label or should the spec be extended?
  • ExposureClassName- we passed it for sap-converged-cloud - should we somehow support it?
  • EnableKubernetesVersionAutoUpdate - was in the contract with provisioner - not used/forgotten?
  • EnableMachineImageVersionAutoUpdate - was in the contract with provisioner - not used/forgotten?

Provider specific fields (sent to provisioner):

  • Azure: VnetCidr,EnableNatGateway, IdleConnectionTimeoutMinutes)
  • AWS: VpcCidr, EnableIMDSv2
  • sap-converged-cloud: FloatingPoolName, CloudProfileName, LoadBalancerProvider

@jaroslaw-pieszka Please see my comments below

We agreed the following:

For more details on the components responsibilities please see this ADR document.

Answers: