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负载 ...
随机推荐
- javascript总结
javascript:它是一种script脚本语言 脚本语言:就是可以和HTML混合在一起使用的语言,可以用来在IE的客 户端进行程序编制,从 ...
- qq协助
今天和一个朋友开完笑说让我进他的电脑,从而出现这篇文章!!!! 目前的QQ版本支持远程协助,所以想到通过两个QQ号码完成对另一台电脑的控制第一台电脑:1.自动登录QQ2.打开另一个QQ号码窗口3. ...
- linux下安装oracle
一>1.关闭防火墙,禁用selinux vi /etc/selinux/config 修改SELINUX=disabled,然后重启,如果不想重启使用命令setenforce 0 2.安装依赖 ...
- oracle 中start with 的用法
在重新开发已经有过的一个项目时,参考原本的sql,在一个存储过程中有用到 start with connect by,从网络找到下面资料. Oracle 提供了start with connect b ...
- JQuery延时操作
JQuery通过setTimeout函数可以实现延时操作以完成在编程达到某些需要的效果. 使用方法如下: function doSomething() { alert("hello worl ...
- Kickstart/Anaconda实现自动化安装原理探究
原网页地址:http://molinux.blog.51cto.com/2536040/548247#55918... 内容概要: 1. 系统安装基本流程图示2. Anaconda简介3. K ...
- iOS-详细解读Const
在过去开发中,几乎每一个人都会定义宏,因为这东西实在是好用,省去了代码量而且还不容易错,而我这篇文中所介绍的const可以完美替带宏定义. 并且苹果也建议大家抛弃宏定义而转投const ,并且swif ...
- 20145301&20145321&20145335实验五
20145301&20145321&20145335实验五 这次实验我的组员为:20145301赵嘉鑫.20145321曾子誉.20145335郝昊 实验内容详见:实验五
- 简单的OkHttp使用介绍
Android系统提供了两种HTTP通信类,HttpURLConnection和HttpClient.关于HttpURLConnection和HttpClient的选择>>官方博客尽管Go ...
- easyUI 的tree 修改节点,sql递归查询
1.easyUI 的tree 修改节点: 我需要:切换语言状态,英文下, 修改根节点文本,显示英文. 操作位置:在tree的显示 $('#tree').tree(),onLoadSuccess事件方法 ...