我正在开发一个项目,该项目监视命名空间中所有对象种类的资源,并执行相同的操作作为对所述资源状态变化的响应。资源种类包括 CRD,并且可能因一个命名空间而异,具体取决于命名空间中创建的资源。
是否存在为命名空间中存在的所有对象种类动态创建控制器的已知模式?
我希望实现的一个密切示例是一个观察者,它观察命名空间中的所有资源,并在所述资源发生变化时向接收者发送消息。
以这个场景为例,这个 watcher 在启动时会执行以下操作:
- 对于每个带有注释的命名空间,
watch-namespace: true
请执行以下操作: - 将命名空间中每个资源的清单发送给接收者
- 当资源改变时,将新的清单发送给接收者
观察者必须能够观察命名空间中当前存在的或将来创建的所有种类。同样重要的是要注意,这个观察者不会改变或协调它正在观察的资源的状态。