nginx主从热备(nginx热备方案)

转载自:http://www.fairysoftware.com/nginx_shuang_ji_re_bei.html(未亲测) 用Nginx实现双机热备,实现高可用,解决Nginx服务器的单点故障问题。架构原理1、双机均正常工作。用户通过域名访问到DNS域名解析时,通过轮询的方式计算虚拟IP。获取对应的nginx服务器。进行请求转发操作2、当其中的一台机器宕机之后,keepali…

大家好,又见面了,我是你们的朋友全栈君。

转载自:http://www.fairysoftware.com/nginx_shuang_ji_re_bei.html
(未亲测)


用Nginx实现双机热备,实现高可用,解决Nginx服务器的单点故障问题。

架构原理

1、双机均正常工作。用户通过域名访问到DNS域名解析时,通过轮询的方式计算虚拟IP。获取对应的nginx服务器。进行请求转发操作


双机热备,nginx 高可用,nginx ha

2、当其中的一台机器宕机之后,keepalived动态的将虚拟ip映射到另外一台nginx中工作


双机热备,nginx 高可用,nginx ha

keepalived 配置

(需配置两个虚拟IP):

一、主机配置

! Configuration File for keepalived

#全局配置

global_defs {

notification_email { #指定keepalived在发生切换时需要发送email到的对象,一行一个

acassen@firewall.loc

failover@firewall.loc

sysadmin@firewall.loc

}

notification_email_from Alexandre.Cassen@firewall.loc #指定发件人

#smtp_server 192.168.200.1 #指定smtp服务器地址

#smtp_connect_timeout 30 #指定smtp连接超时时间

router_id LVS_DEVEL #运行keepalived机器的一个标识

}

vrrp_instance VI_1 {

state MASTER #标示状态为MASTER 备份机为BACKUP

interface eth0 #设置实例绑定的网卡

virtual_router_id 51 #同一实例下virtual_router_id必须相同

priority 150 #MASTER权重要高于BACKUP 比如BACKUP为99

advert_int 1 #MASTER与BACKUP负载均衡器之间同步检查的时间间隔,单位是秒

authentication { #设置认证

auth_type PASS #主从服务器验证方式

auth_pass 8888

}

virtual_ipaddress { #设置vip

192.168.0.55 #可以多个虚拟IP,换行即可

}

}

vrrp_instance VI_2 {

state BACKUP #标示状态为MASTER 备份机为BACKUP

interface eth0 #设置实例绑定的网卡

virtual_router_id 52 #同一实例下virtual_router_id必须相同

priority 100 #MASTER权重要高于BACKUP 比如BACKUP为99

advert_int 1 #MASTER与BACKUP负载均衡器之间同步检查的时间间隔,单位是秒

authentication { #设置认证

auth_type PASS #主从服务器验证方式

auth_pass 8888

}

virtual_ipaddress { #设置vip

192.168.0.56 #可以多个虚拟IP,换行即可

}

}

二、备机配置

! Configuration File for keepalived

#全局配置

global_defs {

notification_email { #指定keepalived在发生切换时需要发送email到的对象,一行一个

acassen@firewall.loc

failover@firewall.loc

sysadmin@firewall.loc

}

notification_email_from Alexandre.Cassen@firewall.loc #指定发件人

#smtp_server 192.168.200.1 #指定smtp服务器地址

#smtp_connect_timeout 30 #指定smtp连接超时时间

router_id LVS_DEVEL #运行keepalived机器的一个标识

}

vrrp_instance VI_1 {

state BACKUP #标示状态为MASTER 备份机为BACKUP

interface eth0 #设置实例绑定的网卡

virtual_router_id 51 #同一实例下virtual_router_id必须相同

priority 100 #MASTER权重要高于BACKUP 比如BACKUP为99

advert_int 1 #MASTER与BACKUP负载均衡器之间同步检查的时间间隔,单位是秒

authentication { #设置认证

auth_type PASS #主从服务器验证方式

auth_pass 8888

}

virtual_ipaddress { #设置vip

192.168.0.55 #可以多个虚拟IP,换行即可

}

}

vrrp_instance VI_2 {

state MASTER #标示状态为MASTER 备份机为BACKUP

interface eth0 #设置实例绑定的网卡

virtual_router_id 52 #同一实例下virtual_router_id必须相同

priority 150 #MASTER权重要高于BACKUP 比如BACKUP为99

advert_int 1 #MASTER与BACKUP负载均衡器之间同步检查的时间间隔,单位是秒

authentication { #设置认证

auth_type PASS #主从服务器验证方式

auth_pass 8888

}

virtual_ipaddress { #设置vip

192.168.0.56 #可以多个虚拟IP,换行即可

}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/127723.html原文链接:https://javaforall.net

(0)
上一篇 2022年4月10日 下午1:40
下一篇 2022年4月10日 下午1:40


相关推荐

  • linux partprobe命令

    linux partprobe命令主机自带硬盘超过 300GB 目前只划分使用了 3 个主分区 不到 70GB 如下 root db2 df h nbsp FilesystemSi Mountedon nbsp dev sda129G3 7G nbsp 24G14 nbsp dev sda229G nbsp 22G5 2G81 oracle nbsp tmpfs nbsp nbsp nbsp 2 0G nbsp nbsp nbsp 02 0G nbsp 0 dev

    2026年3月26日
    2
  • MySQL中count(*)、count(主键id)、count(字段)和count(1)那种效率更高?「建议收藏」

    MySQL中count(*)、count(主键id)、count(字段)和count(1)那种效率更高?

    2022年2月17日
    46
  • p6spy mysql8_P6Spy配置使用

    p6spy mysql8_P6Spy配置使用P6Spy是一个可以用来在应用程序中拦截和修改数据操作语句的开源框架。通过P6Spy我们可以对SQL语句进行拦截,相当于一个SQL语句的记录器,这样我们可以用它来作相关的分析,比如性能分析。P6SPY提供了如下几个功能:记录SQL语句的执行时间戳。记录SQL语句类型记录SQL填入参数的和没有填入参数的SQL语句根据配置的时间控制SQL语句的执行时间,对超出时间的SQL语句输出到日志文件中下面是p…

    2022年10月6日
    7
  • 查nginx配置文件路径

    查nginx配置文件路径查看 nginx 配置文件路径进入 nginx 安装目录 我的是 usr local nginx 1 7 8 进入 sbin 目录 输入 nginx t 查看 nginx 配置文件路径以及该文件语法是否正确 nginx v 查看 nginx 版本

    2026年3月18日
    2
  • python中关于round函数的小坑「建议收藏」

    python中关于round函数的小坑「建议收藏」round函数很简单,对浮点数进行近似取值,保留几位小数。比如第一个参数是一个浮点数,第二个参数是保留的小数位数,可选,如果不写的话默认保留到整数。这么简单的函数,能有什么坑呢?1、round的

    2022年7月5日
    22
  • export命令什么意思_report函数

    export命令什么意思_report函数一个变量创建时,它不会自动地为在它之后创建的shell进程所知。而命令export可以向后面的shell传递变量的值。当一个shell脚本调用并执行时,它不会自动得到原为脚本(调用者)里定义的变量的访问权,除非这些变量已经被显式地设置为可用。export命令可以用于传递一个或多个变量的值到任何后继脚本。    —-《UNIX教程》

    2025年9月26日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号