1.
准备与初步信息收集
- 确认故障范围:单台主机、同机房同交换机多台还是整机柜;记录故障开始时间。
- 收集基本信息:主机名、IP(管理网与业务网)、机柜与U位、机架编号、资产编号、运维联系人与现场联系人。
- 远程访问方式:确认是否有SSH、IPMI/KVM、控制台或远程PDU权限,优先准备好登录凭证与跳板机。
2.
第一步:远程连通性与电源检查
- Ping与连通性:从运维跳板机对管理网IP和业务IP分别执行 ping -c 4
。若超时,记录丢包率与延迟。
- 访问端口:用ss / netstat 检查SSH端口:ss -tnlp | grep :22;若无监听,说明服务未启动或防火墙阻断。
- 电源与PDU:通过远程PDU或机房运维确认机柜电源是否正常,查看PDU日志是否有跳闸。必要时告知现场做一次有序重启并记录时间。
3.
第二步:远程控制台(IPMI/KVM)接入与观察
- 登录IPMI:使用ipmitool -I lanplus -H -U -P chassis status检查电源状态。
- KVM观察:如果主机无法通过网络响应,使用KVM查看是否停在BIOS、GRUB或kernel panic。记录屏幕信息并拍照保存。
- 强制重启策略:仅当确认系统僵死且无法远程关闭服务时,通过IPMI执行chassis power cycle,重启前记录所有日志与状态。
4.
第三步:启动与内核日志检查
- 查看最近启动日志:journalctl -b -1 -e 或者查看/var/log/messages、/var/log/syslog,定位 kernel panic、oom 或文件系统错误。
- dmesg输出:使用dmesg | tail -n 200 查找硬盘错误(I/O error)、网络驱动错误或内存ECC相关信息。
- GRUB与引导问题:若停在GRUB,检查/boot分区空间与grub.cfg,必要时用救援盘 chroot 修复 grub-install。
5.
第四步:磁盘与RAID检查(本地盘与SAN)
- 检查物理盘状态:查看MegaCLI/StorCLI、hpacucli、arcconf 等厂商工具,例如 storcli /c0 /eall /sall show。
- 软件RAID/LVM:cat /proc/mdstat 查看mdadm状态;lvdisplay / lsblk 检查LVM卷是否丢失,必要时使用 mdadm --examine 恢复阵列。
- SAN/iSCSI:检查 multipath -ll,确认路径是否全部在线;查看 iscsiadm -m session 状态;对于挂载失败,umount 后重新登录 iSCSI 并 multipath -r。
6.
第五步:网络层深度诊断
- 路由与ARP:ip route show 与 ip neigh show,确认网关和ARP表是否正确,若出现大量缺失或漂移,可能是交换机或VLAN问题。
- 抓包分析:使用tcpdump -i eth0 host -w /tmp/cap.pcap 捕获异常流量,transfer到本地用Wireshark分析三次握手、RST、ICMP错误等。
- MTU与链路问题:检查ethtool eth0 查看协商速度与MTU;若出现分片或TCP慢启动,试调小MTU或修复中间设备。
7.
第六步:进程与服务状态排查
- 检查CPU/内存/IO:top、htop、iostat -x 1 3、vmstat 1 5 定位是否有IO等待或僵尸进程导致系统卡顿。
- 服务管理:systemctl status 查看失败原因;journalctl -u -n 200 获取服务日志。对数据库等关键服务,检查pid文件、socket和数据目录权限。
- 文件句柄与端口占用:lsof -nP | grep 或 ss -lntp 定位端口被哪个进程占用。
8.
第七步:数据库与应用层快速验证
- 数据库连接:用相应客户端(mysql -e "show status" / psql -c '\l')检查实例是否在线,有无连接数爆满或锁表。
- 日志逐条排查:应用日志(/var/log/app/)按照时间定位异常堆栈,结合请求ID或时间串排查具体请求失败。
- 限流与资源配额:确认是否因cgroups或ulimit导致服务被限制,调整并观察变化。
9.
第八步:现场配合与硬件替换流程
- 与现场沟通:明确要执行的现场操作(如更换网线、重插光模块、热拔插磁盘、交换机端口切换),并要求现场在运维指令下拍照记录。
- 硬件备件流程:如果确认是硬盘/内存/网卡故障,按照机房备件流程提交更换单,记录序列号并在更换后执行自检与RAID重建。
- 紧急降级:必要时将服务迁移到热备或备份机,使用VIP漂移或BGP路由临时切换流量,避免业务中断扩散。
10.
第九步:恢复后验证与预防措施
- 验证点:服务可用性(HTTP 200、数据库可读写)、关键业务路径完整测试(登录、下单、写入)。
- 日志与监控回溯:对故障前1-24小时内的监控图表(CPU/IO/网络/丢包)做回放,定位根因并形成报告。
- 预防措施:补丁、固件升级、交换机端口打标签、增加监控报警(文件系统填满、SMART阈值、链路flap),并更新应急操作手册。
11.
第十步:文档化与问题闭环
- 故障记录:时间线、触发条件、诊断步骤、命令与输出、最终处理动作、影响范围、恢复时间。
- 根因分析(RCA):列出直接原因、根本原因与改进计划(谁做、什么时候完成)。
- 复盘会议:与开发、运维与机房代表开会复盘,更新Runbook 并在工单系统关闭前确认所有改进项被指派。
12.
问答1:遇到主机无法ping通但IPMI可连,我应先做什么?
- 回答:先用IPMI进入控制台观察系统是否卡在引导或内核panic;确认网络配置(ip addr、ip route、arp)与网卡状态(ethtool);在控制台若能登录,查看 journalctl 和 dmesg 定位驱动或网络服务失败,再视情况重启网卡或服务。
13.
问答2:发现RAID有一块盘离线,如何安全替换并保证数据完整?
- 回答:首先确认阵列冗余与剩余健康盘是否允许热替换(查看raid工具输出)。通知现场准备好相同型号盘,按厂商流程热拔旧盘并插入新盘,然后用mdadm --add 或厂商工具启动重建,监控重建进度并在重建完成前避免高IO峰值。
14.
问答3:如果怀疑是交换机或VLAN导致大量丢包,我应怎样快速定位?
- 回答:在主机端用 ip neigh、arping、traceroute/mtr 确认到上游交换机的链路性能;在交换机侧确认端口状态、错误计数与VLAN配置;必要时要求机房切换到旁路口或把故障端口镜像到分析端口做抓包定位。
来源:故障排查流程示例帮助快速定位韩国sk机房主机常见问题