#Name:/etc/keepalived/nginx_check.sh #Description: #Ver: num=`ps -C nginx --no-header | wc -l` if[ $num -eq 0 ];then systemctl start nginx sleep 1 if[ `ps -C nginx --no-header | wc -l` -eq 0 ];then systemctl stop keepalived fi fi 给脚本添加权限 1 chmod +x /etc/ke...
1.core:是keepalived的核心,负责主进程的启动、维护以及全局配置文件的加载和解析。 2.check:负责健康检查。 3.vrrp:实现vrrp协议,确定服务器优先级别。 实现机制 上图需要注意,keepalived是和Nginx集成的,也就是部署在了真实IP1和真实IP2这两台服务器中。keepalived将两台真实服务器绑定成一个虚拟IP,用户的请求直...
nginx1.19.2与nginx1.9.7的安装方式相同,这里我以nginx1.9.7为例进行安装。 代码语言:javascript 代码运行次数:0 复制 Cloud Studio代码运行 [root@master-node~]# cd/usr/local/src/[root@master-node src]# wget http://nginx.org/download/nginx-1.9.7.tar.gz[root@master-node src]# wget http://www...
router_id nginx #路由器标识,可以不改,也可以自定义 } vrrp_script check_nginx { #监控脚本,名称和下面脚本模块的名称一致即可 script "/etc/keepalived/nginx_check.sh" interval 2 weight -20 } #一个vrrp_instance就是定义一个虚拟路由器的,实例名称 vrrp_instance VI_1 { state MASTER interface ens33...
2、配置VIP和nginx可用性检查 ==> 在/etc/keepalived创建 check_nginx.sh #!/bin/bash A = `ps aux | grep nginx | grep -v grep | wc -l` r = 2 if test $[A] -le $[r] then /usr/local/nginx/sbin/nginx sleep 2 re = `ps axu | grep nginx | grep -v grep |wc -l` ...
chmod 755 /usr/local/nginx/nginx_check.sh 【5】keepalived与heartbeat/corosync等比较 Heartbeat、Corosync、Keepalived这三个集群组件我们到底选哪个好呢? 首先要说明的是,Heartbeat、Corosync是属于同一类型,Keepalived与Heartbeat、Corosync,根本不是同一类型的。 Keepalived使用的vrrp协议方式,虚拟路由冗余协议 (Virtua...
vi check_nginx.sh #!/bin/sh whitetruedoPNUM=`ps -ef|grep nginx|wc -l` #这里也可使用nmap 192.168.1.3 -p 80|grep open|wc -l来判断个数 代码语言:javascript 复制 if[$PNUM-lt3];then/etc/init.d/keepalived stop>/dec/null2>&1kill-9keealived>/dec/null2>&1kill-9keealived>/dec/nul...
7 配置nginx健康检查脚本[root@localhost ~]# vim /usr/local/nginx/nginx_check.sh#!/bin/bash#判断nginx服务是否启动,如果不存在,调用nginx启用命令,并停止2秒,若#启动失败,杀掉keepalivedA=`ps -C nginx --no-header |wc -l`if [ $A -eq 0 ];then/usr/sbin/nginxsleep 2if [ `ps -C ...
check_nginx_alive #追踪nginx脚本 } } 重启启动keepalived systemctl restart keepalived 验证 我们进入到nginx的启动目录/usr/local/nginx/sbin,执行命令停止掉nginx ./nginx -s stop 然后我们再查看nginx的进程仍然存在 image.png 至此,nginx的自动重启方案完成 ...
vrrp_script chk_nginx { script "/etc/keepalived/nginx_check.sh" ## 检测 nginx 状态的脚本路径 interval 2 ## 检测时间间隔 weight -20 ## 如果条件成立,权重-20 } ## 定义虚拟路由, VI_1 为虚拟路由的标示符,自己定义名称 vrrp_instance VI_1 { ...