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