nginx+keepalived主辅切换(监控脚本在keepalived.conf中执行)
cd pcre-8.02
./configure --prefix=/usr --enable-utf8 --enable-pcregrep-libbz2 --enable-pcregrep-libz
make
make install
tar zxvf nginx-0.8.35.tar.gz
cd nginx-0.8.35
--prefix=/usr/local/nginx --with-pcre --user=www --group=www --with-file-aio --with-http_ssl_module --with-http_flv_module --with-http_gzip_static_module --with-http_stub_status_module --with-cc-opt=' -O3'
make
make install
user www www;
worker_processes 1;
error_log logs/error.log notice;
pid logs/nginx.pid;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
tcp_nopush on;
keepalive_timeout 65;
gzip on;
server {
listen 80;
server_name localhost;
index index.html index.htm;
root /var/www;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
3.分别在两台机器创建测试文件
echo "192.168.6.188" > /var/www/index.html
vrrp_script chk_http_port {
       script "/opt/nginx_pid.sh"         ###监控脚本
       interval 2                             ###监控时间
       weight 2                                ###目前搞不清楚
}
vrrp_instance VI_1 {
        state MASTER                            ### 设置为 主
        interface eth0                             ### 监控网卡
        virtual_router_id 51                    ### 这个两台服务器必须一样
        priority 101                                 ### 权重值 MASTRE 一定要高于 BAUCKUP
        authentication {
              auth_type PASS             ### 加密
              auth_pass eric                ### 加密的密码,两台服务器一定要一样,不然会出错
        }
        track_script {
              chk_http_port                     ### 执行监控的服务
        }
        virtual_ipaddress {
             192.168.6.7                            ###    VIP 地址
        }
} 
6.在 server 2 服务器 keepalived 配置
vrrp_script chk_http_port {
        script "/opt/nginx_pid.sh"
        interval 2
        weight 2
}
vrrp_instance VI_1 {
        state BACKUP                                ### 设置为 辅机
        interface eth0
        virtual_router_id 51                        ### 与 MASTRE 设置 值一样
        priority 100                                     ### 比 MASTRE权重值 低
        authentication {
              auth_type PASS
              auth_pass eric                    ### 密码 与 MASTRE 一样
        }
        track_script {
              chk_http_port
        }
        virtual_ipaddress {
              192.168.6.7
        }
}
#!/bin/bash
A=`ps -C nginx --no-header |wc -l` ## 查看是否有 nginx进程 把值赋给变量A
if [ $A -eq 0 ];then ## 如果没有进程值得为 零
/usr/local/nginx/sbin/nginx
sleep 3
if [ `ps -C nginx --no-header |wc -l` -eq 0 ];then
killall keepalived ## 则结束 keepalived 进程
fi
fi
/etc/init.d/keepalived start
Apr 20 18:37:39 nginx Keepalived_vrrp: Registering gratutious ARP shared channel
Apr 20 18:37:39 nginx Keepalived_vrrp: Opening file '/etc/keepalived/keepalived.conf'.
Apr 20 18:37:39 nginx Keepalived_healthcheckers: Opening file '/etc/keepalived/keepalived.conf'.
Apr 20 18:37:39 nginx Keepalived_healthcheckers: Configuration is using : 3401 Bytes
Apr 20 18:37:39 nginx Keepalived_vrrp: Configuration is using : 35476 Bytes
Apr 20 18:37:40 nginx Keepalived_vrrp: VRRP_Instance(VI_1) Transition to MASTER STATE
Apr 20 18:37:41 nginx Keepalived_vrrp: VRRP_Instance(VI_1) Entering MASTER STATE
Apr 20 18:37:41 nginx Keepalived_vrrp: Netlink: skipping nl_cmd msg...
Apr 20 18:37:41 nginx Keepalived_vrrp: VRRP_Script(chk_http_port) succeeded
Apr 20 18:38:23 varnish Keepalived_healthcheckers: Configuration is using : 3405 Bytes
Apr 20 18:38:23 varnish Keepalived_vrrp: Using MII-BMSR NIC polling thread...
Apr 20 18:38:23 varnish Keepalived_vrrp: Registering Kernel netlink reflector
Apr 20 18:38:23 varnish Keepalived_vrrp: Registering Kernel netlink command channel
Apr 20 18:38:23 varnish Keepalived_vrrp: Registering gratutious ARP shared channel
Apr 20 18:38:23 varnish Keepalived_vrrp: Opening file '/etc/keepalived/keepalived.conf'.
Apr 20 18:38:23 varnish Keepalived_vrrp: Configuration is using : 35486 Bytes
Apr 20 18:38:23 varnish Keepalived_vrrp: VRRP_Instance(VI_1) Entering BACKUP STATE
Apr 20 18:38:25 varnish Keepalived_vrrp: VRRP_Script(chk_http_port) succeeded
Apr 20 18:41:26 nginx Keepalived_vrrp: Terminating VRRP child process on signal
Apr 20 18:41:24 varnish Keepalived_vrrp: VRRP_Instance(VI_1) Entering MASTER STATE
Apr 20 18:41:24 varnish Keepalived_vrrp: Netlink: skipping nl_cmd msg...
本文出自 “linuxer” 博客,请务必保留此出处http://deidara.blog.51cto.com/400447/302402
nginx+keepalived主辅切换(监控脚本在keepalived.conf中执行)的更多相关文章
- Nginx+Keepalived主备切换(包含nginx服务停止)
		原文地址:http://blog.sina.com.cn/s/blog_79ac6aa80101bmed.html Nginx+Keepalived主备切换(包含nginx服务停止) 环境: VM中4 ... 
- keepalived当主节点切换时脚本通知 lvs
		脚本 在keepalived.conf中添加 mail 查看邮件 实验dr实验模型 给director 做主从 4台服务器 rip:192.168.0.103 rip2:192.168.0.104 ... 
- keepalived主备切换后的arp问题【转】
		使用keepalived的时候主机挂了,备机显示绑定了VIP.但是此时实际还是不能访问.其实就是网关的arp缓存没有刷新. 在服务器上执行一下就行了 arping -I eth0 -c 5 -s ... 
- 测试redis+keepalived实现简单的主备切换【转载】
		转自: 测试redis+keepalived实现简单的主备切换 - Try My Best 尽力而为 - ITeye技术网站http://raising.iteye.com/blog/2311757 ... 
- Keepalived + HAProxy 搭建【第二篇】Keepalived 安装与配置
		第一步:准备 1. 简介 本文搭建的是利用 Keepalived 实现 HAProxy 的热备方案,即两台主机上的 HAProxy 实例同时运行,其中全总较高的实例为 MASTER,MASTER出现异 ... 
- Keepalived + HAProxy 搭建【第二篇】Keepalived 的安装与配置
		第一步:准备 1. 简介 本文搭建的是利用 Keepalived 实现 HAProxy 的热备方案,即两台主机上的 HAProxy 实例同时运行,其中全总较高的实例为 MASTER,MASTER出现异 ... 
- Nginx+Keepalived(带Nginx监控脚本)
		转载于:http://www.itxuexiwang.com/a/liunxjishu/2016/0220/151.html?1456381460 Keepalived+ nginx的安装部署 主机: ... 
- JAVAEE——宜立方商城03:Nginx负载均衡高可用、Keepalived+Nginx实现主备
		1 nginx负载均衡高可用 1.1 什么是负载均衡高可用 nginx作为负载均衡器,所有请求都到了nginx,可见nginx处于非常重点的位置,如果nginx服务器宕机后端web服务将无法提供服务, ... 
- nginx+keepalived实现nginx双主高可用的负载均衡
		http://kling.blog.51cto.com/3320545/1253474 一.前言: 在互联网上面,网站为用户提供原始的内容访问,同时为用户提供交互操作.提供稳定可靠的服务,可以给用户带 ... 
随机推荐
- HTML5与CSS3基础教程(第8版) PDF扫描版
			<HTML5与CSS3基础教程(第8版)>自第1版至今,一直是讲解HTML和CSS入门知识的经典畅销书,全面系统地阐述HTML5和CSS3基础知识以及实际运用技术,通过大量实例深入浅出地分 ... 
- Mac下的UI自动化测试 (四)
			在实际写testcase的时候会使用unittest框架,但是在sikuli中需要使用它提供的command来运行,位于/Applications/SikuliX.app/run,使用-r参数指定要运 ... 
- .NET 图片转base64
			//图片 转为 base64编码的文本 private string ImgToBase64String(string Imagefilename) { try { Bitmap bmp = new ... 
- java  乱码问题解决方案
			java 乱码问题解决方案 一.tomcat: <Connector port="8080" maxThreads="150&qu ... 
- js按回车事件提交
			$(document).keyup(function (event) { if (event.keyCode == "13") { document.getElementById( ... 
- J.U.C-其他组件
			J.U.C-其他组件 FutureTask 介绍Callable时我们知道它可以有返回值,返回值通过Future进行封装.FutrueTask实现了RunnableFuture接口,该接口继承了R ... 
- 牛客寒假算法基础集训营4 I Applese 的回文串
			链接:https://ac.nowcoder.com/acm/contest/330/I来源:牛客网 自从 Applese 学会了字符串之后,精通各种字符串算法,比如……判断一个字符串是不是回文串. ... 
- kuangbin专题十六 KMP&&扩展KMP HDU2328 Corporate Identity
			Beside other services, ACM helps companies to clearly state their “corporate identity”, which includ ... 
- Centos7安装MySQL8.0
			请到这个地址看:https://www.cnblogs.com/kevingrace/p/10482469.html Centos7安装MySQL8.0 - 操作手册 一.yum安装方式: 卸载之前版 ... 
- angularJs基础学习
			实例化一个angularJs模块 <body class="hold-transition skin-red sidebar-mini" ng-app="app&q ... 
