状况:lnmp环境下nginx反向代理服务器,部分网站无法访问,重启服务器后ok
拿到权限后安装zabbix监控,负载Ok ,
IO报警:
Disk I/O is overloaded on xss152
使用命令工具查看io状况,top下78%wa........................
[root@xx16 /]#  iostat -x 1 10  
avg-cpu:  %user   %nice %system %iowait  %steal   %idle 
           0.27    0.00    0.59   21.81    0.00   77.33 
  
Device:         rrqm/s   wrqm/s     r/s     w/s   rsec/s   wsec/s avgrq-sz avgqu-sz   await  svctm  %util 
sda               9.58   152.95  128.06   63.60  1136.57  1732.58    14.97    12.19   63.58   4.44  85.00 
dm-0              0.00     0.00  137.10  216.57  1130.05  1732.58     8.09    25.40   71.82   2.40  84.99 
dm-1              0.00     0.00    0.08    0.00     0.65     0.00     7.67     0.00    2.45   2.23   0.02 
dm-2              0.00     0.00    0.06    0.00     0.51     0.00     8.00     0.00    2.65   2.39   0.02
%util长期达到99%................
查看服务器本身状况,在nginx日志目录下发现,日志无切割,常年积累下来已经达到可怕的大小
-rw-r--r--  1 nobody root  4959870331 5月  18 11:38 access.log.1 
[root@xx16 logs]# du -sh 
37G 
so,先写nginx日志切割,其后强制执行一次.
[root@xx16 logrotate.d]# vim /etc/logrotate.d/nginx 
/usr/local/nginx/logs/*log{ 
    daily 
    rotate 7 
    compress 
    notifempty 
    nocompress 
    postrotate 
    /bin/kill -USR1 `cat /usr/local/nginx/logs/nginx.pid` 2> /dev/null || true
endscript 
}
强制执行一次,然后查看Io情况.
logrotate -f /etc/logrotate.d/nginx
root@xx16 logrotate.d]#  iostat -x 1 10  
  
avg-cpu:  %user   %nice %system %iowait  %steal   %idle 
           0.27    0.00    0.58   20.70    0.00   78.45 
avg-cpu:  %user   %nice %system %iowait  %steal   %idle 
           0.25    0.00    0.75    0.00    0.00   99.00 
  
Device:         rrqm/s   wrqm/s     r/s     w/s   rsec/s   wsec/s avgrq-sz avgqu-sz   await  svctm  %util 
sda               0.00     3.00    0.00    2.00     0.00    40.00    20.00     0.02    9.00   5.00   1.00 
dm-0              0.00     0.00    0.00    5.00     0.00    40.00     8.00     0.05    9.60   2.00   1.00 
dm-1              0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00   0.00   0.00 
dm-2              0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00   0.00   0.00 
dm-3              0.00     0.00    0.00    5.00     0.00    40.00     8.00     0.05    9.60   2.00   1.00
TOP下
1234567 [root@xx16 logrotate.d]# top 
  
top - 11:57:35 up  2:20,  3 users,  load average: 0.00, 0.00, 0.26 
Tasks: 142 total,   1 running, 141 sleeping,   0 stopped,   0 zombie 
Cpu(s):  0.1%us,  0.3%sy,  0.0%ni, 99.3%id,  0.3%wa,  0.0%hi,  0.1%si,  0.0%st 
Mem:   3917212k total,  3762456k used,   154756k free,  2144812k buffers 
Swap:  8388600k total,        0k used,  8388600k free,   774492k cached
0.3%wa zabbix警报解除.搞定!!
该服务器搭建于2014年,上一任管理员写了nginx切割脚本,但是没有后面由于nginx网站增添,没有添加到脚本,引起nginx日志一直无切割.
更多Nginx相关教程见以下内容:
CentOS 6.2实战部署Nginx+MySQL+PHP
搭建基于Linux6.3+Nginx1.2+PHP5+MySQL5.5的Web服务器全过程
CentOS 6.3下配置Nginx加载ngx_pagespeed模块

