2. 核验对象与范围:基础设施、中间件、应用配置、安全策略、网络策略

值班环境基线核验的第一步是明确“核什么”。如果核验范围定义不清,要么遗漏关键风险点,要么陷入过度巡检的泥潭。根据平台工程与 SRE 的最佳实践,基线核验对象应覆盖以下五大领域:基础设施、中间件、应用配置、安全策略、网络策略。每个领域都有其特定的核验指标与基线标准。

2.1 五大核验领域总览

下表从核验目标、典型对象、关键基线项三个维度,对这五大领域进行横向对比,帮助团队快速建立全局视角。

核验领域 核验目标 典型对象 关键基线项示例
基础设施 确保计算、存储、网络资源的健康与合规 主机、容器、K8s 节点、存储卷 OS 补丁版本、磁盘使用率 < 80%、NTP 同步状态
中间件 保障服务中间件的配置正确与高可用 Nginx、Redis、Kafka、MySQL 连接数阈值、主从同步延迟 < 1s、日志保留策略
应用配置 验证应用运行时参数与环境一致性 环境变量、启动参数、配置中心 数据库连接串非明文、日志级别为 INFO、JVM 堆大小
安全策略 防止权限滥用与配置漂移导致的安全漏洞 IAM 策略、密钥管理、TLS 证书 证书到期 > 30 天、无 root 直连、密钥轮转周期 < 90 天
网络策略 验证网络隔离与访问控制的有效性 防火墙规则、K8s NetworkPolicy、DNS 解析 最小权限原则、禁止 0.0.0.0/0 入站、内网 DNS 解析 < 10ms

2.2 领域详解与核验要点

2.2.1 基础设施

基础设施是所有上层服务的底座。核验重点包括:

  • 资源水位:CPU、内存、磁盘、inode 使用率是否超过告警阈值。
  • 系统合规:OS 版本、内核参数、SSH 配置、防火墙状态是否符合安全基線。
  • 时间同步:NTP 服务是否运行,时钟偏移是否在 100ms 以内。
  • 硬件健康:磁盘 SMART 状态、RAID 状态、电源模块是否正常。
工程案例:某电商平台在值班巡检中发现 30% 的 K8s 节点磁盘使用率超过 85%,导致 Pod 驱逐频繁。通过将磁盘阈值基线纳入核验脚本,提前触发扩容流程,避免了夜间故障。

2.2.2 中间件

中间件是服务间通信与数据流转的枢纽。核验要点:

  • 连接与线程:数据库连接池使用率、消息队列堆积数、Nginx 活跃连接数。
  • 数据一致性:主从复制延迟、集群分片状态、数据备份完整性。
  • 配置合规:超时时间、重试策略、日志保留天数是否与 SLO 对齐。

2.2.3 应用配置

应用配置的“漂移”是值班期间最常见的故障根因之一。核验要点:

  • 配置一致性:同一服务在不同环境(生产/预发)的配置差异是否在预期范围内。
  • 敏感信息:数据库密码、 是否通过密钥管理服务注入,而非明文写在配置文件中。
  • 日志与监控:日志级别是否设置为 INFO(避免 DEBUG 导致磁盘写满),监控指标是否正常上报。
避坑指南:不要只核验配置中心的值,还要核验实际生效值。有时配置中心已更新,但应用未热加载,导致实际运行参数与预期基线不符。

2.2.4 安全策略

安全基线核验是值班环境的第一道防线。核验要点:

  • 身份与访问:是否存在长期未轮转的密钥、是否有多余的 root 权限、IAM 策略是否遵循最小权限。
  • 证书与加密:TLS 证书是否在有效期内、是否使用 TLS 1.2+、是否启用了双向认证。
  • 漏洞扫描:镜像或主机是否存在已知高危 CVE,补丁是否在 SLA 时间内完成修复。

2.2.5 网络策略

网络策略的核验往往被忽视,但一旦出错影响面极大。核验要点:

  • 访问控制:安全组或 NetworkPolicy 是否开放了不必要的端口(如 22、3306 对公网开放)。
  • DNS 与路由:内部域名解析是否正常,路由表是否有黑洞或环路。
  • 延迟与丢包:跨可用区或跨集群的网络延迟是否在基线范围内(如 < 5ms)。

2.3 核验范围关系图

下图展示了五大核验领域之间的依赖关系与数据流向。基础设施为底层,中间件与应用配置运行其上,安全策略与网络策略作为横切关注点贯穿所有层级。

值班环境基线核验范围关系图 基础设施 中间件 应用配置 安全策略 网络策略 核验范围分层说明 • 基础设施、中间件、应用配置为纵向分层,下层异常会向上传导。 • 安全策略与网络策略为横向贯穿,需在每个层级独立核验。 • 值班核验脚本应覆盖所有箭头指向的交叉点,避免盲区。 • 建议按“自底向上”顺序执行核验:基础设施 → 中间件 → 应用配置。

2.4 核验优先级与执行策略

并非所有核验项都需要在每次值班时全量执行。根据风险等级与变更频率,建议采用以下分级策略:

核验频率 适用领域 典型核验项 执行方式
每次值班(P0) 基础设施、安全策略 磁盘使用率、证书到期、NTP 同步 自动化脚本 + 值班仪表盘
每日(P1) 中间件、网络策略 主从延迟、连接数、防火墙规则变更 定时任务 + 告警通知
每次变更后(P2) 应用配置 配置一致性、敏感信息泄露 CI/CD 门禁 + 配置审计
注意:P0 级别的核验项如果失败,必须立即触发值班响应流程,不可延迟处理。建议将 P0 核验结果直接映射到值班告警的 P0 事件 中。

2.5 核验对象清单模板

在实际工程中,建议团队维护一份“核验对象清单”,作为值班手册的附件。以下是一个精简模板:

# 值班环境基线核验清单(示例)
## 基础设施
- [ ] 所有 K8s 节点磁盘使用率 < 80%
- [ ] 所有主机 NTP 服务运行中,偏移 < 100ms
- [ ] 所有节点内核版本在安全基线内(如 >= 5.10)

## 中间件
- [ ] MySQL 主从延迟 < 1s
- [ ] Redis 内存使用率 < 70%
- [ ] Kafka 未消费堆积数 < 10000

## 应用配置
- [ ] 生产环境日志级别为 INFO
- [ ] 数据库连接串使用密钥管理服务引用
- [ ] JVM 堆大小与容器 limit 匹配

## 安全策略
- [ ] 所有 TLS 证书有效期 > 30 天
- [ ] 无长期未轮转的 IAM 密钥(超过 90 天)
- [ ] 镜像无高危 CVE

## 网络策略
- [ ] 安全组无 0.0.0.0/0 入站规则
- [ ] 内部 DNS 解析延迟 < 10ms
- [ ] 跨可用区网络延迟 < 5ms