zoukankan      html  css  js  c++  java
  • k8s如何删除处于terminating状态的ns资源

    假设你要删掉两个ns资源,发现一直删不了处于terminating状态

    首先试一下先把这个ns的所有pod都删掉

    kubectl delete pod --all -n istio-system
    

    还是不行的话,加个参数强制删除

    kubectl delete pod --grace-period=0 –force 
    

    如果依然是卡死状态,就要使用下面的必杀技了

    首先生成一个tmp.json文件

     kubectl get namespace <terminating-namespace> -o json >tmp.json
    
     apiVersion: v1
     kind: Namespace
     metadata:
       creationTimestamp: 2018-11-19T18:48:30Z
       deletionTimestamp: 2018-11-19T18:59:36Z
       name: <terminating-namespace>
       resourceVersion: "1385077"
       selfLink: /api/v1/namespaces/<terminating-namespace>
       uid: b50c9ea4-ec2b-11e8-a0be-fa163eeb47a5
     spec:
       finalizers:
       - kubernetes
     status:
       phase: Terminating
    

    然后修改这个json文件,把finalizers的kubernetes删掉

     apiVersion: v1
     kind: Namespace
     metadata:
       creationTimestamp: 2018-11-19T18:48:30Z
       deletionTimestamp: 2018-11-19T18:59:36Z
       name: <terminating-namespace>
       resourceVersion: "1385077"
       selfLink: /api/v1/namespaces/<terminating-namespace>
       uid: b50c9ea4-ec2b-11e8-a0be-fa163eeb47a5
     spec:
       finalizers:
       - 
     status:
       phase: Terminating
    

    然后把本机服务暴露在本地端口的8001端口上

    kubectl proxy
    
    Starting to serve on 127.0.0.1:8001
    

    新开一个terminal,把修改后的tmp.json到要删除的ns资源目录下

     curl -k -H "Content-Type: application/json" -X PUT --data-binary @tmp.json http://127.0.0.1:8001/api/v1/namespaces/<terminating-namespace>/finalize
    

    这样就可以删掉了

    我有梦,有远方,我会为了它们奔跑,奋斗,直到成为连我自己都佩服的人。
  • 相关阅读:
    android 使用广播监听网络状态
    Android获取文件目录路径
    android实现布局重叠
    文件存储到getfilesdir和getcache中的解析问题,原来是权限问题
    CodeForces 1047C Enlarge GCD(数论)题解
    html 空白汉字占位符&#12288;
    js 将json字符串转换为json兑现
    为什么jQuery要返回jQuery.fn.init对象
    transform和transition
    自适应网页设计/响应式Web设计
  • 原文地址:https://www.cnblogs.com/fengdejiyixx/p/15193087.html
Copyright © 2011-2022 走看看