跳至内容

如何排查我的 Amazon EKS 集群中卡在 Terminating(正在终止)状态的命名空间?

1 分钟阅读
0

我尝试删除我的 Amazon Elastic Kubernetes Service (Amazon EKS) 集群中的命名空间。但是,该命名空间卡在 Terminating(正在终止)状态。

简短描述

要删除命名空间,Kubernetes 必须先删除该命名空间中的所有资源。然后,Kubernetes 会检查已注册的 API 服务,以确认它们已移除对该命名空间中资源的所有引用。

命名空间可能会由于以下原因卡在 Terminating(正在终止)状态:

  • 命名空间包含由于存在终结器而导致 Kubernetes 无法删除的资源。
  • API 服务的状态为 False

解决方法

完成以下步骤:

  1. 要编辑卡在 Terminating(正在终止)状态的命名空间的配置,请运行以下命令:

    kubectl edit namespace TERMINATING_NAMESPACE

    **注意:**请将 TERMINATING_NAMESPACE 替换为卡在 Terminating(正在终止)状态的命名空间。

  2. 移除配置中包含终结器的行。
    示例:

    finalizers:
    - kubernetes
  3. 要应用更改,请保存并关闭文本编辑器。如果您使用 VIM,请键入 :wq 然后按 Enter

  4. 要确认处于 Terminating(正在终止)状态的命名空间已移除,请运行以下命令:

    kubectl get namespaces

对卡在 Terminating(正在终止)状态的其他所有命名空间重复上述步骤。

相关信息

Kubernetes 网站上的命名空间

Kubernetes 网站上的终结器

AWS 官方已更新 4 个月前