如何使用go-client

时间:2018-12-19 18:57:35

标签: go kubernetes kubernetes-go-client

我正在尝试删除kubernetes集群中的一个Pod,然后检查其状态以查看Pod下来需要多长时间,然后再重新启动。对于第二部分,我找不到任何有用的示例,该示例使用go-client获取特定的pod状态。任何帮助表示赞赏。

2 个答案:

答案 0 :(得分:4)

您可以使用Get函数获取特定的广告连播信息(以下示例将获取完整的Status结构):

pod, _ := clientset.CoreV1().Pods("kubernetes").Get(pod.Name, metav1.GetOptions{})
fmt.Println(pod.Status)

此外,您可以使用List函数来获取特定命名空间中的所有Pod,然后对其进行范围调整:

pods, _ := clientset.CoreV1().Pods("kubernetes").List(metav1.ListOptions{FieldSelector: "metadata.name=kubernetes"})
for _, pod := range pods.Items {
    fmt.Println(pod.Name, pod.Status)
}

希望这会有所帮助!

答案 1 :(得分:0)

状态信息是整个Pod的子结构,因此您可以使用常规的吸气剂(clientset.CoreV1()等),然后查看.Status结构。

相关问题