1. 概要与评估目标
1) 目标:建立对2台美国站群服务器(简称us-web-01、us-web-02)的全面监控与告警体系。
2) 范围:CPU、内存、磁盘、网络带宽、连接数、HTTP 5xx、证书到期、域名解析异常、CDN回源失败及DDoS态势监测。
3) 成功标准:在阈值触发后5分钟内完成自动告警分发并在30分钟内启动应急流程。
4) 工具建议:Prometheus + node_exporter、Grafana、Alertmanager、ELK (Filebeat+Logstash+Elasticsearch)、Cloudflare/CloudFront 等CDN与DDoS防护。
5) 数据保持:关键指标至少保留15天,日志保留90天(压缩存储)。
2. 两台服务器配置与基线数据示例
1) 我们以典型
美国站群VPS作为示例:两台服务器配置、网络能力与监控阈值如下表所示。
2) 表格展示(居中,边框宽度1,文字居中):
| 主机名 |
实例类型 |
vCPU / RAM |
磁盘 |
公网带宽 |
关键阈值示例 |
| us-web-01 |
c6a.large |
2 vCPU / 4 GB |
50 GB NVMe |
1 Gbps 保底 |
CPU>85% 5m, NET>800Mbps, 5xx>1%/5m |
| us-web-02 |
c6a.xlarge |
4 vCPU / 8 GB |
100 GB NVMe |
2 Gbps 保底 |
CPU>80% 5m, NET>1.6Gbps, CONN>40000 |
3) 配置说明:us-web-02为主节点,承担较多回源与缓存刷新流量;us-web-01为备份并承担API请求。
4) 监控基线:平均CPU利用率分别为22%与35%,峰值带宽分别为450Mbps与1.2Gbps(工作日高峰)。
5) 磁盘I/O基线:avg await < 5ms,磁盘使用不超过65%为正常。
3. 监控指标与采集频率
1) 指标分类:主机层(cpu/mem/disk/io)、网络层(tx/rx/bps/pps/conn)、应用层(HTTP latency/5xx/请求速率)、安全层(syn-flood、异常包率)。
2) 采集频率建议:主机与网络10s,应用指标15s,日志流实时(Filebeat push)。
3) 存储估算示例:Prometheus 10s抓取、每台实例约200个timeseries,15天保留,粗略需要磁盘约:200 series * (8640 samples/day) * 15 days * 8 bytes ≈ 207MB(压缩后),实际带索引与TSDB开销建议预留50G。
4) 指标标签:region=us-east、role=web、instance=us-web-0x、env=prod,便于跨实例聚合和分组告警。
5) 监控可视化:Grafana面板包括集群总体视图、单机详情、网络流量热图、HTTP错误率趋势与证书到期日历。
4. 告警策略与分级规则
1) 告警分级:P0(业务中断)、P1(性能降级)、P2(潜在风险)、P3(信息类)。示例:HTTP 5xx>5%/5m 为P0。
2) 去重与抑制:Alertmanager 配置 group_interval=5m,抑制规则在高流量DDoS确认后自动提升为事件模式,避免告警风暴。
3) 阈值示例:CPU>85%且持续5分钟触发P1;网络带宽>80%且丢包率>1%触发P1;短时间内新连接>100k/s触发P0(疑似DDoS)。
4) 通知链路:短信+邮件+钉钉机器人+PagerDuty(P0、P1),并在告警内包含runbook链接与当前Grafana图表快照。
5) 告警抑制期与恢复:自动恢复条件需连续3次指标低于阈值(10s采样下约30s),并在恢复后发送恢复通知。
5. 日志与追踪策略
1) 日志采集:Nginx access/error 推送到Filebeat,后端应用日志推到Logstash/Elasticsearch做索引与聚合。
2) 搜索与速查:预建常用查询模板(5xx top urls、slow endpoints、大量404来源IP)。
3) 分布式追踪:部署Jaeger或OpenTelemetry,采样率主链路5%(故障时可提升到100%)。
4) 告警联动:当日志中出现“ERROR: upstream timed out”超过50次/5m时,自动触发P1并附带最近100条错误日志。
5) 存储策略:Elasticsearch冷热分层,热索引保留14天,冷存档90天(可转入对象存储节约成本)。
6. 安全态势与DDoS防护实践(真实案例)
1) 真实案例:某月流量高峰时 us-web-02 遭遇SYN/UDP放大混合攻击,短时带宽峰值约6.5 Gbps,pps达到700k,正常带宽平时约1.2 Gbps。
2) 处置过程:自动告警->流量拦截到CDN(Cloudflare切换为Under Attack模式)->上游ISP启用BGP黑洞并配合ACL清洗->将恶意IP批量封锁。
3) 数据结果:经过清洗后15分钟内有效流量恢复到1.3 Gbps,错误率(5xx)从12%降至0.8%,后续将攻击源提交给ISP溯源。
4) 防护建议:边缘限流+速率限制、连接表保护(conntrack调优)、SYN cookies、并与CDN/云厂商建立紧急联动通道。
5) 经验教训:预先在Alertmanager设置DDoS事件模板并自动触发上游工单,能把MTTR缩短超过50%。
7. 应急流程与Runbook示例
1) P0触发:立即页面值班工程师并启动通话会议,主机切换到只读或降级模式并启动流量引导到备机。
2) 检查项清单:确认CPU/网络/连接数、查看最近10分钟NGINX错误、查询CDN回源日志、核对证书与域名解析是否异常。
3) 快速恢复操作:启用CDN全站缓存、增加后端实例(水平扩容)、临时调整防火墙策略或黑名单IP。
4) 事后分析:事件结束后24小时内完成Postmortem,内容包括时间线、根因、影响范围、修复步骤与改进计划。
5) 演练频率:每季度进行一次全链路故障演练(包括DNS切换、证书失效模拟、DDoS模拟)。
8. 结论与落地建议
1) 结论:针对两台美国站群服务器的监控与告警方案应覆盖主机/网络/应用/安全四层,并以自动化、分级告警与runbook为核心降低MTTR。
2) 优先级执行项:先部署基础采集(node_exporter、Filebeat)、Prometheus+Alertmanager、Grafana仪表盘,然后逐步接入CDN与DDoS联动。
3) 成本考虑:监控存储与日志存储是主要成本项,采用冷热分层和采样可显著节省开销。
4) KPI建议:P0平均响应时间<5分钟,恢复时间MTTR<30分钟,日常误报率<5%。
5) 后续扩展:建议增加自动化扩缩容、智能告警(基于历史模型的异常检测)以及与CMDB/资产管理系统的联动。
来源:从运维视角评估2美国站群服务器的监控与告警实施方案