微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

go client-go 连接k8s

准备kubeconfig文件,自行准备
安装依赖包

 go get k8s.io/[email protected]

开始连接

const (
   kubeConfig = "config/kubectl.kubeconfig"
)
func main(){
   conf, err := clientcmd.BuildConfigFromFlags("", kubeConfig)
   if err != nil {
   	fmt.Println("获取kubeconfig错误 ", err)
   }

   clientSet, err := kubernetes.NewForConfig(conf)
   if err != nil {
   	fmt.Println("clientSet错误 ", err)
   }
   pods, err := clientSet.CoreV1().Pods("default").List(context.Todo(), Metav1.ListOptions{})
   if err != nil {
   	fmt.Println("获取pod异常 ", err)
   }
   for _, pod := range pods.Items {
   	fmt.Println(pod.Name, pod.Namespace, pod.CreationTimestamp)
   }
}

执行则可以打印pod的信息

web-6559b6cdfb-48p6g default 2022-05-06 16:23:57 +0800 CST
web-6559b6cdfb-fjht5 default 2022-05-06 16:21:26 +0800 CST
web-6559b6cdfb-v2ccq default 2022-05-06 16:22:34 +0800 CST

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐