相关疑难解决方法(0)

命名空间“卡住”为终止,如何删除它?

我已经删除了一个“卡住”的名称空间,并以这种永恒的“终止”状态显示。

namespaces kubernetes

14
推荐指数
23
解决办法
2万
查看次数

"Ghost"kubernetes pod终止了

情况

我有一个kubernetes pod陷入"终止"状态,抵制pod删除

NAME                             READY STATUS       RESTARTS   AGE
...
funny-turtle-myservice-xxx-yyy   1/1   Terminating  1          11d
...
Run Code Online (Sandbox Code Playgroud)

funny-turtle从那时起删除的helm版本的名称在哪里.

我试过了什么

尝试删除pod.

输出:pod "funny-turtle-myservice-xxx-yyy" deleted 结果:它仍然显示在同一状态.- 也尝试过--force --grace-period=0,与额外警告相同的结果

警告:立即删除不等待确认正在运行的资源已终止.资源可能会无限期地继续在集群上运行.

尝试阅读日志(kubectl日志......).

结果: Error from server (NotFound): nodes "ip-xxx.yyy.compute.internal" not found

尝试删除kubernetes部署.

但它不存在.

所以我假设这个pod以某种方式与aws API"断开连接",从kubectl logs打印的错误消息推断.

我将采取任何建议或指导来解释这里发生的事情以及如何摆脱它.

编辑1

试图查看"ghost"节点是否仍在那里(kubectl delete node ip-xxx.yyy.compute.internal)但它不存在.

kubernetes devops kubernetes-helm

8
推荐指数
2
解决办法
1544
查看次数

如何强制删除Kubernetes命名空间?

如何强制删除停留在终止中的命名空间?

重建步骤:

  1. 应用此YAML
apiVersion: v1
kind: Namespace
metadata:
  name: delete-me
spec:
  finalizers:
    - foregroundDeletion
Run Code Online (Sandbox Code Playgroud)
  1. kubectl delete ns delete-me

  2. 无法删除delete-me

我发现的唯一解决方法是销毁并重新创建整个集群。

我尝试过的事情:

这些都不起作用或修改命名空间。在所有这些之后,有问题的终结器仍然存在。

编辑YAML并 kubectl apply

应用:

apiVersion: v1
kind: Namespace
metadata:
  name: delete-me
spec:
  finalizers:
Run Code Online (Sandbox Code Playgroud)
$ kubectl apply -f tmp.yaml 

namespace/delete-me configured
Run Code Online (Sandbox Code Playgroud)

该命令无错误地结束,但是名称空间未删除。

下面的YAML具有相同的结果:

apiVersion: v1
kind: Namespace
metadata:
  name: delete-me
spec:
Run Code Online (Sandbox Code Playgroud)

kubectl edit

kubectl edit ns delete-me,然后删除终结器。同上完全删除列表。同上删除spec。同上替换finalizers为空列表。

$ kubectl edit ns delete-me 

namespace/delete-me edited
Run Code Online (Sandbox Code Playgroud)

这不会显示任何错误信息,但不会更新命名空间。kubectl edit再次查看该对象将显示终结器仍然存在。

kubectl proxy &

  • kubectl …

kubernetes kubernetes-namespace

6
推荐指数
4
解决办法
3172
查看次数