在观看复制控制器时,它会在replicas
下返回最近的ReplicationControllerStatus
计数。我无法在文档中的任何地方找到pod的状态,以便将其包含在那里。是否足够安排吊舱?我注意到一个复制控制器报告pod的状态,即使pod仍处于待处理状态。
答案 0 :(得分:1)
非常有趣的问题!为了回答这个问题,我相信我们需要走星球大战的步行和使用来源:
更新:我的同事Stefan Schimanski刚刚向我指出,实际上答案有点复杂;密钥是FilterActivePods:
func FilterActivePods(pods []api.Pod) []*api.Pod {
var result []*api.Pod
for i := range pods {
if api.PodSucceeded != pods[i].Status.Phase &&
api.PodFailed != pods[i].Status.Phase &&
pods[i].DeletionTimestamp == nil {
result = append(result, &pods[i])
}
}
return result
}
这意味着最终条件是:尚未终止并且没有正常终止的广告。
请注意,Kubernetes上下文中“预定”的定义只是
pod.spec.nodeName != ""
特定节点上的Kubelet会监视API服务器以查找匹配nodeName
的pod,然后在该节点上启动pod。