问题描述
我使用 client-go
使用核心 client-go 客户端的 Get
方法读取 K8s 容器资源使用情况,但每隔一段时间重新获取 K8s 对象似乎是错误的方法。定期获取 K8s 容器状态更改的更好方法是什么?
解决方法
您将使用运行 API 监视程序的 Informer,该监视程序从 kube-apiserver 接收推送更新。尽管如此,您可能会发现使用像 Kubebuilder 这样的操作员支持框架之一更容易,或者至少直接使用底层控制器运行时库,因为原始 client-go 可能有点难以配置稳定的通知者。无论如何都可以。