bk-bcs
bk-bcs copied to clipboard
[feature] gameworkload 防误删
feature相关背景与描述 当前删除 gameworkload 和对应 CRD 时没有校验机制,会导致
- 误删 gameworkload,导致服务不可用
- 误删 CRD,所有对应 gameworkload 全部被删除,造成严重后果
解决方案描述 使用 K8S 的 admission webhook 机制,在删除 gameworkload 或 CRD 时进行校验。为方便按验证策略查看 gameworkload,将校验字段放在 labels 字段中。在 labels 中增加 io.tencent.bcs.dev/deletion-allow 以设置验证策略,支持以下三种验证策略:
-
Always: 总是允许删除操作
-
Cascading: 若有下属资源存活时,拒绝删除操作
-
不存在对应 label 或为其他值时,总是拒绝删除操作