1.前提

  两台Linux服务器,IP分别为192.168.80.128 和 192.168.80.129,都安装Nginx和keepalived,并启动。

2.配置双机热备

1.将192.168.80.128看作master(主机),将192.168.80.129看作backup(备机)

2.修改128(主)的keepalived配置文件

! Configuration File for keepalived

global_defs {
router_id LVS_DEVEL # 运行keepalived服务器的一个标识
} vrrp_instance VI_1 {
state MASTER
interface eth0 # 通过ifconfig查看此IP对应的网卡
virtual_router_id 51
priority 101 # master权重设置为101,
# master的权重一定要比backup的权重要大,这样就可以保证在master down机后,
# bakup可以立即升级为master,当master回复后,可以重新成为master。
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.80.100 # 虚拟主机的IP,搭建完成后通过此IP访问
}
} virtual_server 192.168.80.100 80 { # 虚拟IP和端口
delay_loop 6
lb_algo rr
lb_kind NAT
persistence_timeout 50
protocol TCP real_server 192.168.80.128 80 { # 真实IP和端口
weight 1 # 权重
TCP_CHECK {
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
connect_port 80 # 健康检查的端口
}
}
}

3.重启128(master)上的keepalived

  service keepalived restart

4.修改129(备)的keepalived配置文件

! Configuration File for keepalived

global_defs {
router_id LVS_DEVEL # 运行keepalived服务器的一个标识
} vrrp_instance VI_1 {
state BACKUP
interface eth0 # 通过ifconfig查看此IP对应的网卡
virtual_router_id 51
priority 100 # backup权重设置为100
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.100.100 # 虚拟主机的IP,搭建完成后通过此IP访问
}
} virtual_server 192.168.100.100 80 { # 虚拟IP和端口
delay_loop 6
lb_algo rr
lb_kind NAT
persistence_timeout 50
protocol TCP real_server 192.168.80.129 80 { # 真实IP和端口
weight 1 # 权重
TCP_CHECK {
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
connect_port 80 # 健康检查的端口
}
}
}

5.重启129(backup)上的keepalived

  service keepalived restart

6.在浏览器中访问:http://192.168.80.100/,出现Nginx的欢迎界面,表示成功!当master正常时,只会访问到master,当master 异常时,就会访问backup。

7.停止128(master)上的keepalived,用来模仿master异常

  service keekealived stop

8.在浏览器中访问:http://192.168.80.100/,发现出现Nginx的欢迎界面,即访问backup成功!

3.配置keepalived的日志

1.配置keepalived日志,默认是没有配置的

  vi /etc/sysconfig/keepalived

  

  改为:KEEPALIVED_OPTIONS="-D -d -S 0"

2.配置到系统日志,修改etc/rsyslog.conf中的内容,vim /etc/rsyslog.conf,在文件中增加如下内容,和9对应:

  local0.* /var/log/keepalived.log

3.重启系统日志

  service rsyslog restart

4.重启keepalived

  service keepalived restart

Nginx(十二)-- Nginx+keepalived实现高可用的更多相关文章

  1. Nginx系列二:(Nginx Rewrite 规则、Nginx 防盗链、Nginx 动静分离、Nginx+keepalived 实现高可用)

    一.Nginx Rewrite 规则 1. Nginx rewrite规则 Rewrite规则含义就是某个URL重写成特定的URL(类似于Redirect),从某种意义上说为了美观或者对搜索引擎友好, ...

  2. Nginx keepalived实现高可用负载均衡详细配置步骤

    Keepalived是一个免费开源的,用C编写的类似于layer3, 4 & 7交换机制软件,具备我们平时说的第3层.第4层和第7层交换机的功能.主要提供loadbalancing(负载均衡) ...

  3. nginx与keepalived实现高可用+Apache实现负载均衡

    nginx与keepalived实现高可用 本实验使用了四台虚拟机 两台需要安装nginx及keepalived 两台安装Apache nginx可以源码安装也可以用yum安装nginx yum安装n ...

  4. 架构设计:负载均衡层设计方案(6)——Nginx + Keepalived构建高可用的负载层

    1.概述 前两遍文章中,我们一直在说后文要介绍Nginx + Keepalived的搭建方式.这篇文章开始,我们就来兑现前文的承诺,后续的两篇文章我们将介绍Nginx + Keepalived和 LV ...

  5. Nginx(七):keepalived实现Nginx负载均衡服务器的双机高可用

    前言 之前咱们通过 Nginx(六):Nginx HTTP负载均衡和反向代理的配置与优化 和 Nginx+tomcat组合实现高并发场景的动静分离和负载均衡方案 这两篇文章了解了Nginx对高并发应用 ...

  6. Linux 笔记 - 第十八章 Linux 集群之(三)Keepalived+LVS 高可用负载均衡集群

    一.前言 前两节分别介绍了 Linux 的高可用集群和负载均衡集群,也可以将这两者相结合,即 Keepalived+LVS 组成的高可用负载均衡集群,Keepalived 加入到 LVS 中的原因有以 ...

  7. nginx和keeplive实现负载均衡高可用

    一. Keeplive服务介绍 Keeplive期初是专门为LVS设计的,专门用来监控LVS集群系统中各个服务节点的状态,后来又加入VRRP的功能,因此除了配合LVS服务以外,也可以作为其他服务(ng ...

  8. haproxy+keepalived实现高可用负载均衡

    软件负载均衡一般通过两种方式来实现:基于操作系统的软负载实现和基于第三方应用的软负载实现.LVS就是基于Linux操作系统实现的一种软负载,HAProxy就是开源的并且基于第三应用实现的软负载. HA ...

  9. haproxy+keepalived实现高可用负载均衡(转)

      软件负载均衡一般通过两种方式来实现:基于操作系统的软负载实现和基于第三方应用的软负载实现.LVS就是基于Linux操作系统实现的一种软负载,HAProxy就是开源的并且基于第三应用实现的软负载. ...

  10. 项目实战3—Keepalived 实现高可用

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

随机推荐

  1. javascript常用功能收藏

    引用:http://www.css88.com/archives/5180 收集了一些比较常用的javascript函数. 字符串长度截取 function cutstr(str, len) { va ...

  2. struts2客户端与服务器端即jsp页面与action之间的关系

    在Struts2中,客户端和服务器之间的数据传输全部要用到get.set方法:用set方法 ,可以将表单中的值存入Action类.通过Struts2.0标签,调用get方法将Action类中的结果数据 ...

  3. PHP + Smarty + html5 构建Wap应用

    一 简介     Smarty是一个PHP编写的模板引擎(template engine),主要用于构建web应用程序的表示层.Smarty的主页是http://www.smarty.net/down ...

  4. Lucene系列五:Lucene索引详解(IndexWriter详解、Document详解、索引更新)

    一.IndexWriter详解 问题1:索引创建过程完成什么事? 分词.存储到反向索引中 1. 回顾Lucene架构图: 介绍我们编写的应用程序要完成数据的收集,再将数据以document的形式用lu ...

  5. asp 写文件

    '写文件 Sub WriteToTextFile (FileUrl,byval Str,CharSet) set fso = Server.CreateObject("Scripting.F ...

  6. 转载:手把手教你做iOS推送

    手把手教你做iOS推送 http://www.cocoachina.com/industry/20130321/5862.html

  7. PyQt的图片资源的路径问题。

    百度到的PyQt的添加资源大部分都是通过Qt Creater添加资源的,适用于拖拽形成的界面. 问题一:纯粹手写的界面,添加资源呢? 文件夹路径: |----img |--aa.jpg |----vi ...

  8. Linux Shell 基本语法

    一. Linux基本命令 1.1.  cp命令 该命令的功能是将给出的文件或目录拷贝到另一文件或目录中,功能十分强大. 语法: cp [选项] 源文件或目录 目标文件或目录 1.2. mv命令 用户可 ...

  9. MyBatis中对于字符串blank(null、empty)的判定方法

    直接上代码,关键需要进行2个判定,一个是null判定,一个是 ‘’ 判定. <where> <if test="url!= null and url!=''"&g ...

  10. Thinkphp5 多图上传

    html代码 <div class="content" id="content_list"> <!-- 上传部分 --> <for ...