是否有任何API或go编程逻辑来获取kubernetes集群中节点的容量?

是否有任何API或go编程逻辑来获取kubernetes集群中节点的容量?,kubernetes,cluster-computing,metrics,kubectl,minikube,Kubernetes,Cluster Computing,Metrics,Kubectl,Minikube,使用kubectl描述节点,我能够获得节点的资源容量(内存、cpu)。我希望通过go客户端或kube API(如果可用)获得相同的结果。有人能帮我吗? 我正在使用minikube版本:v1.7.2 kubectl版本: 客户端:GitVersion:“v1.16.3” 服务器:GitVersion:“v1.16.2” 我正在使用metric server访问kubernetes资源。 预期结果: 资源的容量应该可以通过go程序或kube API访问,Kubernetes客户端库是您需要查看的 K

使用kubectl描述节点,我能够获得节点的资源容量(内存、cpu)。我希望通过go客户端或kube API(如果可用)获得相同的结果。有人能帮我吗? 我正在使用minikube版本:v1.7.2 kubectl版本: 客户端:GitVersion:“v1.16.3” 服务器:GitVersion:“v1.16.2” 我正在使用metric server访问kubernetes资源。 预期结果:
资源的容量应该可以通过go程序或kube API访问,Kubernetes客户端库是您需要查看的


Kubernetes客户端库是您需要查看的库


没有任何API调用可用于获取
kubectl descripe节点
,这是因为此命令正在生成所有输出

Kubectl
检索节点上的所有相关pod(每个未失败或未成功的pod),并汇总其所有资源定义

您可以查看代码并找到负责生成节点信息的函数

与收集POD的所有请求和限制相同,该函数可用,称为
getPodsTotalRequestsAndLimits

最后,可以看到将所有这些放在一起的函数


有一篇非常好的文章介绍了作者正在做您要求的事情,但是使用Python。

没有任何API调用可以用来获取
kubectl描述节点
,这是因为该命令正在生成所有输出

Kubectl
检索节点上的所有相关pod(每个未失败或未成功的pod),并汇总其所有资源定义

您可以查看代码并找到负责生成节点信息的函数

与收集POD的所有请求和限制相同,该函数可用,称为
getPodsTotalRequestsAndLimits

最后,可以看到将所有这些放在一起的函数

有一篇非常好的文章,关于作者正在做你想要做的事情,但是使用Python

The following client libraries are officially maintained by Kubernetes SIG API Machinery.

Language    Client Library
Go          github.com/kubernetes/client-go/    
Python      github.com/kubernetes-client/python/
Java        github.com/kubernetes-client/java   
dotnet      github.com/kubernetes-client/csharp 
JavaScript  github.com/kubernetes-client/javascript 
Haskell     github.com/kubernetes-client/haskell    


Community-maintained client libraries
The following Kubernetes API client libraries are provided and maintained by their authors, not the Kubernetes team.

Language                Client Library
Clojure                 github.com/yanatan16/clj-kubernetes-api
Go                      github.com/ericchiang/k8s
Java (OSGi)             bitbucket.org/amdatulabs/amdatu-kubernetes
Java (Fabric8, OSGi)    github.com/fabric8io/kubernetes-client
Lisp                    github.com/brendandburns/cl-k8s
Lisp                    github.com/xh4/cube
Node.js (TypeScript)    github.com/Goyoo/node-k8s-client
Node.js                 github.com/tenxcloud/node-kubernetes-client
Node.js                 github.com/godaddy/kubernetes-client
Node.js                 github.com/ajpauwels/easy-k8s
Perl                    metacpan.org/pod/Net::Kubernetes
PHP                     github.com/maclof/kubernetes-client
PHP                     github.com/allansun/kubernetes-php-client
PHP                     github.com/travisghansen/kubernetes-client-php
Python                  github.com/eldarion-gondor/pykube
Python                  github.com/mnubo/kubernetes-py
Python                  github.com/tomplus/kubernetes_asyncio
Ruby                    github.com/Ch00k/kuber
Ruby                    github.com/abonas/kubeclient
Ruby                    github.com/kontena/k8s-client
Rust                    github.com/clux/kube-rs
Rust                    github.com/ynqa/kubernetes-rust
Scala                   github.com/doriordan/skuber
dotNet                  github.com/tonnyeremin/kubernetes_gen
DotNet (RestSharp)      github.com/masroorhasan/Kubernetes.DotNet
Elixir                  github.com/obmarg/kazan
Elixir                  github.com/coryodaniel/k8s
Haskell                 github.com/kubernetes-client/haskell