1.概述
状态查看及监控、故障处理、系统容量扩展、数据备份/恢复/站点迁移
2.状态查看与监控
(1).系统资源耗用
代码如下:
系统负载和磁盘I/O 进程的总数,其中httpd进程数统计 TCP连接数,TIME_WAIT 等
(2).服务运行情况
用户能否访问
代码如下:
tail -f 查看apache访问日志与错误日志
查看系统日志/var/log/messages
查看服务器与Mysql数据库的连接情况
3.故障处理
(1).PHP类动态网站
服务不能启动、运行中不响应用户请求……
a.apache 配置文件错误
b.动态模块lib PHP5_mod 未能正确编辑
c.网站根目录设置不正确
d.端口冲突
e.系统负载过高,资源耗尽
f.Apache 配置参数不合理
g.防火墙配置不正确
h.数据库故障
i.系统崩溃
j.文件系统损坏
k.磁盘分区耗尽 / /usr /var
l.NFS失效
m.负载均衡下,Apache监听地址不是127.0.0.1
(2).JSP 类型网站
a.系统环境变量设置错误或没设置
b.Apache与Tomcat的网站根目录设置不一致
c.JSP 运行中一直不能释放内存
4.问题处理 (案例1)
Apache 虚拟主机不能访问解决
方法:设置目录权限
5.故障处理过程 (打开论坛速度慢)(案例2)
(1).uptime –> top –> 系统负载
(2).vim /etc/passwd –>查看系统账户
(3).iptables -L -n –>查看防火墙
(4).mysql 客户端连接数据库
代码如下:
mysql> show processlist;
(5).查看Apache的连接数
代码如下:
ps aux | grep httpd | grep -v grep | wc -l
(6).查看TCP的连接数并汇总
代码如下:
netstat -an | awk '/^tcp/ {++ S[$NF]} END {for (a in S) print a,S[a]}'
(7).查看端口请求80
代码如下:
netstat -anp | grep -v unix
(8).重启Apache
代码如下:
/usr/local/apache/bin/apachectl restart
(9).再查看进程数
代码如下:
ps aux | grep httpd | grep -v grep | wc -l
(10).修改Apache最大连接数
代码如下:
<IfModule prefork.c> StartServers 10 MinSpareServers 10 MaxSpareServers 15 ServerLimit 2000 MaxClients 1000 MaxRequestsPerChild 10000 </IfModule> <IfModule worker.c> StartServers 3 MaxClients 2000 ServerLimit 25 MinSpareThreads 50 MaxSpareThreads 200 ThreadLimit 200 ThreadsPerChild 100 MaxRequestsPerChild 0 </IfModule>
6.Mysql故障 (案例3)
mysql 客户端连接数据库
代码如下:
mysql> show processlist;