Skip to content

Revisit controller requeueing and poll interval #44

Description

@reshnm

Currently service providers suing the opencontrolplane-runtime are spending considerable amount of time to reconcile the onbaording cluster resources. Even a small amount of onboarding cluster resources are leading to increased CPU usage. In the logs one can see continuous logs of the follwing type:

{"level":"info","ts":"2026-07-29T11:11:52.544Z","logger":"ClusterAccess","msg":"Reconciling cluster access","controller":"external-secrets","controllerGroup":"external-secrets.services.open-control-plane.io","controllerKind":"ExternalSecretsOperator","ExternalSecretsOperator":{"name":"","namespa │
│ {"level":"debug","ts":"2026-07-29T11:11:52.544Z","logger":"ClusterAccess","msg":"Processing registration","controller":"external-secrets","controllerGroup":"external-secrets.services.open-control-plane.io","controllerKind":"ExternalSecretsOperator","ExternalSecretsOperator":{"name":"","namespace │
│ {"level":"debug","ts":"2026-07-29T11:11:52.544Z","logger":"ClusterAccess","msg":"Ensuring platform cluster namespace exists","controller":"external-secrets","controllerGroup":"external-secrets.services.open-control-plane.io","controllerKind":"ExternalSecretsOperator","ExternalSecretsOperator":{"name":" │
│ {"level":"debug","ts":"2026-07-29T11:11:52.561Z","logger":"ClusterAccess","msg":"Ensuring AccessRequest exists","controller":"external-secrets","controllerGroup":"external-secrets.services.open-control-plane.io","controllerKind":"ExternalSecretsOperator","ExternalSecretsOperator":{"name":"","nam │
│ {"level":"debug","ts":"2026-07-29T11:11:52.579Z","logger":"ClusterAccess","msg":"Updating AccessRequest","controller":"external-secrets","controllerGroup":"external-secrets.services.open-control-plane.io","controllerKind":"ExternalSecretsOperator","ExternalSecretsOperator":{"name":"","namespace" │
│ {"level":"info","ts":"2026-07-29T11:11:52.594Z","logger":"ClusterAccess","msg":"Successfully reconciled cluster access","controller":"external-secrets","controllerGroup":"external-secrets.services.open-control-plane.io","controllerKind":"ExternalSecretsOperator","ExternalSecretsOperator":{"name":" │
│ {"level":"info","ts":"2026-07-29T11:11:53.150Z","logger":"ClusterAccess","msg":"Reconciling cluster access","controller":"external-secrets","controllerGroup":"external-secrets.services.open-control-plane.io","controllerKind":"ExternalSecretsOperator","ExternalSecretsOperator":{"name":"","namespace":" │
│ {"level":"debug","ts":"2026-07-29T11:11:53.150Z","logger":"ClusterAccess","msg":"Processing registration","controller":"external-secrets","controllerGroup":"external-secrets.services.open-control-plane.io","controllerKind":"ExternalSecretsOperator","ExternalSecretsOperator":{"name":"","namespace":"pr │
│ {"level":"debug","ts":"2026-07-29T11:11:53.150Z","logger":"ClusterAccess","msg":"Ensuring platform cluster namespace exists","controller":"external-secrets","controllerGroup":"external-secrets.services.open-control-plane.io","controllerKind":"ExternalSecretsOperator","ExternalSecretsOperator":{"name":" │
│ {"level":"debug","ts":"2026-07-29T11:11:53.165Z","logger":"ClusterAccess","msg":"Ensuring AccessRequest exists","controller":"external-secrets","controllerGroup":"external-secrets.services.open-control-plane.io","controllerKind":"ExternalSecretsOperator","ExternalSecretsOperator":{"name":"","namespac │
│ {"level":"debug","ts":"2026-07-29T11:11:53.181Z","logger":"ClusterAccess","msg":"Updating AccessRequest","controller":"external-secrets","controllerGroup":"external-secrets.services.open-control-plane.io","controllerKind":"ExternalSecretsOperator","ExternalSecretsOperator":{"name":"","namespace":"pro │
│ {"level":"info","ts":"2026-07-29T11:11:53.198Z","logger":"ClusterAccess","msg":"Successfully reconciled cluster access","controller":"external-secrets","controllerGroup":"external-secrets.services.open-control-plane.io","controllerKind":"ExternalSecretsOperator","ExternalSecretsOperator":{"name":""," │
│

Even increasing the poll interval in ProviderConfigs doesn't seem to solve the situation completely.

It should be investigated what leads to continuous reconcile loops.
It should also be revisited how ready and non ready onboarding resources shall be handled in terms of continuous reconciliation.
Should non-healthy onboarding resources also reconciled based on the poll interval or should they use a exponential back-off?

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions