1.
故障判断与初步排查
确认故障现象:网页 502/504 或无法 SSH 登录。
记录时间与影响范围:单实例还是全站,是否影响某地域(例如日本东京机房)。
使用基本连通性测试:ping -c 4 <服务器IP>、traceroute。
查看监控数据:CPU、内存、带宽、磁盘 I/O 的历史曲线。
立刻做快照/备份:在做任何修复前先备份 VPS 镜像或关键配置文件。
2.
网络连通性与 DNS 问题排查
检查本地与 VPS 的 ping 丢包率与延迟,示例:ping 8.8.8.8 平均延迟 25ms、丢包 0%。
traceroute/mtr 定位跃点,可判断是机房侧网络还是上游 ISP 问题。
确认域名解析:dig +short example.jp 返回正确 IPv4/IPv6 地址。
检查防火墙与安全组:iptables -L / ufw status / 云平台安全组端口规则。
若使用 CDN(例如 Cloudflare/Japan CDN),临时绕过 CDN 直连源站确认是否为 CDN 层问题。
3.
高负载与资源耗尽的排查与调整
查看系统负载:top 或 uptime 得到 load average 5.20,5.00,4.80(示例)。
检查内存使用:free -m 输出示例,Swap 使用 1024MB/2048MB。
分析 I/O:iostat -x 1 3,若 await 高说明磁盘瓶颈。
常见修复:调整 nginx worker_processes、增加缓存、扩容 vCPU 或更换 SSD 性能更高的套餐。
示例服务器配置与当前状态:
| 规格 | 值 |
| vCPU | 2 |
| 内存 | 4 GB |
| 磁盘 | 80 GB SSD |
| 带宽 | 1 Gbps |
4.
磁盘与文件系统相关问题处理
检查磁盘使用:df -h 显示 / 使用 92%,/var 占用高时清理日志。
检查 inode:df -i,若 inode 用尽需删除大量小文件或归档。
运行 fsck 修复文件系统错误(确保在单用户模式或系统离线时)。
日志定位:/var/log/syslog、/var/log/messages、应用日志寻找 I/O 错误。
建议:定期设置 logrotate,配置监控告警阈值(磁盘使用 80% 预警)。
5.
服务不可用(nginx、mysql、php-fpm)排查
查看服务状态:systemctl status nginx、systemctl status mysql。
查看最近日志:tail -n 200 /var/log/nginx/error.log 或 mysqld.log,定位报错行。
常见问题:连接数用尽(nginx 502)或 MySQL 达到 max_connections。
快速修复:重启服务(systemctl restart nginx),临时调高连接数或增加 worker 进程。
示例配置建议:nginx worker_connections 1024,php-fpm pm.max_children 50(根据内存调整)。
6.
DDoS 与安全防护实操建议
识别 DDoS:突增带宽使用(例如 800 Mbps 高峰),大量 SYN/UDP 包或异常请求速率。
初级防护:使用 iptables 限速、设置 conntrack 限制、启用 fail2ban 阻断恶意 IP。
使用 CDN+WAF:Cloudflare/阿里云 CDN 可以在网络边缘拦截大部分攻击流量。
向日本机房供应商申请流量清洗或更高带宽保底,必要时切换到具 DDoS 防护的套餐。
案例说明:某日本 VPS 在业务高峰遭到 HTTP Flood,带宽瞬时上升到 600 Mbps,通过开启 Cloudflare "I'm Under Attack" 模式并在机房申请短期流量清洗后,恢复正常。