Mat*_*ttC 5 kubernetes kubectl amazon-eks
我可以使用 kubectl cli 删除部署,但是有没有办法让我的部署在完成后自动销毁?对于我的情况,我们正在 AWS EKS 上的 Docker 容器中启动一个长期运行的过程。当我检查状态时,它是“正在运行”,然后一段时间后状态是“已完成”。那么有没有办法让 kubernetes pod 在完成后自动销毁?
kubectl run some_deployment_name --image=path_to_image
kubectl get pods
//the above command returns...
some_deployment_name1212-75bfdbb99b-vt622 0/1 Running 2 23s
//and then some time later...
some_deployment_name1212-75bfdbb99b-vt622 0/1 Completed 2 15m
Run Code Online (Sandbox Code Playgroud)
一旦完成,我希望它被销毁,而不必调用另一个命令。
因此,问题在于运行作业,而不是像 Kubernetes部署抽象中那样运行部署,该抽象创建ReplicaSet,但更像是 Kubernetes作业
当您指定选项时,Job将创建A。这些作业不会被集群清理,除非您使用 手动删除它们。更多信息请点击这里。kubectl run--restart=OnFailurekubectl delete <pod-name>
如果您使用 Kubernetes 1.12 或更高版本,则会引入新的作业规范:ttlSecondsAfterFinished。您还可以用它来清理您的工作。另一个更耗时的选择是编写自己的 Kubernetes 控制器来清理常规作业。
CronJob如果您同时指定--restart=OnFailure和 `--schedule="" 选项,则会创建A。这些 Pod 会自动删除,因为它们定期运行。
更多信息请参见kubectl run 此处。
| 归档时间: |
|
| 查看次数: |
4193 次 |
| 最近记录: |