kubernetes - 如何使用 Java Api 从 Kubernetes 检索 pod 内存和 cpu 使用情况
问题描述
是否有 Java API 来检索 pod 的 CPU 和内存使用情况?我不是在寻找一个完整的监控解决方案,比如使用 Grafana 或 Prometheus 或不使用 kubectl top pod,而是想使用 Java API 检索当前使用情况。任何有关如何操作的示例或参考文档都会有很大帮助。
客户端库
https://kubernetes.io/docs/reference/using-api/client-libraries/
示例 - https://github.com/kubernetes-client/java#installation
类似的问题:
如何在 kubernetes 上获得 pod 的最大内存使用率和 cpu 使用率
来自度量服务器的 kubernetes Pod CPU 使用率(百分比)
谢谢。
解决方案
您可以安装Metrics Server,然后通过 API 服务器直接向Resource Metrics API发出 HTTP 请求来获取 Pod 的资源使用情况:
GET /apis/metrics/v1alpha1/namespaces/{namespace}/pods/{pod}
Resource Metrics API 似乎没有包含在官方Java 客户端库中。因此,您可能必须手动发出 API 请求。
推荐阅读
- devstack - 使用终端创建图像时,Devstack 中的 auth 插件密码缺少值 auth-url
- html - 为查看、编辑和删除按钮创建关系,并在 laravel 应用程序中显示相应货件的特定视图/页面
- python - 张量流 2+。使用替代激活函数和 custom_gradient
- http - 具有多个套接字连接的 HTTP2 和 TLS
- powershell - Powershell 执行 Test-NetConnection 异常处理?
- pdf - Aspose.Word 转换为 PDF 时断字错误
- emacs - 使用 .dir-locals.el 为特定文件设置模式
- awk - 计算两列之间不匹配的行数,同时以成对方式遍历所有列 awk
- google-cloud-storage - 我想删除我的存储桶/项目中的一个对象,但是当我尝试它失败时。我也没有移动或重命名对象的选项
- c++ - C++ makefile:如何将 *.o 文件提取到特定文件夹?