如何删除处于未知状态中Kubernetes荚?

问题描述 投票:1回答:3

我对亚马逊EKS和时不时出现了一些豆荚与国家Unknown一个kubernetes集群。我看,这是因为我的豆荚没有内存限制设置和更改与该国没有新的吊舱出现之后。但我试图删除使用kubectl delete pod <pod_name>的现有的和没有工作。我应该如何删除?

kubernetes
3个回答
5
投票

您可以强制删除这样的荚:

kubectl delete pod <pod_name> --grace-period=0 --force

0
投票

你直接部署荚?抑或是从部署或部署statefulset?尝试删除部署或statefulset。

如果没有什么作品出来,然后删除该命名空间中的吊舱。但是所有对象也会从该命名空间中删除


0
投票

在Kubernetes集群可以使用Kubernetes工作负载创建吊舱。有以下几种工作负载:

  • 部署
  • ReplicaSet
  • DaemonSet
  • StatefulSet
  • ReplicationController
  • 工作
  • 的cronjob
  • 或吊舱(直接)

如果您使用比任何其他吊舱上面的列表中,那么波德的ownerReference(.metadata.ownerRefference)设置为吊舱。也就是说,如果您创建一个名为部署d1,那么它首先创建一个名为d1-*** ReplicaSet在这种情况下,ownerRefference的ReplicaSet是部署d1。然后ReplicaSet将创造一个数吊舱(S)的(前缀d1-***-***)。因此,波德的ownerRefference将是ReplicaSet d1-***

  • 如果你只是删除该吊舱由部署创建,然后舱体都将被删除。但他们再次由业主ReplicaSet重建。
  • 如果你只是删除ReplicaSet,那么ReplicaSet和它的吊舱将被删除。但部署控制器将再次重现ReplicaSet,然后将新创建的ReplicaSet将再次创造豆荚。
  • 但如果你只是删除原来的部署,那么一切都因为它也将被删除。

更新:

如果你不想删除原始部署或其他工作负荷由于不断督促了,那么你就可以通过强制删除吊舱完成你想:

 $ kubectl delete pod <pod_name> --namespace <namespace> --grace-period 0 --force

根据kubectl命令参考,

  • --grace-period:默认是-1。在给予资源秒的时间内都可以正常终止。如果忽略负。设置为1,立即关闭。只能设置为0时--force为真(力缺失)。
  • --force:*默认是false。只有当用于宽限期= 0。如果属实,立即从API和旁路优美删除删除资源。请注意,某些资源立即删除可能导致不一致或数据丢失,需要确认。

这对你的情况。

© www.soinside.com 2019 - 2024. All rights reserved.