我们在k8s中运行以下命令
kubectl部署我们的部署名称
这似乎删除了名为our-deployment-name fine的部署。但是,我们还希望将下面的副本集和Pod删除为“我们的部署名称”。
读取文档尚不清楚默认行为是否应级联删除副本集和Pod。有人知道如何删除部署以及所有相关的副本集和Pod吗?还是我也必须手动删除所有这些资源?
当我删除部署时,我有一个像这样的孤立副本集...
dev@jenkins:~$ kubectl describe replicaset.apps/wc-892-74697d58d9
Name: wc-892-74697d58d9
Namespace: default
Selector: app=wc-892,pod-template-hash=74697d58d9
Labels: app=wc-892
pod-template-hash=74697d58d9
Annotations: deployment.kubernetes.io/desired-replicas: 1
deployment.kubernetes.io/max-replicas: 2
deployment.kubernetes.io/revision: 1
Controlled By: Deployment/wc-892
Replicas: 1 current / 1 desired
Pods Status: 1 Running / 0 Waiting / 0 Succeeded / 0 Failed
Pod Template:
Labels: app=wc-892
pod-template-hash=74697d58d9
Containers:
wc-892:
Image: registry.digitalocean.com/galatea/wastecoordinator-wc-892:1
Port: 8080/TCP
Host Port: 0/TCP
Limits:
memory: 800Mi
Environment: <none>
Mounts: <none>
Volumes: <none>
Priority Class Name: dev-lower-priority
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal SuccessfulCreate 11m replicaset-controller Created pod: wc-892-74697d58d9-jtj9t
dev@jenkins:~$
答案 0 :(得分:0)
正如您在副本集Controlled By: Deployment/wc-892
中所看到的,这意味着删除部署wc-892
应该删除副本集,而副本集又将删除标签为app=wc-892
的Pod。
答案 1 :(得分:0)
首先获取要删除的部署
kubectl get deployments
并删除您想要的部署
kubectl delete deployment yourdeploymentname
这将删除副本集和与其关联的Pod。
答案 2 :(得分:-1)
kubectl delete deployment <deployment>
将删除与部署关联的所有副本集以及与这些副本集关联的活动吊舱。
控制器管理器或API服务器在处理删除请求时可能出现问题。因此,建议您查看这些日志以进行验证。
注意,是否有可能将较旧的副本集附加到命名空间中的其他内容上?尝试列出并查看元数据。使用kubectl describe rs <rs>
或kubectl get rs -o yaml