使用 k8s client-go 获取命名空间配额

Get namespace quotas using k8s client-go

我正在寻找一种使用 client-go 获取命名空间资源配额的方法,类似于 kubectl describe ns my-namespace-name

我试过ns, err := k8client.CoreV1().Namespaces().Get("my-namespace-name", metav1.GetOptions{})但它没有提供配额信息。

也试过 ns, err := k8client.CoreV1().ResourceQuotas("my-namespace-name").Get("name", metav1.GetOptions{}) 但我不知道在 .Get() 中将什么作为 name 参数。尝试了命名空间名称,尝试了 https://kubernetes.io/docs/reference/kubectl/overview/#resource-types 中的几种资源类型,但没有遇到 resourcequotas "namespaces" not foundresourcequotas "limits.cpu" not found

也尝试了 ns, err := k8client.CoreV1().ResourceQuotas("my-namespace-name").List(metav1.ListOptions{}),但没有返回任何结果。

任何关于如何获得它的想法将不胜感激!

好的,经过一些调试和通过kubernetes和kubectl代码,得到它的方法是: ns, err := k8client.CoreV1().ResourceQuotas("my-namespace-name").List(metav1.ListOptions{})

不确定为什么我第一次尝试时它对我不起作用,可能是在命名空间名称中输入了错误。