服务器故障处理
流量服务器
机房公网网站流量出口达到上限,核心站点已经出现访问缓慢、无法加载的现象
1.扩充流量
2.换机房,改变后端Web集群访问地址,将一部分中等流量的站点服务器上的Nginx配置分发到B机房服务器,随后更改DNS解析
有一套能实时查看所有域名流量,通过纵向(每台服务器流量多少,当前HTTP并发多少)、横向(每个服务器上运行了多少个域名、每个域名流量多少、域名访问来源是什么)做可视化展示的系统,监控Nginx主机上正在使用的域名、单机总流量、并发、单个域名流量等。
注意事项:
不碰核心站点,重要性不言而喻;
不碰小流量站点,因为迁移访问量较小的站点需要迁移多个站点才能有冗余流量,明显耽误时间。
系统出现故障时
有谁在?别几个人一起调试
#w
#last
之前发生了什么?
#history
现在在运行的进程是啥?
#pstree-a
#ps-aux
监听的网络服务
$netstat-ntlp$netstat-nulp
$netstat-nxlp
一般都分开运行这三个命令,不想一下子看到列出一大堆所有的服务
如果要显示所有存在的连接,netstat会比较慢,你可以先用ss看一下总体情况
CPU和内存
$free-m$uptime
$top
$htop
还有剩余的CPU吗?服务器是几核的?是否有某些CPU核负载过多了?
服务器最大的负载来自什么地方?平均负载是多少?
IO性能
$iostat-kx2$vmstat210
$mpstat210
$dstat--top-io--top-bio,用它可以看到谁在进行IO
检查磁盘使用量:服务器硬盘是否已满?
是否开启了swap交换模式?
CPU被谁占用:系统进程?用户进程?虚拟机?
应用故障
Apache&Nginx;查找访问和错误日志,直接找5xx错误,再看看是否有limit_zone错误。
MySQL;在mysql.log找错误消息,看看有没有结构损坏的表,是否有innodb修复进程在运行,是否有disk/index/query问题.
PHP-FPM;如果设定了php-slow日志,直接找错误信息,如果没设定,赶紧设定。
Varnish;在varnishlog和varnishstat里,检查hit/miss比.看看配置信息里是否遗漏了什么规则,使最终用户可以直接攻击你的后端?
HA-Proxy;后端的状况如何?健康状况检查是否成功?是前端还是后端的队列大小达到最大值了?
永远不要对当前连接的服务器或者网络设备接口进行修改
请务必为自己的操作准备一套恢复机制
利用工具对网络设备配置进行自动化备份能在交换机无法工作时帮助大家在几分钟内部署好替代方案
在进行修改前对每个配置文件做好备份(.bak)
认真监控数据中心的每个方面,从室内温度开始、到机架、再到服务器--另外,服务器进程检查、正常运行时间检查等等,并通过趋势及图形工具监控带宽使用率、温度、磁盘分区用量以及其它重要数据指标。
Tags:流量服务器,服务器故障处理
版权声明:本站文章来源标注为YINGSOO的内容版权均为本站所有,欢迎引用、转载,请保持原文完整并注明来源及原文链接。禁止复制或仿造本网站,禁止在非www.yingsoo.com所属的服务器上建立镜像,否则将依法追究法律责任。本站部分内容来源于网友推荐、互联网收集整理而来,仅供学习参考,不代表本站立场,如有内容涉嫌侵权,请联系alex-e#qq.com处理。