1.
常见故障类型总览
CPU负载飙高:单核占用接近100%或load average 5分钟>CPU核数*2时应警报。
内存耗尽:RSS接近物理内存,swap频繁使用导致响应延迟。
磁盘IO瓶颈:iostat显示await>20ms并发读写延迟上升。
网络丢包/高延迟:ping 丢包率>1%或 RTT>100ms 需排查链路。
域名解析异常:DNS解析不一致或TTL误配置导致访问不稳定。
服务崩溃/超时:Nginx/Apache 504/502 或应用进程频繁重启。
2.
排查流程与工具清单
快速定位步骤:检查监控告警 → 查看系统资源 → 分析服务日志 → 回滚/限流处理。
常用命令:top/htop, iostat, vmstat, sar, ss/netstat, tcpdump, strace, journalctl。
网络诊断:mtr、traceroute、ping、tcptraceroute、iftop 实时带宽。
日志采集:ELK/EFK 或 Graylog 集中收集,建议保留最近90天关键日志。
性能剖析:使用perf/FlameGraph对CPU热点、mysqldumpslow或pt-query-digest对数据库慢查询。
监控告警:Prometheus+Alertmanager/Grafana或Zabbix,关键告警SLA设置为5分钟内通知。
3.
磁盘与备份策略
RAID与文件系统:建议生产采用RAID1/10或云盘多区冗余,ext4或xfs并开启noatime。
快照与增量备份:每日全量+每小时增量,建议保存周期30天,对重要数据异地备份。
备份验证:每周至少一次随机恢复演练,验证数据一致性与启动能力。
日志与配置备份:/etc、数据库schema、证书文件纳入版本管理并定期导出。
磁盘性能监控:IOPS、吞吐、延迟阈值(如IOPS>2000或await>10ms告警)。
示例配置:物理服务器:Intel Xeon E5-2620 v4 x8,RAM 64GB,OS盘 240GB SSD,数据盘 2×1TB RAID1。
4.
网络、域名与CDN常见问题
DNS解析:检查A/AAAA、CNAME、MX是否指向正确IP,TTL设置过短会增加解析压力。
运营商链路:台湾机房常见中间经由 CN-TW-JP 路由,发生ISP波动时需联系机房/带宽提供商。
CDN配置:将静态资源通过CDN缓存,避免源站负载;设置合理Cache-Control与缓存刷新策略。
证书与HTTPS:证书过期会导致访问失败,建议Enable OCSP Stapling并自动续签(Let's Encrypt)。
DDoS防护:结合机房清洗与云端防护,设置连接数/速率阈值并做地理封禁策略。
示例:某站点通过CDN后源站带宽从500Mbps峰值降至50Mbps,页面平均响应时间从800ms降到180ms。
5.
安全与DDoS防御实务
基础加固:关闭不必要端口、使用非默认SSH端口、启用Fail2ban 或 crowdsec。
访问控制:按需配置安全组/防火墙,限制管理IP白名单并使用多因素认证。
流量清洗:与机房合作开通DDoS清洗,当流量>峰值带宽的70%时自动触发清洗。
WAF与速率限制:部署WAF规则并对登录、接口设置限流(如每IP 10req/s)。
日志审计:记录安全事件并保留至少180天审计日志,异常流量做溯源分析。
真实案例:一次TCP SYN泛洪达到每秒120万包,机房启用清洗后峰值带宽从3.2Gbps降至300Mbps,业务恢复95%请求成功率。
6.
数据库与应用可用性优化
数据库主从与读写分离:MySQL 主库配置 8核/32GB,332GB SSD,binlog 保留7天。
连接池与慢查询:设置连接池上限(如max_connections=500),慢查询阈值设为1s并定期优化。
缓存策略:Redis 缓存热点数据,建议Redis实例 4核/8GB,maxmemory-policy 设置为allkeys-lru。
会话与持久化:避免将会话存储在单点服务器,使用Redis或数据库做共享会话。
灰度与回滚:发布使用Canary或蓝绿部署,发现异常时自动回滚到稳定版本。
示例配置:线上MySQL实例:8vCPU,32GB内存,IOPS 3000,月均QPS 12k,95%响应<120ms。
7.
监控、SLA与运维流程
关键指标:CPU、内存、磁盘、网络、响应码、错误率(5xx比率)、服务可用率(uptime)。
告警等级与处理时间:P0(影响业务)15分钟内响应;P1(降级)30分钟;P2(信息)24小时。
运维文档与Runbook:为每类故障准备步骤化Runbook,包含回滚命令、联络人、日志路径。
变更管理:生产变更需在工单系统审批并在低峰时window内进行,记录回滚点。
SLA示例:与客户约定月可用率99.9%,单月可用率低于约定按比例赔付。
演练与复盘:每季度一次灾备演练,故障后72小时内完成Root Cause Analysis并更新流程。
8.
实例数据与性能对比表
以下为典型台湾托管服务器配置与监控数据,便于对比与决策:
| 服务器 | CPU | 内存 | 磁盘 | 带宽峰值 | 月均可用率 |
| web-01 | 4 vCPU @2.3GHz | 8 GB | 120 GB SSD | 120 Mbps | 99.95% |
| db-01 | 8 vCPU @2.6GHz | 32 GB | 2×1TB RAID1 SSD | 500 Mbps | 99.99% |
| cache-01 | 4 vCPU @2.3GHz | 16 GB | 250 GB SSD | 200 Mbps | 99.98% |
9.
运维注意事项总结
建立最小权限原则,定期审计帐号与密钥并启用MFA。
自动化运维:使用Ansible/Terraform/CI-CD减少人工配置差错。
频繁演练恢复流程,保证备份可用性并定期校验。
与机房保持良好沟通线路,明确故障联动流程与应急联系人。
持续优化:根据监控指标调整资源,定期做容量规划与成本评估。
来源:服务器台湾托管常见故障排查与运维注意事项汇总