有奖捉虫:办公协同&微信生态&物联网文档专题 HOT

简介

原生 Kubernetes 存在级联删除机制,删除一个资源时会自动删除与之相关的其他资源,例如删除 Namespace 时会自动删除 Namespace 下所有的 Pod、Service、Configmap 等关联资源,可能导致业务故障。
容器服务(Tencent Kubernetes Engine,TKE)新增了“策略管理”模块,通过系统预置策略的方式,防止误删除引起业务故障。

策略说明

策略分类

集群删除防护:在删除集群时,如果集群中仍然存在节点,则不允许删除。
集群内资源删除防护:在删除 TKE 集群内的各类资源时,如果仍然存在依赖资源,则不允许删除。

支持边界

集群删除防护策略:支持所有版本的 TKE 标准集群和 TKE Serverless 集群,暂不支持注册集群和边缘集群。
集群内资源删除防护策略:目前支持 1.16~1.26 版本的 TKE 标准集群和 TKE Serverless 集群,暂不支持注册集群和边缘集群。

策略类型

基线策略:强制开启,不可关闭。
优选策略:默认开启,用户可关闭。
可选策略:默认关闭,用户可开启。

策略库

类型
策略名称
策略描述
策略类型
集群策略
集群中存在节点则不允许删除。
集群中存在普通节点、原生节点、注册节点,需先下线节点后再删除集群。
基线策略
命名空间策略
命名空间下存在工作负载、服务与路由、存储对象则不允许删除。
命名空间内如果存在 Pod、Service、Ingress、Pvc,清空上述资源后,再删除 Namespace。
优选策略
配置相关策略
CRD 存在关联的 CR 资源则不允许删除。
CRD 定义了 CR 资源,需要先删除 CR 资源,再删除 CRD。
优选策略

操作说明

开启/关闭策略

1. 登录 容器服务控制台,选择左侧导航栏中的集群
2. 在集群管理页面,选择目标集群 ID,进入集群的基本信息页面。
3. 在左侧导航中选择策略管理,进入策略管理页面选择策略,单击开启/关闭。关闭策略需要二次确认,开启则不需要。如下图所示:




验证策略效果

以集群删除策略为例,创建 TKE 标准集群,验证集群在存在节点情况下删除请求是否会被拦截。
1. 创建有节点的 TKE 标准集群,详细步骤请参见 创建集群
2. 发起删除集群请求。
通过控制台删除
调用云 API 删除
1. 删除集群,详细步骤请参见 删除集群
2. 窗口提示需要先清空节点后,方可继续删除集群。如下图所示:



1. 调用云 API 删除,调用方式请参见 API 文档 删除集群
2. 删除集群接口调用失败,错误信息返回中包含集群中存在的节点清单。如下图所示:



3. 策略管理页面,单击关联事件的数字,查看拦截事件信息。如下图所示: