Frankcox
336 天前
Java 的 k8s client 包我没写过,不太清楚,golang 的话,有两个方案:
1.List 同 namespace 下的所有 pod ,获取每个 Pod 的 OwnerReference ,根据 Kind=Job ,Name={job_name}进行匹配
2.直接通过 labels 创建 list 的 options,大概代码是
set := deployment.Spec.Selector.MatchLabels
listOptions := metav1.ListOptions{LabelSelector: metav1.FormatLabelSelector(metav1.SetAsLabelSelector(set))}
pods, err := clientset.CoreV1().Pods(deployment.Namespace).List(context.TODO(), listOptions)
这是 deployment 的,替换成 Job 的就行