Nginx+Keepalived(带Nginx监控脚本)
转载于:http://www.itxuexiwang.com/a/liunxjishu/2016/0220/151.html?1456381460
Keepalived+ nginx的安装部署
主机:IP->10.252.3.160 nginx已安装OK(省略)
备机:IP->10.252.3.161 nginx已安装OK(省略)
VIP:10.252.3.162
第一步:主备一起安装keepalived
yum installkeepalived –y
第二步:配置/etc/keepalived/keepalived.conf
主机10.252.3.160配置如下:
!Configuration File for keepalived
global_defs{#p#分页标题#e#
notification_email {
acassen@firewall.loc #发生邮件目标地址
failover@firewall.loc
sysadmin@firewall.loc
}
notification_email_from root@nginx2 #发生邮件源地址
smtp_server 127.0.0.1 #smtp服务器
smtp_connect_timeout 30
router_id LVS_DEVEL
}
#p#分页标题#e#vrrp_scriptchk_http_port {
script "/data/script/nginx.sh" #监控服务脚步
interval 2 #检测时间间隔(执行脚步间隔)
weight 2
}
vrrp_instanceVI_1 {
state MASTER #主备的区别点,标识
interface eth1 #对应的网卡
virtual_router_id 60
priority 101 #优先级,谁做主(值越大,优先级越高)#p#分页标题#e#
advert_int 2
authentication { #验证方式,以及密码必须主备一样
auth_type PASS
auth_pass 1234
}
track_interface { #监控的网卡。如果只监控服务,这里可以不填
eth1
}
track_script { #以脚本为监控chk_http_port是前面填写的
chk_http_port#p#分页标题#e#
}
virtual_ipaddress { #切换方式。切换虚拟IP
10.252.3.165/24 dev eth1 label eth1:1
}
}
===================================================
备机配置: 10.252.3.161
!Configuration File for keepalived
global_defs{
notification_email {
acassen@firewall.loc #发生邮件目标地址
#p#分页标题#e# failover@firewall.loc
sysadmin@firewall.loc
}
notification_email_from root@nginx2 #发生邮件源地址
smtp_server 127.0.0.1 #smtp服务器
smtp_connect_timeout 30
router_id LVS_DEVEL
}
vrrp_scriptchk_http_port {
script "/data/script/nginx.sh" #监控服务脚步
#p#分页标题#e# interval 2 #检测时间间隔(执行脚步间隔)
weight 2
}
vrrp_instanceVI_1 {
state BACKUP #主备的区别点,标识
interface eth1 #对应的网卡
virtual_router_id 60
priority 100 #优先级,谁做主(值越大,优先级越高)
advert_int 2
authentication { #验证方式,以及密码必须主备一样
#p#分页标题#e# auth_type PASS
auth_pass 1234
}
track_interface { #监控的网卡。如果只监控服务,这里可以不填
eth1
}
track_script { #以脚本为监控chk_http_port是前面填写的
chk_http_port
}
virtual_ipaddress { #切换方式。切换虚拟IP
#p#分页标题#e# 10.252.3.165/24 dev eth1 label eth1:1
}
}
第三步:编写/data/script/nginx.sh脚本内容
#!/bin/sh
nginxPidNum=`ps-C nginx --no-header |wc -l`
keepalivedPidNum=`ps-C keepalived --no-header |wc -l`
if [$nginxPidNum -eq 0 ];then
killall keepalived
elif [$keepalivedPidNum -eq 0 ];then
service keepalived start
fi#p#分页标题#e#
给脚本权限 chmod +x /data/script/nginx.sh
第四步:启动主备keepalived
Servicekeepalived start
Ifconfig查看eth1:1是否起来了。如果起来了,则可以测试。没有自行调试。
Nginx+Keepalived(带Nginx监控脚本)的更多相关文章
- MySQL的keepalived高可用监控脚本
MySQL的keepalived高可用监控脚本 MySQL(或者其它服务)的keepalived高可用监控脚本 开发脚本需求 :我们知道,keepalive是基于虚拟ip的存活来判断是否抢占maste ...
- 【nginx+keepalived】nginx+keepalived搭建高可用
一.结构及环境 1.1 环境介绍 操作系统:centos7 nginx+keepalived:106.53.73.200 master nginx+keepalived:182.254.184.102 ...
- nginx+keepalived实现nginx双主高可用的负载均衡
http://kling.blog.51cto.com/3320545/1253474 一.前言: 在互联网上面,网站为用户提供原始的内容访问,同时为用户提供交互操作.提供稳定可靠的服务,可以给用户带 ...
- 如何实现Nginx+Keepalived中Nginx进程的高可用
此架构我简单说明下: 一般为了维护方便,企业网站的服务器都在自己的内部机房里,只开放了Keepalived的VIP地址的两个端口80.443,通过Juniper SSG550防火墙映射出去,外网DNS ...
- [工具开发] keepalived使用nagios监控脚本
最近在做开发和办公环境的高可用,采用的是keepalived:keepalived基于Linux内核支持的LVS,既能实现高可用,又能实现负载均衡,非常实用. keepalived监控服务状态时可以用 ...
- Nginx+keepalived双机热备(主从模式)
负载均衡技术对于一个网站尤其是大型网站的web服务器集群来说是至关重要的!做好负载均衡架构,可以实现故障转移和高可用环境,避免单点故障,保证网站健康持续运行.关于负载均衡介绍,可以参考:linux负载 ...
- keepalived实现nginx高可用
keepalived是什么 keepalived直译就是保持存活,在网络里面就是保持在线了,也就是所谓的高可用或热备,用来防止单点故障(单点故障是指一旦某一点出现故障就会导致整个系统架构的不可用)的发 ...
- nginx + keepalived 主从模式
转自:https://www.cnblogs.com/kevingrace/p/6138185.html 负载均衡技术对于一个网站尤其是大型网站的web服务器集群来说是至关重要的!做好负载均衡架构,可 ...
- Nginx+keepalived 双机热备(主从模式)
负载均衡技术对于一个网站尤其是大型网站的web服务器集群来说是至关重要的!做好负载均衡架构,可以实现故障转移和高可用环境,避免单点故障,保证网站健康持续运行.关于负载均衡介绍,可以参考:linux负载 ...
随机推荐
- fatal error: call to undefined function imagettftext
参照:http://stackoverflow.com/questions/7290958/php-fatal-error-call-to-undefined-function-imagettftex ...
- angular之自定义过滤器的使用
自定义过滤器需要使用filter函数,格式如下: filter("filterName',function(){ return function(target,args){ .... } } ...
- Xcode 升级成Xcode 8 版本以后,出现 Signing for "sqlite3--test" requires a development team. 问题的解决
升级xcode到8版本以后,工程文件会出现以下提示 解决办法就是,点击Team,添加自己的appid,然后选择自己的appid即可, 注意: 这里不需要开发者账号,自己的 apple id,就可以”:
- Python 类的命名空间
Python中类的定义其实就是执行代码块: class cc: a=0 print '+++++', print a 会直接执行print语句而不是在实例化cc时执行.执行后会生成对应的类的命名空间. ...
- Mini projects #8–RiceRocks
课程全名:An Introduction to Interactive Programming in Python,来自 Rice University 授课教授:Joe Warren, Scott ...
- [UE4]Animation Techniques used in Paragon部分翻译及索引
视频地址:https://www.youtube.com/watch?v=1UOY-FMm-xo 主要内容:该视频由Paragon游戏制作者Laurent Delayen(Senior Program ...
- Delphi 版 MIB_IF_ROW2
unit netioapi; interface uses Windows; type {$Z4} NDIS_MEDIUM = ( NdisMedium802_3, NdisMedium802_5, ...
- MyEclipse10优化
Myeclipse10 优化设置 一.myeclipse字体设置 Window->Preferences->General->Appearance->Colors and Fo ...
- CardView
CardView继承至FrameLayout类,可以在一个卡片布局中一致性的显示内容,卡片可以包含圆角和阴影.CardView是一个Layout,可以布局其他View. CardView常用属性: c ...
- 基本XML解析---编写
#import "ViewController.h" #import "DDXML.h" @interface ViewController () @end @ ...