记一次服务器宕机体验

  • 一开始是下午两点左右,我进服务器后台发现服务器cpu占用100,操作有延迟,然后我测试网站能否进入,直接报错521,百度云CDN显示源站宕机。我觉得不太对,不过也没多想,直接去服务器后台重启了一下服务器。
  • 重启之后错误依旧,因为这台服务器系统是Windows Server,所以我链接远程桌面,想看下什么东西在吃资源。
  • 第一次进系统发现是Windows defender的AntiVirus进程在占用cpu,百度相关解决办法后把进程停了。这时候我以为没事了,因为系统占用也往下掉了,不过就在我准备在测试的时候发现系统占用一直卡在80%左右浮动。
  • 接下来我又去任务管理器看,不过什么也看不出来,占用第一是任务管理器40%多,然后都是百分之几的进程。然后我又下载了Windows官方查看系统进程占用的软件,发现只有一个系统中断占用了百分之十几,其他啥也没有,就这样折腾了一个小时。因为我目前使用的服务器都没有快照,只有主站和主站数据库的备份,所以我有点慌,先把服务器上的7个网站和4个数据库全部备份了。当时我已经做好了重做系统的准备,并且也这么做了,吃到亏的我不敢再瞎搞了,虽然当时我已经放弃那个系统了,不过我还是做了一份快照,也就是这份快照把我救了回来。
  • 在做好快照之后我没有半点犹豫,立马把系统格了,下载了面板,使用相同的软件,相同的版本进行部署。一切顺利,系统也没有出现占用过高。然后我把几个网站和数据库文件恢复回去,先设置了我的主站点来测试行不行,显示数据库通信失败。还是数据库的问题,好在我之前把整个数据库文件夹打包了,所以我直接整个恢复了数据库文件夹,不过我只备份了数据库密码,并没有备份数据库ROOT密码,这下我傻了,不过这时候网站已经可以正常访问了,只是一些图片不显示,文章点进去404。
  • 这时候我又正好有事出去了一趟,路上还在想怎么搞,回来我就鬼使神差地把现在的系统又做了一个快照,然后回滚上一个系统了。当时想法特别简单,想去看数据库密码,然后再试下能不能把原系统恢复。然后进入系统以后,系统仍然占用80%,网页仍然无法访问,我就进面板后台想试试能不能重启nginx服务,发现报错提示配置出错,百度无果后,直接重装nginx,然后奇迹发生了,网站正常访问,服务器占用恢复正常,只是到现在我还是不清楚为什么。

总结下教训,遇到问题先不要急,先冷静下来把所有问题想清楚,三思而后行,因为可能一步错步步错,还得事先想好退路。然后在平时也需要未雨绸缪,不要等到问题出现才想到,woc,没快照,没备份,然后就回天乏术了。

WRITTEN BY: