-
Notifications
You must be signed in to change notification settings - Fork 24
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
Support eventual consistency #298
Comments
Maybe we can also have an optional maximum time before Ankaios stops to reach desired state. The parameter could be part of a config file (see #302). |
Kubernetes uses a backoff strategy capped at 300 seconds (5 minutes): There are different capped exponential backoff algorithms that can be used. A small comparison can be found here: According to the AWS comparison we can just use some sort of full or decorated jitter, e.g.
where |
We should probably think about adding a new substate to the |
An optional maximal time for the retry can be configured centrally at the server as a start. We already added the possibility to distribute config options to agents using the |
Just to make it sure: The capping at 5 minutes in K8S does not mean, that all attempts are stopped after 5 minutes but that the maximum time between two attempts is 5 minutes. |
Yes, the backoff delay is capped (see proposed formula above). |
Description
When applying a new manifest, currently Ankaios has a fixed number of retries when the start fails and after that finally gives up. The workload remains in state Pending, subState StartingFailed. There can be different reasons why the start fails like
While some of the problems cannot be solved without changing the manifest (e.g. invalid options) others might disappear after some time (e.g. registry not available or folder not existing).
Some users expect that Ankaios constantly tries to reach the desired state and also that Ankaios provides the result of the latest try (e.g. Podman error message).
Goals
ank get workloads
shall provide the latest result.ank apply
shall return after the first attemptFinal result
Summary
To be filled when the final solution is sketched.
Tasks
The text was updated successfully, but these errors were encountered: