[英]Manipulate Kubernetes' client-go PodList
我正在四处浏览Kubernetes客户端,无法让我想到正确的方式来操作Pod结构...
我得到一个像这样的PodList 吊舱 :
// creates the clientset
clientset, err := kubernetes.NewForConfig(config)
if err != nil {
glog.Fatal(err)
}
// Get Pods
pods, err := clientset.CoreV1().Pods("").List(meta_v1.ListOptions{})
if err != nil {
fmt.Println(err)
return
}
然后,我可以使用像这样的循环获取每个Pod的一些值
for _, pod := range pods.Items {
fmt.Println(pod.GetName(), pod.Namespace)
}
但是,仅从具有一些Getter(pod.GetName())的ObjectMeta结构中 ,使用.Value也可以使用(pod.Namespace)。 我无法理解访问嵌套在Spec PodSpec和Status PodStatus中的数据的正确方法是什么。
也许我缺少一些Golang核心概念...任何人都可以启发我,为我指明方向或提供一个通用示例来说明这样做的正确方法吗?
我找到了解决方案,但是我将提供一个答案:
我想访问的Spec和Status结构可以使用pod.Spec.NodeName
或pod.Status.StartTime
类的东西来访问。
如果有人可以提供更详尽的答案来对此进行补充,请这样做。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.