我想在 Go 中访问我的 Kubernetes 集群 API 来运行kubectl
命令获取在谷歌云上运行的 k8s 集群中的可用命名空间。
我的唯一目的是通过运行来获取集群中可用的命名空间kubectl
命令:请告诉我是否有其他选择。
你可以从kubernetes/client-go https://github.com/kubernetes/client-go,Kubernetes 的 Go 客户端,用于与 kubernetes 集群通信。 (不过不是通过 kubectl:直接通过 Kubernetes API)
它包括一个NamespaceLister,这有助于列出命名空间 https://github.com/kubernetes/client-go/blob/03bfb9bdcfe5482795b999f39ca3ed9ad42ce5bb/listers/core/v1/namespace.go#L28-L35.
See "使用 Kubernetes API 构建东西 — 使用 Go https://medium.com/programming-kubernetes/building-stuff-with-the-kubernetes-api-part-4-using-go-b1d0e3c1c899" from 弗拉基米尔·维维安 https://twitter.com/VladimirVivien
迈克尔·豪森布拉斯 https://stackoverflow.com/users/396567/michael-hausenblas(红帽开发者倡导者)建议在评论中 https://stackoverflow.com/questions/52325091/how-to-access-the-kubernetes-api-in-go-and-run-kubectl-commands#comment91597517_52325186文档与using-client-go.cloudnative.sh http://using-client-go.cloudnative.sh/
版本化的片段集合,显示如何使用client-go
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)