我正在使用 python kubernetes 客户端来控制资源的部署。我想一次轮询多个资源的状态,以便在给定的一组资源可用时提供近乎实时的反馈。现在我必须单独查询每个资源,这对于每组资源由 N 个用户扩展的系统来说似乎过多(因此,如果有 6 个资源,则会有 N(6) 个状态检查请求)。
有没有办法查询 API 并获取与给定标签选择器匹配的所有资源的状态?如果没有,我应该考虑其他方法吗?
获取与给定标签选择器匹配的所有资源的状态?
我首先看看kubectl它是如何实现的,因为在足够高的详细级别下,它显示了实际的底层 HTTP 事务:
kubectl --v=8 get deploy,pod -l app.kubernetes.io/name=something
Run Code Online (Sandbox Code Playgroud)
似乎发出两个单独的GET调用,所以我相信它只是让它们同时运行,然后等待线程。
至于你问题的另一半,
kubectl --v=8 get all -l app.kubernetes.io/name=something
Run Code Online (Sandbox Code Playgroud)
与 CSV 版本执行相同的操作,但似乎执行类似的操作kubectl api-resources(或者可能有一个它所考虑的内容的硬编码列表all?),然后执行相同的操作:将多个GET运行并等待线程
您可能有兴趣探索如何kubectl rollout status运作,看看这是否对您有帮助。我还尝试添加--watch并被get all告知:
F0730 21:55:36.819494 2887268 helpers.go:115] 错误:您只能指定单一资源类型
| 归档时间: |
|
| 查看次数: |
1370 次 |
| 最近记录: |