定期删除AKS部署的运行pod(作业)

时间:2020-02-13 12:32:09

标签: kubernetes azure-aks

一段时间以来,我一直在努力找出如何完成以下任务: 我想按计划删除Azure Kubernetes Service群集上正在运行的pod,以便从部署中重新生成。应用程序需要重新读取存储在共享存储中并与其他应用程序共享的配置文件。

我发现Kubernetes Jobs 可能很容易完成此任务,但是还有一些。 我无法确定如何选择与我的部署相关的相应Pod,因为它会在部署名称(即

)中添加随机字符串
deployment-name-546fcbf44f-wckh4

因为没有像LIKE这样的运算符,所以使用选择器获取我的Pod不会成功

kubectl get pods --field-selector metadata.name=deployment-name

找不到资源

1 个答案:

答案 0 :(得分:1)

查看官方文档的一种方法如下:

pods=$(kubectl get pods --selector=job-name=pi --output=jsonpath='{.items[*].metadata.name}')
echo $pods

您需要修改job-name以匹配您的职位名称

https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/#running-an-example-job