安全、RBAC 与 Helm 包管理

共 39 题
#

1. K8s Audit 各 stage(RequestReceived/ResponseStarted/ResponseComplete/Panic)何时触发?

A Panic 是正常 stage
B RequestReceived 包含响应
C ResponseComplete 在响应完整发送后触发 ✓ 正确答案
D 默认 stage 是 RequestReceived
#

2. K8s Audit 的 omitManagedFields 选项如何控制审计日志中的 managedFields?

A omitManagedFields 保留 managedFields
B managedFields 是审计策略
C omitManagedFields 省略审计日志中的 managedFields ✓ 正确答案
D 该选项只影响删除审计
#

3. K8s RBAC 支撑 verbs get、list、watch、create、update、patch、delete 时的职责和限制是什么?

A get 表示监听变化
B patch 是局部更新,update 是整体替换 ✓ 正确答案
C list 与 get 完全等价
D delete 包含 deletecollection
#

4. K8s mutating admission webhook 的调用流程、失败策略与补丁合并?

A mutating webhook 在持久化后调用
B mutating webhook 通过 JSONPatch 修改对象 ✓ 正确答案
C failurePolicy: Ignore 会拒绝请求
D mutating 与 validating 同时返回补丁
#

5. K8s 审计日志如何配置(audit policy、后端存储与动态重载)?

A audit policy 定义各资源的记录级别 ✓ 正确答案
B 审计日志只能存 webhook
C 审计策略无法配置
D audit level 只有 None 一种
#

6. RBAC 中 RoleBinding 如何通过 roleRef 引用 ClusterRole 实现复用?

A ClusterRole 只能被一个 RoleBinding 引用
B RoleBinding 引用 ClusterRole 应用到整个集群
C roleRef 可指向任意资源
D RoleBinding 引用 ClusterRole 限定在命名空间 ✓ 正确答案
#

7. RBAC 的 Role aggregation 如何通过 aggregationRule 合并多个 ClusterRole 规则?

A 聚合后无法添加新角色
B 聚合是静态的,无法扩展
C aggregationRule 合并 RoleBinding
D aggregationRule 通过 labelSelector 合并 ClusterRole 规则 ✓ 正确答案
#

8. RBAC 的 impersonate 权限如何支持模拟用户进行审计与排障?

A impersonate 允许模拟其他用户/组 ✓ 正确答案
B impersonate 用真实用户身份访问
C 审计不记录模拟
D impersonate 无需授权
#

9. Helm chart 依赖管理(Chart.yaml dependencies)与子 chart 复用

A 子 chart 无法覆盖 values
B dependencies 在 Chart.yaml 声明 ✓ 正确答案
C 依赖无需下载
D 子 chart 只能一次性使用
#

10. Helm chart 测试(helm test)与 CI 集成的工程实践

A CI 无法集成 helm
B helm lint 执行测试
C helm test 运行测试 Pod 验证 release ✓ 正确答案
D 测试 Pod 在 templates 之外
#

11. Helm chart 的 values 覆盖优先级是什么

A 默认值不可覆盖
B values.yaml 优先级最高
C 多个 -f 文件后者不覆盖前者
D --set 优先级最高 ✓ 正确答案
#

12. Helm hook 的执行时机与失败处理如何配置

A hook-weight 控制删除
B hook 失败不影响 Helm 操作
C hook 通过注解指定执行时机 ✓ 正确答案
D hook 只有 post-install
#

13. Helm rollback 的实现机制与限制是什么

A rollback 用旧 revision 清单重新渲染 ✓ 正确答案
B rollback 无需历史版本
C rollback 不产生新版本
D 历史版本永久保留
#

14. Helm 的 lookup 函数在 release 间共享配置的陷阱

A lookup 返回的结果总是最新
B lookup 在渲染时查询集群对象 ✓ 正确答案
C dry-run 时 lookup 结果可靠
D lookup 无需 RBAC
#

15. K8s Audit 支撑 audit level None、Metadata、Request、RequestResponse 时的职责和限制是什么?

A Request 记录响应体
B Metadata 记录请求体
C None 记录全部
D RequestResponse 记录请求与响应体 ✓ 正确答案
#

16. Kyverno 如何通过 validate/mutate/generate 策略管理 K8s 资源?

A mutate 策略生成资源
B generate 策略修改资源
C validate 策略校验资源 ✓ 正确答案
D Kyverno 不是 admission 引擎
#

17. Kyverno 的 background scan 如何对存量资源执行策略校验?

A background scan 校验存量资源并生成报告 ✓ 正确答案
B background scan 只拦新请求
C 报告不会生成
D background scan 无法关闭
#

18. OPA Gatekeeper 的 ConstraintTemplate 如何定义策略并生成 Constraint CRD?

A Rego 是 YAML 校验
B ConstraintTemplate 生成 Constraint CRD ✓ 正确答案
C Constraint 定义策略逻辑
D Gatekeeper 无需 webhook
#

19. OPA Gatekeeper 的审计如何周期检查集群资源并上报违规?

A 审计无法上报违规
B 审计会拦截违规请求
C 审计只检查新请求
D 审计周期扫描并将违规写入 status.violations ✓ 正确答案
#

20. PSP 移除后 Pod Security Admission 与准入控制器如何作为替代方案?

A PSA 需要部署 webhook
B PSP 仍在集群中
C PSA 用命名空间标签应用安全标准 ✓ 正确答案
D PSA 只支持 privileged
#

21. Pod Security Admission 的 enforce/audit/warn 三种模式如何处置违规 Pod?

A warn 模式删除违规 Pod
B audit 模式阻止违规 Pod
C enforce 模式拒绝违规 Pod ✓ 正确答案
D 三种模式只能同级别
#

22. Pod Security Standards 的 privileged/baseline/restricted 三个级别分别限制什么?

A 三个级别无差异
B baseline 允许特权容器
C privileged 限制最多
D restricted 强制非 root 与 seccomp ✓ 正确答案
#

23. PodSecurityContext 与 container securityContext 优先级

A Pod 级覆盖容器级
B 容器级 securityContext 覆盖 Pod 级 ✓ 正确答案
C capabilities 可 Pod 级设置
D 两者不冲突
#

24. PriorityClass 与抢占机制的触发条件中低优先级 Pod 被抢占时的优雅终止与 PreemptionPolicy 配置

A PreemptionPolicy: Never 允许抢占
B 高优先级 Pod 抢占低优先级 Pod 释放资源 ✓ 正确答案
C 抢占不受 PDB 约束
D 优先级值越小越优先
#

25. ResourceQuota 与 LimitRange 如何配合做命名空间资源治理,即 hard limit、requests/limits 默认值与容器级约束

A LimitRange 限制资源总量
B ResourceQuota 限制命名空间资源总量 ✓ 正确答案
C ResourceQuota 设置容器默认值
D 两者无法配合
#

26. descheduler 解决的调度漂移问题中节点负载不均、同 Deployment Pod 聚集、污点节点驱逐与长时运行节点碎片整理

A descheduler 直接调度 Pod
B descheduler 驱逐失衡 Pod 以重新平衡 ✓ 正确答案
C descheduler 只处理污点
D descheduler 无法处理负载不均
#

27. requests/limits 与 QoS(Guaranteed/Burstable/BestEffort)如何影响 kubelet 驱逐顺序与 OOM 评分

A BestEffort 先被驱逐,OOM 评分高 ✓ 正确答案
B Guaranteed 先被驱逐
C QoS 不影响 OOM
D Burstable 最稳定
#

28. 如何用 Helm 实现多环境(dev/staging/prod)差异化部署

A 所有环境只能用同一 values
B 用不同 values 文件 + --set 覆盖实现环境差异化 ✓ 正确答案
C 环境无法隔离
D helm 模板无法条件判断
#

29. 集群级资源治理中如何防止单个命名空间耗尽集群资源以及 FairShare 与 DominantResourceShare 的调度公平性

A FairShare 只影响 CPU
B DRF 基于单一资源分配
C ResourceQuota 防止单命名空间耗尽资源 ✓ 正确答案
D 集群无法防止资源耗尽
#

30. Helm 3 移除 Tiller 后的安全与多租户变化

A Helm 3 移除 Tiller,客户端直接用 kubeconfig ✓ 正确答案
B Helm 3 仍用 Tiller
C release 不再存储
D Tiller 攻击面更大
#

31. Helm chart 版本与 appVersion 的语义差异及升级策略

A chart version 表示应用版本
B appVersion 表示应用版本 ✓ 正确答案
C 两者必须一致
D appVersion 影响依赖解析
#

32. Helm chart 的 RBAC 模板设计中如何按 values 动态生成 Role/ClusterRole 并校验其最小权限

A 用 values 条件与 range 动态生成 RBAC ✓ 正确答案
B RBAC 规则固定不可配置
C 最小权限可以忽略
D 无法生成 ClusterRole
#

33. Helm 与 Kustomize 的选型对比与混合使用模式

A Helm 侧重打包分发,Kustomize 侧重声明式叠加 ✓ 正确答案
B Kustomize 用模板语言
C Helm 无法管理版本
D 两者不能混合
#

34. Helm 多租户部署的安全隔离中 values 覆盖、命名空间权限与 chart 依赖(dependencies)的供应链风险如何治理

A 多租户用命名空间隔离与 RBAC 限制 ✓ 正确答案
B chart 依赖无风险
C release 全局共享
D values 无法隔离
#

35. Helm 模板的安全性中如何通过 linter、schema 校验与 helm template 渲染检查防止模板注入与配置漂移

A 模板无需转义
B helm lint 执行安装
C values.schema.json 校验 values 约束 ✓ 正确答案
D 配置漂移无法防止
#

36. Helm 的 crds 目录与 CRD 升级的特殊处理

A CRD 由 Helm 管理版本
B helm upgrade 会更新 CRD
C CRD 随 uninstall 删除
D crds/ 目录的 CRD 在 install 时安装,upgrade 不更新 ✓ 正确答案
#

37. ResourceQuota 的 scope 与 PriorityClass 如何配合防止命名空间资源耗尽,保障高优工作负载不被挤占

A 配额与优先级无关
B scope 只能为 BestEffort
C 高优无法保障
D scopeSelector 按 PriorityClass 设置配额 ✓ 正确答案
#

38. helm template 与 helm install 在 GitOps 流程中的取舍

A template 与 install 相同
B helm install 只渲染
C GitOps 用 helm install 更多
D helm template 只渲染不触达集群 ✓ 正确答案
#

39. 私有 Helm 仓库(ChartMuseum/Harbor)的搭建与权限控制

A Harbor 支持项目级 RBAC 权限控制 ✓ 正确答案
B ChartMuseum 支持 OIDC
C helm push 无需仓库
D 私有仓库无法控制权限