云其它

关注公众号 jb51net

关闭
首页 > 网站技巧 > 服务器 > 云和虚拟化 > 云其它 > K8s强制删除Terminating资源

K8s强制删除Terminating资源方式

作者:博同学

文章总结:通过设置Pod等待时间为0、删除Namespace导出Terminating.json、开启调试模式、新开窗口执行请求并修改相关文件名、端口和命名空间,实现了一个高效的脚本操作流程

删除Pod

等待时间设置为0

kubectl delete pod -n xxxxxx --grace-period=0 --force

删除Namespace

导出

kubectl get namespace argocd-test -o json > Terminating.json

Terminating.json

# 删除spec 和status相关内容

最终结果类似这样
{
    "apiVersion": "v1",
    "kind": "Namespace",
    "metadata": {
        "annotations": {
            "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Namespace\",\"metadata\":{\"annotations\":{},\"name\":\"argocd-test\"}}\n"
        },
        "creationTimestamp": "2024-05-09T03:22:57Z",
        "deletionTimestamp": "2024-05-09T03:23:08Z",
        "labels": {
            "kubernetes.io/metadata.name": "argocd-test"
        },
        "name": "argocd-test",
        "resourceVersion": "557448924",
        "uid": "cbb084a2-05b1-47c8-bb6d-ffc466f857cd"
    }
}

开启调试模式

k proxy --port=8081

新开窗口执行请求

注意修改 .json文件名、端口、命名空间

curl -k -H “Content-Type: application/json” -X PUT --data-binary @Terminating.json http://127.0.0.1:8082/api/v1/namespaces/kuboard/finalize

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文