博客
关于我
Nginx学习笔记3:Shell脚本检测Nginx服务状态
阅读量:218 次
发布时间:2019-02-28

本文共 1295 字,大约阅读时间需要 4 分钟。

前言

nginx 服务启动后,我们需要对其服务状态进行监控,今天学习过程中了解到一段非常有用的小脚本,不仅可以监控Nginx,也可以用来监控其他服务

脚本

A=`ps -C nginx –no-header |wc -l`if [ $A -eq 0 ];then    /usr/local/nginx/sbin/nginx    sleep 2    if [ `ps -C nginx --no-header |wc -l` -eq 0 ];then        killall keepalived    fifi

脚本解析

ps -C nginx –no-header

这里涉及ps 的用法,我们一般用ps查看相关进程,一般都是用

ps -ef | grep XX 或 ps -aux| grep XX 的模式
如下:

[root@bogon ~]# ps -ef | grep nginxroot       2248      1  0 19:13 ?        00:00:00 nginx: master process ./nginxnobody     3265   2248  0 20:16 ?        00:00:00 nginx: worker processroot       4791   4742  0 22:05 pts/1    00:00:00 grep --color=auto nginx

但是这样通常都会覆盖一个grep的进程

我们可以用ps -C 或ps -c 的方式, -C 后面接命令的名字 ,如下:

[root@bogon ~]# ps -C nginx   PID TTY          TIME CMD  4983 ?        00:00:00 nginx  4984 ?        00:00:00 nginx

–no-header 就是去挑title,如下:

[root@bogon ~]# ps -C nginx --no-header  4983 ?        00:00:00 nginx  4984 ?        00:00:00 nginx

wc -l 这个很熟悉了,行数计算

所以用这种方式可判断,如果

ps -C nginx --no-header|wc -l

如果值为0,即代表服务未启动如果值为非0,即代表服务已启动

还有一个知识点,killall keepalived 这个是以服务名称杀死进程,日常中也用的挺多的

举一反三

上面那段完整的脚本意思即为:

判断nginx 服务是否启动
如果未启动,执行启动命令
再次判断,如果启动失败,关掉keepalived,进入从节点
关于Nginx的主从我们后面会实操后记录

最重要的一点是,这段脚本不仅可以用来监控Nginx,其他服务也是可以的,模式是一样的,大家可以自行试试

参考连接:

Nginx学习笔记3:Shell脚本检测Nginx服务状态 : https://www.jianshu.com/p/0df46255dd1c

转载地址:http://hzxi.baihongyu.com/

你可能感兴趣的文章
NFS的常用挂载参数
查看>>
NFS网络文件系统
查看>>
NFS远程目录挂载
查看>>
nft文件传输_利用remoting实现文件传输-.NET教程,远程及网络应用
查看>>
NFV商用可行新华三vBRAS方案实践验证
查看>>
ng build --aot --prod生成文件报错
查看>>
ng 指令的自定义、使用
查看>>
ng6.1 新特性:滚回到之前的位置
查看>>
nghttp3使用指南
查看>>
【Flink】Flink 2023 Flink 自动化运维的大规模落地实践
查看>>
Nginx
查看>>
nginx + etcd 动态负载均衡实践(一)—— 组件介绍
查看>>
nginx + etcd 动态负载均衡实践(三)—— 基于nginx-upsync-module实现
查看>>
nginx + etcd 动态负载均衡实践(二)—— 组件安装
查看>>
nginx + etcd 动态负载均衡实践(四)—— 基于confd实现
查看>>
Nginx + Spring Boot 实现负载均衡
查看>>
Nginx + Tomcat + SpringBoot 部署项目
查看>>
Nginx + uWSGI + Flask + Vhost
查看>>
Nginx - Header详解
查看>>
nginx - thinkphp 如何实现url的rewrite
查看>>