我正在尝试删除我的 kubernetes 集群中的一个 pod,然后检查它的状态以查看该 pod 需要多长时间才能关闭并再次启动。对于使用 go-client 获取特定 pod 状态的第二部分,我找不到任何有用的示例。任何帮助表示赞赏。
问问题
6534 次
2 回答
12
您可以使用 Get 函数获取特定的 pod 信息(以下示例获取整个 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)
}
希望这可以帮助!
于 2018-12-20T21:27:14.593 回答
0
状态信息是整个 pod 的子结构,因此您可以使用普通的 getter(clientset.CoreV1() 等),然后查看.Status
结构。
于 2018-12-19T19:29:27.727 回答