You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
KMC is currently relying on KEB as a dependency to retrieve the list of billable clusters, see also the arch diagram.
Hereby, a REST API gets used which was not designed for that scenario and is cumbersome to use. It requires custom paging logic and complicated filtering.
Instead of relying on KEB as the source of truth on if a cluster should be billed effectively, the new infrastructure manager (KIM) with its Runtime CRD should be used. The API can be easily watched by the native kube client of the KMC controller and newly added or removed clusters can be easily observed.
Goal: Adjust the KMC logic to not rely on the KEB API anymore, but instead use the Runtime API of KIM.
Criterias
There is no dependency to KEB anymore (updated arch diagram)
RBAC settings have new read permissions for Runtime CR
The cluster discovery logic is based on Runtime resources
It is aligned on what criterias to watch for billing
Remarks
The current status of a Runtime CR reflects the gardener shoot status mainly, which will not be sufficient to decide on the "to bill or not to bill" decision.
The decision when to start billing should be:
The user requested a cluster -> Runtime CR exists
The cluster is ready to use / user can access it -> Runtime CR state was "ready" once
The decision when to stop billing should be:
The user requested to delete the cluster -> Runtime CR is requested to be deleted
In best case, KIM will document in the CR when the cluster was ready for the first time and when it was requested to be deleted, maybe in additional status attributes, like:
provisioned_at
deletion_requested_at
That attributes will be also helpful later on when deciding to do a final deletion after a hibernation grace period.
The text was updated successfully, but these errors were encountered:
This issue has been automatically marked as stale due to the lack of recent activity. It will soon be closed if no further activity occurs.
Thank you for your contributions.
Description
KMC is currently relying on KEB as a dependency to retrieve the list of billable clusters, see also the arch diagram.
Hereby, a REST API gets used which was not designed for that scenario and is cumbersome to use. It requires custom paging logic and complicated filtering.
Instead of relying on KEB as the source of truth on if a cluster should be billed effectively, the new infrastructure manager (KIM) with its Runtime CRD should be used. The API can be easily watched by the native kube client of the KMC controller and newly added or removed clusters can be easily observed.
Also that change will be an enabler for #90
Goal: Adjust the KMC logic to not rely on the KEB API anymore, but instead use the Runtime API of KIM.
Criterias
Remarks
The current status of a Runtime CR reflects the gardener shoot status mainly, which will not be sufficient to decide on the "to bill or not to bill" decision.
The decision when to start billing should be:
The decision when to stop billing should be:
In best case, KIM will document in the CR when the cluster was ready for the first time and when it was requested to be deleted, maybe in additional status attributes, like:
That attributes will be also helpful later on when deciding to do a final deletion after a hibernation grace period.
The text was updated successfully, but these errors were encountered: