如何使用 go-client 在 kubernetes 中获取 pod 的状态

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



红颜莎娜
浏览 160回答 2
2回答

波斯汪

您可以使用 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)}希望这可以帮助!

繁星淼淼

状态信息是整个 pod 的子结构,因此您可以使用普通的 getter(clientset.CoreV1() 等),然后查看该.Status结构。
打开App,查看更多内容
随时随地看视频慕课网APP