一次云服务器故障处理及升级记录(上)

在 5 月 28 日晚上准备写点东西时发现网站的响应极为缓慢,起初以为是网络的问题,但访问其它网站速度还是可以的,因此怀疑是我的网站的问题。

登录到后台,用 top 命令查看一下进程的情况,果不其然,有一个叫 iscsid 的进程一直占据着 CPU,一直都是 95% 左右。简单搜索了一下,居然也没有关于这个名字的,看来不是常见的问题!

于是乎,老办法,先重启了一下云主机。

有时候去调查这些问题也是很费劲的,有可能是一些罕见的问题导致的呢,说不定重启就能好,像这个又是毫无头绪的情况,重启不失为一个好办法。

可是重启后,问题依旧,那个进程还是几乎占据了全部 CPU,看来很不寻常呀。去到管理中心的后台监控看了下,居然大概从 27 号中午开始 CPU 就陡然爬升到 100%,一直持续到今天晚上。

汗,如果是自己的主机,恐怕都要烧了~

因为至此也没啥头绪,只好死马当作活马医,祭出 kill 大法,先把那个进程给干掉。可是干掉没多久,它居然又自己起来了!又霸占了几乎所有的 CPU 资源!活见鬼了!

到现在我可真是一筹莫展了,到底啥情况呢?会不会是云服务本身的什么问题呢?抱着这样的想法,我给云服务的后台提了一个工单,简要描述了一下遇到的情况。很快就收到了腾讯云工程师的回复。

我本来以为这么晚了已经不会有消息了,再加上最近正好到了端午假期,我本来以为要等到 31 号放完假回来才有消息呢!

不过回复的消息却让我感到有些沮丧,说可能是病毒,建议我备份数据后重装系统!说实话,我对这个回复不是太满意,“可能是病毒”,难道不能更肯定些吗?当然更让人沮丧的是它建议的处理方式:“备份数据,重装系统”。说可比做容易多了!

现在该怎么办呢?想到自己不过是个小客户,对方也不可能给自己深入去调查这个问题,自己又是毫无头绪,想到网上也搜不到相关信息,kill 掉后又能自动重启,说是病毒的可能性还是很大的,又或者是机子被入侵了,总之以我目前的能力,都没有办法调查这些可能性。

好在机子还能运转,虽然我对具体到底发生了什么事还是有些好奇,但目前来说,恢复正常是最优先的问题,而眼下唯一可行的手段也只能是备份和重装了。

linux 下要怎么杀毒呢?说实在话,我是完全不知道,似乎也没有相关的工具!

因为时间比较晚,考虑到备份重装都比较耗时,索性把机子先关了!睡觉去了~

100% 的 CPU 运行了这么长时间,也不知道到底干了什么坏事!难道是被利用来比特币挖矿了?老子 kill 不了你,你还能阻止我拔插头吗?

第二天起来,又把机子启起来,毫不意外的,那个进程又占满了 CPU,其实还有点希望它能正常呢,这样就不用去折腾了!现在看来是没有办法了。

万幸的是机子功能还能正常运转,就是 CPU 被占得太满了,所以响应就要慢很多,现在也只能忍了。

先是备份。因为我之前已经安装过一个 wordpress 的备份插件,叫 backup guard 的,之前也一直有做过备份,不过看了下上次的备份已经有段时间了,因为最近几乎是天天更新,所以只能再次备份了。好在有插件的帮助,只是按个键就好了。

虽然比较慢,备份还是成功了,插件把所需文件及数据库都打包了,总共大概 80M 左右,然后下载到本地,还是费了一些时间,不过总算还是比较顺利。

没多少文章,却这么大一个包,主要是图片比较多,而且插入图片时 wordpress 常常会生成各种尺寸的缩略图,所以常常一个图片文件会有最终有好几个相似的图片。

备份 OK 后,就开始重装了。

不过最终发现备份这一块还是不少坑,这点后面会说到!总之还是做得有点草率了。

接着就是重装了,然后考虑到既然要折腾,索性一并做个升级罢了。我之前在一篇“没事别乱升级”的文章中提到过,如果一切正常,最好不要去乱动,不过现在反正是要折腾一把,乘机一并升级了也是不错的。

升级有几点考虑的,一是 wordpress 及很多插件都没有升级,老是冒出升级提示,快要逼死强迫症患者了。二是系统的性能问题。一直感觉这个系统的响应速度有点问题,另外还想趁机升级 PHP 到 7.0,甚至 server 及 数据库能升级的也一起弄了。

当然风险也是有的了。因为现在的首要问题是解决 CPU 占用的异常,并恢复备份的数据。可以确定的一点就是,如果安装了新系统,CPU 占用的问题应该就解决了,但还要恢复备份,如果在原来类似的环境中进行备份还原,可想自然是最保险的。如果又升级了系统环境,还原就有风险了。

怎么说好呢?虽然之前一直有做备份,但却从来没有做过备份还原,毕竟没事谁会去折腾它呢?严格来说,备份还原的功能到底能不能正常,我其实是没有把握的。

事实证明我有点过于相信这些备份的功能了~

不得不说,有时候做出抉择还是不容易的,保守一点话,最好是在原基础上还原,不过这样又把升级的事往后推了,总有一天你还是要解决的,所以现在冒点风险一并解决了也是有诱惑力的。

最后,虽然最终我还是成功升级了系统并还原了数据,但却经历了不少挫折,整个过程来看,我还是过于乐观了。关于具体在升级和还原过程中遇到的坑,留待下次再说。