强制删除命名空间(K8S 强制删除卡在Terminating状态的namespaces 记录)

参考:https://blog.csdn.net/lxy___/article/details/106644302

调用API接口删除

[root@master ~]# netstat -ntlp | grep kube-apiserve
tcp6       0      0 :::6443                 :::*                    LISTEN      7737/kube-apiserver 
#API接口查询 
[root@master ~]# kubectl get ns monitoring -ojson > tmp.json
#导出信息

修改如下内容

[root@master ~]# cat tmp.json
{"apiVersion": "v1","kind": "Namespace","metadata": {"annotations": {"kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Namespace\",\"metadata\":{\"annotations\":{},\"name\":\"monitoring\"}}\n"},"creationTimestamp": "2020-04-24T01:39:40Z","deletionTimestamp": "2020-06-09T07:22:46Z","name": "monitoring","resourceVersion": "30261","selfLink": "/api/v1/namespaces/monitoring","uid": "3fdd71e6-9693-4d44-bd8a-f1e54799cde4"},"spec": {"finalizers": ["kubernetes"]},"status": {"phase": "Terminating"}
}

删除以下代码段

"spec": {"finalizers": ["kubernetes"]
},

权限问题

修改完成后,直接调用API接口会有报错如下curl -k -H "Content-Type: application/json" -X PUT --data-binary @tmp.json https://127.0.0.1:6443/api/v1/namespaces/monitoring(替换成自己要删除的ns)/finalize
{"kind": "Status","apiVersion": "v1","metadata": {},"status": "Failure","message": "namespaces \"monitoring\" is forbidden: User \"system:anonymous\" cannot update resource \"namespaces/finalize\" in API group \"\" in the namespace \"monitoring\"","reason": "Forbidden","details": {"name": "monitoring","kind": "namespaces"},"code": 403

此时需要创建匿名用户的权限,命令如下

kubectl create clusterrolebinding test:anonymous --clusterrole=cluster-admin --user=system:anonymous

再次调用

curl -k -H "Content-Type: application/json" -X PUT --data-binary @tmp.json https://127.0.0.1:6443/api/v1/namespaces/monitoring(替换成自己要删除的ns)/finalize
{"kind": "Namespace","apiVersion": "v1","metadata": {"name": "monitoring","selfLink": "/api/v1/namespaces/monitoring/finalize","uid": "3fdd71e6-9693-4d44-bd8a-f1e54799cde4","resourceVersion": "30261","creationTimestamp": "2020-04-24T01:39:40Z","deletionTimestamp": "2020-06-09T07:22:46Z","annotations": {"kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Namespace\",\"metadata\":{\"annotations\":{},\"name\":\"monitoring\"}}\n"}},"spec": {},"status": {"phase": "Terminating"}

删除成功

[root@master ~]# kubectl get ns
NAME              STATUS   AGE
default           Active   46d
kube-node-lease   Active   46d
kube-public       Active   46d
kube-system       Active   46d

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/814350.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

你的系统是如何跟MySQL打交道的

1、Java 工程师眼中的数据库是什么东西? 从今天开始,我们将要开始一个MySQL的专栏,一起来研究MySQL数据库的底层原理和各种实践案例,以及互联网公司的技术方案。 现在我们先来看看,在一个Java工程师眼中的数据库是什么东西? 平时…

常见分词器tokenizer汇总

常见分词器tokenizer 大模型中的分词器:BPE、WordPiece、Unigram LM、SentencePiece Byte Pair Encoding (BPE) OpenAI 从GPT2开始分词就是使用的这种方式,BPE每一步都将最常见的一对相邻数据单位替换为该数据中没有出现过的一个新单位,反…

速盾:海外CDN加速专线

随着全球互联网的发展,网络访问速度成为了用户体验中非常重要的一个因素。特别是在访问海外网站或使用海外应用时,传统的网络连接往往会出现延迟或不稳定的情况。为了解决这个问题,CDN(Content Delivery Network)技术应…

【Godot4.2】CanvasItem绘图函数全解析 - 5.绘制字符和字符串

概述 到这一节为止,我们已经学习了如何在CanvasItem中绘制简单几何图形、图片以及样式盒。但是对于很重要的文字一直没有涉及。 本节就来讲一下字符和字符串绘制函数,以及替换它们的两个类。 系列目录 0.概述1.绘制简单图形2.设定绘图变换3.绘制纹理4…

解决vue3更新chunk包后,点击页面报错

出现错误 解决思路 试了好多方法,跳了很多坑,router版本对不上,解决方案不实用。最后我直接捕获异常,刷新页面,解决最快最有效。 // vue-rotuer版本 "vue-router": "^4.0.3"解决方案 在router/…

路由器配置实验--R1---R5

R1的路由表中默认存在:192.168.1.0192.168.3.0 需要添加:192.168.2.0 4.0 5.0 R2的路由表中默认存在:192.168.1.0192.168.2.0需要添加:192.168.3.0 4.0 5.0 R3的路由表中默认存在:192.168.3.0192.168.4.0需要添加: 1.0 2.0 5.0 R4的路由表中默认存在:192.168.2.0 192.168.4.0…

面试算法-164-K 个一组翻转链表

题目 给你链表的头节点 head ,每 k 个节点一组进行翻转,请你返回修改后的链表。 k 是一个正整数,它的值小于或等于链表的长度。如果节点总数不是 k 的整数倍,那么请将最后剩余的节点保持原有顺序。 你不能只是单纯的改变节点内…

深入微服务框架:构建高效、可扩展与弹性的现代应用架构

前言:当今快速迭代和多变的商业环境中,传统的单体应用程序面临着一系列挑战,包括难以管理复杂性、缺乏灵活性以及无法有效扩展等问题。随着业务需求的不断增长和技术栈的不断演进,企业亟需一种更加模块化、易于管理和扩展的应用程…

给你的AppImage创建桌面快捷方式

原文链接 https://www.cnblogs.com/HGNET/p/16396589.html 运行环境:Ubuntu 22.04 LTS 1.首先准备好AppImage文件并放在一个你知道的地方 2.打开终端,在/usr/share/applications下新建APP.desktop文件(APP可以改成你的应用名称) cd /usr/s…

Android 下载、显示图片

一、新建PictureLoader public class PictureLoader {private ImageView loadImg;private String imgUrl;private byte[] picByte;Handler handler new Handler() {Overridepublic void handleMessage(Message msg) {super.handleMessage(msg);if (msg.what 0x123) {if (picB…

在 Elasticsearch 中扩展 ML 推理管道:如何避免问题并解决瓶颈

作者:来自 Elastic Iulia Feroli 是时候考虑语义搜索运营了吗? 无论你是一位经验丰富的搜索工程师,希望探索新的人工智能功能,还是一位机器学习专家,希望更多地利用搜索基础设施来增强语义相似性模型 —— 充分利用这…

易舟云财务软件免费版和专业版有什么区别?

文章目录 1、价格(1)免费版(2)专业版 2、版本功能(1)免费版(2)专业版 1、价格 (1)免费版 永久免费! (2)专业版 298元/…

Games104 现代游戏引擎3

学新的一趴~ 明天继续学习 参考文章:GAMES104课程笔记08-Basics of Animation Technology - Bos Blog (peng00bo00.github.io)

【免费题库】华为OD机试 - 贪吃的猴子(Java JS Python C C++)

须知 哈喽,本题库完全免费,收费是为了防止被爬,大家订阅专栏后可以私信联系退款。感谢支持 文章目录 须知题目描述输入描述输出描述解题思路:Java代码:JS代码:Python代码:C++代码:题目描述 一只贪吃的猴子,来到一个果园,发现许多串香蕉排成一行,每串香蕉上有若干根…

笔记本台式机电脑 “睡眠和休眠”有什么区别,那个更省电

笔记本台式机电脑 Windows 系统里睡眠和休眠有什么区别,睡眠和休眠那个更省电,睡眠和休眠使用那个更好,当不用电脑时,通常有三种方式让电脑休息:关机、睡眠和休眠。关机的定义大家都懂,但睡眠和休眠就容易让…

[蓝桥杯] 数位排序(C语言)

题目链接 蓝桥杯2022年第十三届省赛真题-数位排序 - C语言网 题目理解 按照数位之和给数排序。当两个数各个数位之和不同时,将数位和较小的排在前面,当数位之和相等时,将数值小的排在前面。第一次输入一个数字N,求1到数字N之间所…

OpenHarmony应用集成和固件集成中C库差异化分析

背景 OpenHarmony中,三方库的使用有两种方式: 一、固件集成 三方库经由OpenHarmony构建框架编译出的动态库或静态库,打包到rom中 二、应用集成 三方库经由IDE(通过IDE中的cmake)编译出的动态库或静态库&#xff0…

kafka学习笔记03

SpringBoot2.X项目搭建整合Kafka客户端依赖配置 用自己对应的jdk版本。 先加上我们的web依赖。 添加kafka依赖: SpringBoot2.x整合Kafka客户端adminApi单元测试 设置端口号。 新建一个kafka测试类: 创建一个初始化的Kafka服务。 设置kafka的名称。 测试创建kafka。…

笔记二basis

form-basis input nametitlestring字符串password密码number数字textarea多行文本radio单选checkbox多选Switch开关Slider滑块color颜色Autocomplete自动补全 file nametitleimages多图上传image单图上传file单文件上传files多文件上传 select nametitleselect单选下拉se…

C++测试程序运行的时间

最近测试算法的时间效率&#xff0c;记录一下C测试程序运行的时间模板。 在文件的头部引入包含的头文件 #include <chrono> #include <iostream>int main() {// 获取程序当前时间点auto start std::chrono::high_resolution_clock::now();/* 测试程序的代码块 *…