比如我们想重启php-fpm。
- #!/bin/bash
- #变量初始化
- process="php-fpm" #进程名
- startCmd="/etc/init.d/php-fpm start" #启动命令
- down=0
- while true
- do
- #取得http状态码
- code=$(curl -H "Host:www.centos.bz" -m 5 -L -s -w %{http_code} http://127.0.0.1 -o /dev/null)
- #当状态码返回000或者大于等于500时,计数故障到down变量
- if [ $code -eq 000 -o $code -ge 500 ];then
- ((down++))
- else
- break
- fi
- #稍等5s
- sleep 5
- #判断是否连续检测三次都为故障.
- if [ $down -ge 3 ];then
- if [ "$(find /tmp/${process}_restart -mmin -3)" == "" ];then
- #取得进程名对应的所有pid
- pids=$(ps aux | grep ${process} | grep -v "grep" | awk '{print $2}')
- #依次对所有pid执行kill命令
- for i in $pids;do
- kill -9 $i
- kill -9 $i
- done
- #kill完pid后,启动服务
- $startCmd
- echo "$(date) Return code $code,${process} had been restarted" >> /tmp/${process}_restart
- else
- echo "$(date) ${process} not yet recovery.As it had been restarted in 2 minutes.so this time ignore." >> /tmp/${process}_not_restart
- fi
- break
- fi
- done
相关推荐
Shell脚本定时监控tomcat,服务挂掉自动重启
Linux系统自动不停重启并计数的shell脚本
在IT行业中,shell脚本是一种强大的工具,它允许我们通过编写简单的命令行指令来自动化复杂的任务,例如定时重启机器和自动测试网络连接。这个压缩包包含的两个脚本可能就是实现这些功能的具体代码。 首先,让我们...
Linux 系统 Tomcat 重启脚本判断日志超过一定大小自动重启,是指在 Linux 操作系统中使用 shell 脚本来监控 Tomcat 服务器的日志文件大小,当日志文件超过一定大小时,自动重启 Tomcat 服务器,以确保服务的稳定运行...
总结来说,这个解决方案通过shell脚本将expect、ssh和scp集成在一起,实现自动化远程服务器登录、文件传输、删除文件以及控制Tomcat服务的启停。这不仅提高了运维效率,减少了人工干预,而且在多服务器环境下提供了...
### 发现服务超过一个小时不打日志进行重启Shell脚本详解 #### 背景介绍 在运维领域,为了确保应用程序或服务的稳定运行,通常会编写一系列的监控脚本来实时监测服务的状态。当发现服务异常时(比如长时间未产生...
linux系统tomcat自动重启脚本:判断监控 tomcat日志catalina.out超过一定限度 自动重启tomcat
在Linux环境中,保持服务持续运行并确保其在崩溃或意外停止后能自动重启是一个常见的需求。这通常是通过编写shell脚本来实现的。本篇将详细解释如何利用shell脚本实现这个功能。 首先,我们需要理解shell脚本的工作...
### 监控php-fpm并自动重启服务的Shell脚本详解 #### 背景介绍 在Web开发中,PHP是常用的服务器端脚本语言之一,而`php-fpm`(FastCGI Process Manager)是一种PHP FastCGI的实现,能够提供更好的性能表现和资源...
linux中java项目需要重启一般使用先找到进程杀掉进程,然后找到项目启动,整个过程不算复杂,但是每次都操作一遍太麻烦,我这里把这个过程整理成shell脚本,大家可以修改里面项目名称,每次直接执行这个命令重启项目...
检测网站状态并自动重启Nginx服务的脚本通常用于服务器管理中,当网站不可访问时(比如网页加载超时或者返回错误码),该脚本可以定期检查网站的响应情况。这个过程一般包含以下几个步骤: 1. **监控脚本**:编写一...
经典的自动化运维脚本 checkNmp abiao原创,可以实现在nginx宕机时候杀死进程让它自动重启,在php挂掉或者502状态时候,自动检测到服务资源异常,杀死进程重启服务,MySQL重启服务等等、、、
下面将详细讲解shell脚本、自动升级以及涉及的`scp`命令。 **Shell脚本**: Shell脚本是Linux/Unix环境中的一种编程语言,它基于Bash或其他Shell解释器,允许用户编写具有执行一系列命令的脚本文件。在`shell自动...
### Shell脚本实现自动修改IP地址 #### 概述 在Linux系统中,为了提高运维效率,管理员常常需要编写Shell脚本来完成重复性任务。其中一个常见的需求是批量修改服务器的IP地址。通过编写一个简单的Shell脚本来自动...
在IT行业中,shell脚本是Linux或Unix系统中用于自动化任务的强大工具,而jar和war文件则是Java应用程序的标准打包格式。这篇博客文章标题为“shell脚本发布jar包服务,war包服务”,意味着它将介绍如何使用shell脚本...
首先,让我们理解为何要使用shell脚本进行自动化安装。在手动安装Oracle的过程中,需要执行一系列复杂的命令和配置,包括环境变量设置、依赖库安装、用户权限设定等,过程繁琐且容易出错。而通过shell脚本,可以预先...
Shell脚本是Unix/Linux操作系统中的一种命令解释器,可以用来编写一系列执行命令的集合,实现自动化任务。 首先,让我们详细了解什么是Shell脚本。Shell是操作系统提供给用户与内核交互的接口,它允许用户通过...
以下是对这个自动重启服务的Shell脚本的详细解析: 首先,脚本以`#!/bin/bash`作为开头,这是告诉系统使用Bash shell来执行脚本。 接着,脚本检查`/tmp/down_count`文件是否存在。如果不存在,它会创建一个文件并...
四、Shell脚本自动化 `xtrabackup.sh`脚本可以帮助自动化上述过程,实现定时备份和一键恢复。脚本通常包含以下几个部分: 1. **环境检查**:确认MySQL服务状态、Xtrabackup版本等。 2. **备份参数设定**:根据需求...
总的来说,这个MySQL 5.7自动化安装Shell脚本是Linux环境中快速部署数据库服务的实用工具,对于需要使用Java开发数据库驱动应用的项目而言,它提供了便利和一致性。同时,配合详细的教程和示例,它也成为了学习Linux...