首页 > 解决方案 > Kubernetes go client api 用于节点的版本

问题描述

[root@gx dashboard]# kubectl get node
NAME       STATUS   ROLES    AGE     **VERSION**
minikube   Ready    master   7d20h   **v1.15.0**

返回特定节点的版本。如何使用 client-go 执行此操作?

标签: kubernetesversionclient-go

解决方案


NodeInfo使用 Go-client获取 Kubernetes 版本的示例代码:

// Create clientset 
clientset, err := kubernetes.NewForConfig(config)
if err != nil {
  panic(err.Error())
}

// Get node object
node, err := clientset.CoreV1().Nodes().Get(nodeName, metav1.GetOptions{})
if err != nil {
  panic(err.Error())
}

// You can read Kubernetes version from either KubeletVersion or KubeProxyVersion
kVersion := node.Status.NodeInfo.KubeletVersion
// kVersion := node.Status.NodeInfo.KubeProxyVersion
fmt.Println(kVersion)

推荐阅读