#nginx,keepalived安装略过

MASTER 节点配置文件(192.168.1.11)
vi /etc/keepalived/keepalived.conf global_defs {
##keepalived自带的邮件提醒需要开启sendmail服务。建议用独立的监控或第三方SMTP
##标识本节点的字条串,通常为 hostname
router_id 192.168.1.11
}
##keepalived会定时执行脚本并对脚本执行的结果进行分析,动态调整vrrp_instance
的优先级。如果脚本执行结果为0,并且weight配置的值大于0,则优先级相应的增加。
如果脚本执行结果非0,并且weight配置的值小于 ,则优先级相应的减少。其他情况,
维持原本配置的优先级,即配置文件中priority对应的值。
vrrp_script chk_nginx {
script "/etc/keepalived/nginx_check.sh" ## 检测 nginx 状态的脚本路径
interval ## 检测时间间隔
weight - ## 如果条件成立,权重-
}
## 定义虚拟路由,VI_1为虚拟路由的标示符,自己定义名称
vrrp_instance VI_1 {
state MASTER ## 主节点为MASTER,对应的备份节点为BACKUP
interface eth1 ## 绑定虚拟IP的网络接口,与本机IP地址所在的网络接口相同
virtual_router_id ## 虚拟路由的ID号,两个节点设置必须一样,建议用IP最后段
mcast_src_ip 192.168.1.11 ## 本机 IP 地址
priority ## 节点优先级,值范围0-,MASTER要比BACKUP高
nopreempt ## 优先级高的设置 nopreempt 解决异常恢复后再次抢占的问题
advert_int ## 组播信息发送间隔,两个节点设置必须一样,默认 1s
## 设置验证信息,两个节点必须一致
authentication {
auth_type PASS
auth_pass
}
## 将 track_script 块加入 instance 配置块
track_script {
chk_nginx ## 执行 Nginx 监控的服务
}
## 虚拟 IP 池, 两个节点设置必须一样
virtual_ipaddress {
192.168.1.10 ## 虚拟 ip,可以定义多个
}
}

master配置

vi /etc/keepalived/keepalived.conf

global_defs {
router_id 192.168.1.12
}
vrrp_script chk_nginx {
script "/etc/keepalived/nginx_check.sh"
interval
weight -
}
vrrp_instance VI_1 {
state BACKUP
interface eth1
virtual_router_id
mcast_src_ip 192.168.1.12
priority
advert_int
authentication {
auth_type PASS
auth_pass
}
track_script {
chk_nginx
}
virtual_ipaddress {
192.168.1.10
}
}

BACKUP配置

vi /etc/keepalived/nginx_check.sh
!/bin/bash
A=`ps -C nginx –no-header |wc -l`
if [ $A -eq ];then
/usr/local/nginx/sbin/nginx
sleep
if [ `ps -C nginx --no-header |wc -l` -eq ];then
killall keepalived
fi
fi

nginx监测脚本

#Keepalived+Nginx的高可用测试
(1)关闭 192.168.1.11 中的 Nginx,Keepalived会将它重新启动
/usr/local/nginx/sbin/nginx -s stop
(2)关闭 192.168.1.11 中的 Keepalived,VIP 会切换到 192.168.1.12 中
service keepalived stop
(3)重新启动 192.168.1.11 中的 Keepalived,VIP 又会切回到 192.168.1.11 中来
service keepalived start

基于keepalived的nginx高可用的更多相关文章

  1. keepalived对nginx高可用演练脚本

    keepalived对nginx高可用演练脚本 参考文章:http://deidara.blog.51cto.com/400447/302402/ .安装nginx.keepalived.epel-r ...

  2. Keepalived保证Nginx高可用配置

    Keepalived保证Nginx高可用配置部署环境 keepalived-1.2.18 nginx-1.6.2 VM虚拟机redhat6.5-x64:192.168.1.201.192.168.1. ...

  3. linux中keepalived实现nginx高可用配置

    linux中keepalived实现nginx高可用配置 安装keepalived 运行如下命令即可 tar -zxvf keepalived-2.0.8.tar.gz -C /usr/src cd ...

  4. 配置keepalived支持nginx高可用

    实验环境 序号 主机名 IP地址 1 nginx1 192.168.204.11 2 nginx2 192.168.204.12 安装nginx 安装nginx yum install -y epel ...

  5. 项目实战3—实现基于Keepalived+LVS的高可用集群网站架构

    实现基于Keepalived高可用集群网站架构 环境:随着业务的发展,网站的访问量越来越大,网站访问量已经从原来的1000QPS,变为3000QPS,目前业务已经通过集群LVS架构可做到随时拓展,后端 ...

  6. 基于keepalived搭建MySQL高可用集群

    MySQL的高可用方案一般有如下几种: keepalived+双主,MHA,MMM,Heartbeat+DRBD,PXC,Galera Cluster 比较常用的是keepalived+双主,MHA和 ...

  7. keepalived实现nginx高可用

    keepalived是什么 keepalived直译就是保持存活,在网络里面就是保持在线了,也就是所谓的高可用或热备,用来防止单点故障(单点故障是指一旦某一点出现故障就会导致整个系统架构的不可用)的发 ...

  8. 使用Keepalived实现Nginx高可用

    Keepalived是一个路由软件,可以提供linux系统和linux系统上的组件的负载均衡和高可用,高可用基于VRRP(Virtual Router Redundancy Protocol,虚ip) ...

  9. Keepalived+LVS-DR+Nginx高可用故障切换模式

    LVS架构中,不管是NAT模式还是DR模式,当后端的RS宕掉后,调度器依然会把请求转发到宕掉的RS上,这样的结果并不是我们想要的.其实,keepalived就可以解决问题,它不仅仅有高可用的功能,还有 ...

随机推荐

  1. Struts2 ModelDriven接口使用

    用户在做http请求时一般都有两种方式:get和post方式.get方式用来获取查询相关信息,既向服务器获得信息,而post方式用来更新信息既向服务器提交数据.通常情况下,用get方式向服务器获取信息 ...

  2. nexus-2.11.4-01-bundle.tar.gz 下载地址

    wget http://sonatype-download.global.ssl.fastly.net/nexus/oss/nexus-2.11.4-01-bundle.tar.gz 注意原本的是ht ...

  3. 九度OJ 1036:Old Bill (老比尔) (基础题)

    时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:2691 解决:1432 题目描述: Among grandfather's papers a bill was found.     72 ...

  4. 空间Rm的任意两个范数都互相等价

  5. linux c编程:make编译一

    一个工程中的源文件不计其数,按照不同的功能分类在若干的目录里面,makefile定义了一系列的规则,来制定那些文件需要先编译,那些文件后编译,那些文件重新编译.makefile最大的好处就是自动化编译 ...

  6. ceph pool 管理

    创建池 [root@node1 ~]# ceph osd pool create monitor pool 'monitor' created 查看池 [root@node1 ~]# ceph osd ...

  7. C#winform的datagridview设置选中行

    this.dataGridView1.CurrentCell = this.dataGridView1[colIndex, rowIndex];this.dataGridView1.BindingCo ...

  8. UVA - 11464 Even Parity 【暴力枚举】

    题意 给出一个 01 二维方阵 可以将里面的 0 改成1 但是 不能够 将 1 改成 0 然后这个方阵 会对应另外一个 方阵 另外一个方阵当中的元素 为 上 下 左 右 四个元素(如果存在)的和 要求 ...

  9. iOS中常见的设计模式(MVC/单例/委托/观察者)

    关于设计模式这个问题,在网上也找过一些资料,下面是我自己总结的,分享给大家 如果你刚接触设计模式,我们有好消息告诉你!首先,多亏了Cocoa的构建方式,你已经使用了许多的设计模式以及被鼓励的最佳实践. ...

  10. NodeJs如何全局统一处理异常,实现RestFull风格

    当在controller中处理客户端发来的数据时,我们会去校验数据,当数据错误时,我们会给客户端返回一个信息,如: export function add (req, res, next) { con ...