自动监控apache服务状态并重启的shell脚本

简介: #!/bin/shcurdate=`date +"%Y-%m-%d %H:%M:%S"`#echo $curdate" exit " >> /home/opp/mon.log 2>&1 &#exit#statistik forum.phpnum=`ps -ef|grep "/opp/apache/bin/httpd"|grep -v grep|
#!/bin/sh
curdate=`date +"%Y-%m-%d %H:%M:%S"`
#echo $curdate" exit " >> /home/opp/mon.log 2>&1 &
#exit

#statistik forum.php
num=`ps -ef|grep "/opp/apache/bin/httpd"|grep -v grep|wc -l` 
#statistik www.123456.com/index.php
num2=`ps -ef|grep "/opt/lampp/bin/httpd" | grep -v grep |wc -l`
#echo $num;
#echo $curdate;
#num3=`netstat -anopt | grep 8080 | wc -l`
#echo $num3
if [ ${num} -lt 1 ] ;then
  echo $curdate >> /home/opp/mon.log 2>&1 &
  /opp/apache/bin/httpd -k start >> /home/opp/mon.log 2>&1 &
else
   echo "apache/httpd is running "$curdate >> /home/opp/mon.log 2>&1 & 
fi

if [ ${num} -gt 700 ] ;then
  echo $curdate"this timestamp is index full" >> /home/opp/mon.log 2>&1 &	  
  /opp/apache/bin/httpd -k stop
  sleep 3
  /opp/apache/bin/httpd -k start  >> /home/opp/mon.log 2>&1 &
else
   echo "apache/httpd is running "$curdate >> /home/opp/mon.log 2>&1 &
fi

if [ ${num2} -lt 2 ] ;then
  echo $curdate >> /home/opp/mon.log 2>&1 &
  killall -9 /opt/lampp/bin/httpd
  /opt/lampp/lampp start >> /home/opp/mon.log 2>&1 &
else
   echo "opt/httpd is running "$curdate >> /home/opp/mon.log 2>&1 &
fi

if [ ${num2} -gt 450 ] ;then
  echo $curdate" this timestamp is for the forum's conection full" >> /home/opp/mon.log 2>&1 &
  killall -9 /opt/lampp/bin/httpd
  sleep 3
  /opt/lampp/lampp start >> /home/opp/mon.log 2 >&1 &
else 
  echo "opt/httpd is running "$curdate >> /home/opp/mon.log 2>&1 &
fi  
目的:
1.监控apache服务器的状态
2.当发现apache down机就自动重启apache服务

3.重启apache不成功,杀死该进程。并重新启动

4.记录日志
目录
相关文章
|
5月前
|
安全 Linux Shell
Linux SSH(Secure Shell)服务
Linux SSH提供安全网络协议,使用公钥加密技术确保远程服务传输安全。OpenSSH是实现SSH服务的免费开源工具,允许用户加密连接远程登录Linux服务器执行任务。SSH比Telnet更安全,防止数据被截获。SSH还支持端口转发和隧道,广泛应用于系统管理和网络维护,是安全远程访问服务器的重要工具。
67 1
|
5月前
|
安全 Shell Linux
【Shell 命令集合 系统管理 】⭐⭐⭐Linux 重启 reboot命令 使用指南
【Shell 命令集合 系统管理 】⭐⭐⭐Linux 重启 reboot命令 使用指南
205 0
|
5月前
|
Java 关系型数据库 MySQL
Elasticsearch【问题记录 01】启动服务&停止服务的2类方法【及 java.nio.file.AccessDeniedException: xx/pid 问题解决】(含shell脚本文件)
【4月更文挑战第12天】Elasticsearch【问题记录 01】启动服务&停止服务的2类方法【及 java.nio.file.AccessDeniedException: xx/pid 问题解决】(含shell脚本文件)
539 3
|
2天前
|
Linux 网络安全 Apache
CentOS 7.2配置Apache服务httpd(上)
CentOS 7.2配置Apache服务httpd(上)
39 1
|
2天前
|
Linux PHP Apache
CentOS 7.2配置Apache服务httpd(下)
CentOS 7.2配置Apache服务httpd(下)
24 1
|
2月前
|
Ubuntu Linux 测试技术
在Linux中,已知 apache 服务的访问日志按天记录在服务器本地目录/app/logs 下,由于磁盘空间紧张现在要求只能保留最近7天的访问日志,请问如何解决?
在Linux中,已知 apache 服务的访问日志按天记录在服务器本地目录/app/logs 下,由于磁盘空间紧张现在要求只能保留最近7天的访问日志,请问如何解决?
|
2月前
|
Ubuntu Linux Shell
在Linux中,如何使用shell脚本判断某个服务是否正在运行?
在Linux中,如何使用shell脚本判断某个服务是否正在运行?
|
2月前
|
Ubuntu 应用服务中间件 Linux
在Linux中,如何查看Apache或Nginx服务的状态?
在Linux中,如何查看Apache或Nginx服务的状态?
|
4月前
|
应用服务中间件 Apache nginx
apache、nginx开启rewrite重写服务及伪静态
apache、nginx开启rewrite重写服务及伪静态
180 4
|
3月前
|
Linux 持续交付 Apache
在Linux中通过ansible自动化部署apache服务
【7月更文挑战第11天】Linux中用Ansible自动化部署Apache服务:1. 确保Ansible已安装;2. 在`/etc/ansible/hosts`配置目标主机,如\[webservers\] server1 server2;3. 编写Playbook `apache_deploy.yml`更新系统并安装、启动Apache;4. 执行`ansible-playbook apache_deploy.yml`。适用于快速部署至多台服务器,减少配置错误和成本。

推荐镜像

更多