Skip to content

Umbrella issue for handling Informer Permission Errors and Probes #1422

Closed
@csviri

Description

@csviri

This issue is to cover more related issues and come up with a design how to handle them, see:

Summary

Informers are by definition not working if related RBAC is not configured or miss configured.

  1. Either when an operator starts up and there are no proper permissions or
  2. when running and some permissions are revoked.

This is true both for informers for primary and secondary resources.

When a permission is revoked what happens is that Informer (from fabri8 client) will try retry few times but eventually just stops. (TODO verify this behavior, also configurability)

Note that framework however supports dynamically changing watched namespaces, so it can again happen a new namespace added but there are no permissions. It might be desirable to have the operator functioning on the former namespaces.

There are multiple ways to solve this:

  1. Just stop/restart the operator when an informer is not started properly
  2. Try to reconnect the informer (infinitely)
  3. Expose metrics regarding the health of informers so readyness probes can be added that eventually kill the operator.

@andreaTP propsed that having a callback function might be useful too.

Metadata

Metadata

Assignees

Labels

featurekind/featureCategorizes issue or PR as related to a new feature.

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions